`

怎样把自己培养成为一个优秀的程序员

阅读更多

态度篇

 1. 做实事:不要抱怨,发牢骚,指责他人,找出问题所在,想办法解决。对问题和错误,要勇于承担。

 2. 欲速则不达:用小聪明、权宜之计解决问题,求快而不顾代码质量,会给项目留下要命的死角。

 3. 对事不对人:就事论事,明智、真诚、虚心地讨论问题,提出创新方案。

 4. 排除万难,奋勇前进:勇气往往是克服困难的唯一方法。

 

学习篇

 5. 跟踪变化:新技术层出不穷并不可怕。坚持学习新技术,读书,读技术杂志,参加技术活动,与人交流。要多理解新词背后的所以然,把握技术大趋势,将新技术用 于产品开发要谨慎。

 6. 对团队投资:打造学习型团队,不断提高兄弟们的平均水平。

 7. 懂得丢弃:老的套路和技术,该丢,就得丢。不要固步自封。

 8. 打破砂锅问到底:不断追问,真正搞懂问题的本质。为什么?应该成为你的口头禅。

 9. 把握开发节奏:控制好时间,养成好习惯,不要加班。

 

开发流程篇

 10. 让客户做决定:让用户在现场,倾听他们的声音,对业务最重要的决策应该让他们说了算。

 11. 让设计指导而不是操纵开发:设计是前进的地图,它指引的是方向,而不是目的本身。设计的详略程度应该适当。

 12. 合理地使用技术:根据需要而不是其他因素选择技术。对各种技术方案进行严格地追问,真诚面对各种问题。

 13. 让应用随时都可以发布:通过善用持续集成和版本管理,你应该随时都能够编译、运行甚至部署应用。

 14. 提早集成,频繁集成:集成有风险,要尽早尽量多地集成。

 15. 提早实现自动化部署

 16. 使用演示获得频繁反馈

 17. 使用短迭代,增量发布

 18. 固定价格就意味着背叛承诺:估算应该基于实际的工作不断变化。

 

用户篇

 19. 守护天使:自动化单元测试是你的守护天使。

 20. 先用它再实现它:测试驱动开发其实是一种设计工具。

 21. 不同环境,就有不同问题:要重视多平台问题。

 22. 自动验收测试

 23. 度量真实的进度:在工作量估算上,不要自欺欺人。

 24. 倾听用户的声音:每一声抱怨都隐藏着宝贵的真理。

 

编程篇

 25. 代码要清晰地表达意图:代码是给人读的,不要耍小聪明。

 26. 用代码沟通:注释的艺术。

 27. 动态地进行取舍:记住,没有最佳解决方案。各种目标不可能面面俱到,关注对用户重要的需求。

 28. 增量式编程:写一点代码就构建、测试、重构、休息。让代码干净利落。

 29. 尽量简单:宁简勿繁。如果没有充足的理由,就不要使用什么模式、原则和特别的技术。

 30. 编写内聚的代码:类和组件应该足够小,任务单一。

 31. 告知,不要询问:多用消息传递,少用函数调用。

 32. 根据契约进行替换:委托往往优于继承。

 

调试篇

 33. 记录问题解决日志:不要在同一地方摔倒两次。错误是最宝贵的财富。

 34. 警告就是错误:忽视编译器的警告可能铸成大错。

 35. 对问题各个击破:分而治之是计算机科学中最重要的思想之一。但是,要从设计和原型阶段就考虑各部分应该能够很好地分离。

 36. 报告所有的异常

 37. 提供有用的错误信息:稍微多花一点心思,出错的时候,将给你带来极大便利。

 

团队协作篇

 38. 定期安排会面时间:常开会,开短会。

 39. 架构师必须写代码:不写代码的架构师不是好架构师。好的设计都来自实际编程。编程可以带来深入的理解。

 40. 实行代码集体所有制:让开发人员在系统不同区域中不同的模块和任务之间轮岗。

 41. 成为指导者:教学相长。分享能提高团队的总体能力。

 42. 让大家自己想办法:指引方向,而不是直接提供解决方案。让每个人都有机会在干中学习。

 43. 准备好后再共享代码:不要提交无法编译或者没有通过单元测试的代码!

 44. 做代码复查:复查对提高代码质量、减少错误极为重要。

 45. 及时通报进展与问题:主动通报,不要让别人来问你。

<!-- 翻页 --><!-- TODO 分页显示 -->
分享到:
评论

相关推荐

    一个优秀的程序员的十个习惯

    成为优秀的程序员不仅在于编写高质量的代码,更重要的是养成一系列有益的习惯,这些习惯能够提升个人技能,促进团队协作,以及保持对技术的敏锐度。以下是对标题和描述中提到的十个程序员习惯的详细解释: 1. **...

    如何成为优秀的JAVA程序员

    要成为一位优秀的Java程序员,不仅需要掌握扎实的编程基础,还需要深入理解Java...成为一名优秀的Java程序员是一个长期的学习过程,需要不断积累经验和提升技能。希望上述知识点能帮助你在Java编程的道路上更进一步。

    程序员羊皮卷 叫你如何成为一名优秀的程序员

    叫你如何做一个程序员,作为一个程序员应该养成怎么样的习惯,应该培养怎么养的编程思想!

    如何成为一个优秀的JSP程序员

    "如何成为一个优秀的JSP程序员" 这个标题揭示了本文将围绕Java Server Pages (JSP) 技术展开,重点是提升个人技能以成为一名杰出的JSP开发者。这涉及到深入理解JSP语法、核心概念,以及如何在实际项目中应用这些知识...

    高质量的C++编程 让你成为一个优秀的c++程序员

    《高质量C++编程:让你成为一个优秀的C++程序员》这本书是上海贝尔实验室资深C++工程师林锐博士的力作,旨在引导读者编写出高质量的C++程序。编程规范在软件开发中至关重要,它不仅影响代码的可读性和可维护性,更是...

    成为一个好的程序员需要的书.txt

    ### 成为一个好的程序员需要的书籍 对于任何想要在IT领域取得成功的人来说,了解并掌握正确的学习资源至关重要。本文将根据给定的文件信息,详细解析成为一名优秀程序员所必需的书籍和资源。 #### 编程书籍 1. **...

    程序员成长路线图:从入门到优秀.pdf

    关于什么样的人可以被称为程序员,文章中给出了一个相对宽泛的定义:“凡是从计算机专业或相近专业毕业的、以编写程序为职业的人都可算得上是程序员。”然而,在早期,由于计算机行业的快速发展和技术的不断进步,很...

    作一个真正合格程序员的七种素质

    ### 作一个真正合格程序员的七种素质 在IT行业中,成为一名合格的程序员不仅需要扎实的技术基础,还需要一系列软技能和个人素质。以下是成为一名真正合格程序员所必备的七种关键素质。 #### 1. 团队精神和协作能力...

    成为一名更好的程序员

    成为更好的程序员需要不断学习和实践,涵盖编程技巧、软件开发最佳实践、个人习惯和团队协作等多个方面。根据提供的文件内容,以下是详细的知识点: 1. 编程实践 - 代码层面的技术:学习如何编写代码行,进行测试...

    Fred Wu:如何通过努力和一些小聪明,成为一个更优秀的Ruby程序员

    ### 如何通过努力和一些小聪明,成为一个更优秀的Ruby程序员 #### Fred Wu的背景与历程 Fred Wu在技术领域的旅程始于1997年,当他得到了自己的第一台电脑——一台Intel Pentium MMX 166Mhz。同年,他开始接触BBS...

    一个老程序员的心里话

    【标题】中的“一个老程序员的心里话”和【描述】中的“一位从业十多年的老程序员通过他的亲身经历为大家总结出来的一些经验”表明这篇文章是关于一个经验丰富的程序员分享他在IT行业长期工作所积累的见解和建议。...

    怎样成为游戏开发程序员

    ### 怎样成为游戏开发程序员 游戏开发是一个充满创意和技术挑战的领域,它不仅需要扎实的编程基础,还要求开发者具备良好的艺术感觉、创新思维以及团队合作能力。想要成为一名游戏开发程序员,可以从以下几个方面...

    优秀程序员应知

    总之,成为一名优秀的程序员不仅仅是掌握技术那么简单,更重要的是培养正确的态度和习惯。无论是踏实的工作态度、认真负责的精神,还是持续学习的能力,都是成为顶尖程序员不可或缺的品质。同时,“懒”与“笨”的...

    如何成为一个合格的java程序员

    要成为一个合格的Java程序员,需要全面且深入地掌握一系列技术和工具。下面将详细阐述成为一位合格Java程序员所需具备的关键技能。 ### 一、语法基础 Java作为一种静态类型的面向对象编程语言,其语法基础至关重要...

    优秀程序员所具备的几项本领

    在IT行业中,成为一名优秀的程序员不仅仅意味着掌握高超的技术,还需要具备一系列软技能和个人素质。以下将详细介绍成为优秀程序员所需要的关键能力: #### 一、掌握语言与工具(Languages and Tools) 1. **编程...

    六分钟八法则塑造优秀程序员

    在IT领域,尤其是软件开发行业中,成为一名优秀的程序员是许多人的职业目标。本文基于“六分钟八法则塑造优秀程序员”的理念,详细介绍了八个具体的实践建议,帮助开发者们在短期内提升自身技能。下面将逐一探讨这八...

    【高清完整pdf】高效程序员的45个习惯 敏捷开发修炼之道

    本书名为《高效程序员的45个习惯 敏捷开发修炼之道》,由Venkat Subramaniam和Andy Hunt两位作者...书中的每一个习惯都值得程序员细细品味,并将其融入到日常的工作与学习之中,真正地实践成为一名真正的高效程序员。

Global site tag (gtag.js) - Google Analytics