一个熟练程序员所具备的特质-2
2016-08-27 17:11
274 查看
熟练的含义在于整体思维的灵活性。
模式、原则、习惯用法、库、语言特性–这些都是工具。但一个真正的熟练程序员会使工具适应工作,而不是让工作适应工具。许多人从没有特别专注于开发的熟练度,因为坦率地讲,以一个有能力者的角度进行开发更直截了当。但是如果你想要改变自己做事情的角度,并且需要一些帮助以便更好的开始,这里有一些建议可以尝试:
解释你想要以某种方式做某件事的原因,但是不要说是因为“最佳实践”或者是社区指南。仅仅就当前需要解决的问题内容讨论解决方法的利弊。
学习更少更有价值的事情,之后尝试着将所学到的知识应用到不同地方,观察所学知识在哪里起作用,哪里没效果。使用失败的经验来发现自己真正所需的新工具,并添加到自己的技能库中。
寻找那些其他人“打破规则”并获得成功的例子。偶尔也打破你自己的规则,看看这样做对你是有伤害、有帮助还是没有起到任何作用。
挖掘事情的本源而不是只知道大概。这会耗费更多精力,但能帮助我们找出某项技术的基础和边界,同时我们也会受到核心思想的启发而产生我们自己的想法。
将自己置于某个自己最不熟悉的工程中,然后试着在不依赖自己现有的工作流程、习惯和规则的条件下找到解决方法。
询问其他人做事情的原因,但不接受教条式的理由。通过询问其他人,能够试着站在其他人的角度考虑事情。这样做有很大的价值,因为这能够让你认识到他们以自己熟悉的方式思考出的想法的优势和劣势。
选取一小部分自己能够使用但不精通的技能,试着将对这些技能的掌握程度从“有能力”变为极为熟练一致痴迷的程度。达到对整个知识体系中一小部分的掌握,比你所知的任何人都要高的程度。一旦你达到那种境界,再去检验那些很深很专一的知识的优缺点。
我们的讨论内容距离“熟练”有点太远了。你需要在“有能力”的基础上更上一层才能脱离仅仅是“知道某些事情”的程度,但即使仅仅认识到“知道如何在正确的时间使用正确的工具”就能够帮助你走的更远。
最重要的是:一旦你开始专注于以“熟练”为目标,有很大机会能够找到一条真正通往“精通”的道路。
相关文章推荐
- 一个熟练程序员所具备的特质-1
- 《写给程序员新手的话——(4)一个优秀程序员应具备的特质》
- 一个程序员应该具备的基础知识和概念
- 作为一个好的程序员,都需要具备哪些基本的素质和能力
- 作为一个好的程序员.都需要具备哪些基本的素质和能力?
- 专业的程序员需要具备的思考能力:写一个程序需要注意多少细节问题
- 一个合格的程序员所具备的素质和修养
- 一个程序员应该具备的基本素质
- 一个真正合格的程序员应该具备的素质
- 一个程序员应该具备的基础知识和概念
- 我认为一个优秀的 ActionScript程序员应该具备的特殊技能
- 作为一个程序员,到底应该具备什么样的能力呢?
- 〖編程·其他〗一个程序员要具备的十点素质
- 一个程序员应该具备的基础知识和概念
- 程序员应该具备的特质(转载)
- 一个程序员应该具备的(转载)
- 作为一个好的程序员,都需要具备哪些基本的素质和能力
- 一个好的程序员应该具备..
- 一个熟练的java程序员应该掌握的技术
- 一个优秀的程序员须具备的条件