熟练的含义在于整体思维的灵活性。

模式、原则、习惯用法、库、语言特性–这些都是工具。但一个真正的熟练程序员会使工具适应工作,而不是让工作适应工具。

许多人从没有特别专注于开发的熟练度,因为坦率地讲,以一个有能力者的角度进行开发更直截了当。但是如果你想要改变自己做事情的角度,并且需要一些帮助以便更好的开始,这里有一些建议可以尝试:

  • 解释你想要以某种方式做某件事的原因,但是不要说是因为“最佳实践”或者是社区指南。仅仅就当前需要解决的问题内容讨论解决方法的利弊。
  • 学习更少更有价值的事情,之后尝试着将所学到的知识应用到不同地方,观察所学知识在哪里起作用,哪里没效果。使用失败的经验来发现自己真正所需的新工具,并添加到自己的技能库中。
  • 寻找那些其他人“打破规则”并获得成功的例子。偶尔也打破你自己的规则,看看这样做对你是有伤害、有帮助还是没有起到任何作用。
  • 挖掘事情的本源而不是只知道大概。这会耗费更多精力,但能帮助我们找出某项技术的基础和边界,同时我们也会受到核心思想的启发而产生我们自己的想法。
  • 将自己置于某个自己最不熟悉的工程中,然后试着在不依赖自己现有的工作流程、习惯和规则的条件下找到解决方法。
  • 询问其他人做事情的原因,但不接受教条式的理由。通过询问其他人,能够试着站在其他人的角度考虑事情。这样做有很大的价值,因为这能够让你认识到他们以自己熟悉的方式思考出的想法的优势和劣势。
  • 选取一小部分自己能够使用但不精通的技能,试着将对这些技能的掌握程度从“有能力”变为极为熟练一致痴迷的程度。达到对整个知识体系中一小部分的掌握,比你所知的任何人都要高的程度。一旦你达到那种境界,再去检验那些很深很专一的知识的优缺点。

我们的讨论内容距离“熟练”有点太远了。你需要在“有能力”的基础上更上一层才能脱离仅仅是“知道某些事情”的程度,但即使仅仅认识到“知道如何在正确的时间使用正确的工具”就能够帮助你走的更远。

最重要的是:一旦你开始专注于以“熟练”为目标,有很大机会能够找到一条真正通往“精通”的道路。

一个熟练程序员所具备的特质-2相关推荐

  1. 一个熟练程序员所具备的特质-1

    前几天看了一篇文章,现在总结一下. 你知道"有能力"和"熟练"的区别吗? 这听起来像一个具有欺骗性的问题,因为两个单词看上去似乎说的是一件事情,但是两者之间的微 ...

  2. 优秀程序员所具备的7个好习惯

    当我们被采访的时候,常常会问及这样一个问题--一个伟大的程序员需要具备哪些特质.大多数人回答的是逻辑.机智.耐心以及勤奋.对于这个问题,其实并没有标准答案,但是除了这些特质,习惯也是非常重要的因素.而 ...

  3. 一个合格的程序员所具备的素质和修养

    程序员基本素质: 作一个真正合格的程序员,或者说就是可以真正合格完成一些代码工作的程序员,应该 具有的素质. 1:团队精神和协作能力 把它作为基本素质,并不是不重要,恰恰相反,这是程序员应该具备的最基 ...

  4. 程序员应该具备的素质(来自csdn)

    程序员是一种技术工作,在IT的发展中有相当重要的地位,从底层硬件通讯协议的建立, 到数据传输层的处理,到操作系统的建设,到数据库平台的建设,一直到应用层上各种数 据营销平台的搭建,程序员在里面都扮演着 ...

  5. 一个合格程序员的标准

    一个合格程序员的标准 2009年02月21日 星期六 01:37 A.M. 假设你是一名软件专业毕业的本科学子,如何在工作中修炼成为一名有较高职业水准的程序员呢,本文试图总结作者从事15年软件开发工作 ...

  6. Linux之父和Redis之父,Redis之父:10x程序员应该具备哪些素质

    Fred Brooks(<人月神话>的作者)最早在他的论文"没有银弹--软件工程的本质和偶然性(No Silver Bullet - Essence and Accidents ...

  7. 距离一个优秀程序员,你还差多少?

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者简介:杨守乐,CSDN 知名博主,关注 Android.Java 领域,现在主要专注于音 ...

  8. 作为一个php程序员要学会的技能

    2019独角兽企业重金招聘Python工程师标准>>> HTML/CSS/JavaScript 这些就不必说了,入门级WEB开发程序员都要掌握的. 其次说说PHP编程能力,精通PHP ...

  9. 是非人生——一个菜鸟程序员的5年人生路

    注意:!!!!!!!!!!!! 文章可能还在连载.请关注: http://topic.csdn.net/u/20080318/10/e4543fc2-d726-465c-bc95-fea14b92db ...

最新文章

  1. 【每日一算法】二叉树的最大深度
  2. Hdoj Minimize The Difference
  3. Oracle char 查询问题
  4. test命令用法。功能:检查文件和比较值
  5. mysql重新编译_重新编译mysqld_exporter0.10-阿里云开发者社区
  6. web小知识与问题串烧(html,css,js)
  7. MYSQL小函数大用途之-------FIND_IN_SET
  8. 5G冲击下,软件测试行业面临的新挑战和机遇
  9. 汉诺塔 java 递归_如何实现java汉诺塔递归算法
  10. js跨域问题 ajax跨域问题?
  11. pptx 批量操作幻灯片
  12. uniapp图片添加水印
  13. SQL Server 索引中的碎片和填充因子
  14. 机器学习4种调参自动优化方法,第二款是我的最爱!
  15. TencentOS Server编译安装nginx(1.22.0)
  16. XSS原理dvwaxssvalidator使用
  17. Cookie、Session、Token与JWT解析
  18. 南邮 OJ 1076 机器狗组装费用
  19. KBU808-ASEMI适配大功率开关电源整流桥
  20. 皕杰报表自定义扩展~自定义数据集

热门文章

  1. Python爬虫-关于HTPP请求方法有哪些
  2. 基于PPGiPPG的心率检测原理
  3. verilog从txt中读取_verilog语言中的文件读写
  4. SingleShot姿态估计部署教程
  5. UITextField 的左视图 --用户名和密码框的标志
  6. 百度云不限速-proxyee-down
  7. 解决h5py.h5 ImportError问题
  8. 天才少年稚晖君 | 【保姆级教程】个人深度学习工作站配置指南
  9. mysql事务6,MySQL6-事务
  10. 以前给客户开发了一个本地同城小程序