技术开发 频道

每个程序员应该知道的12件事情

  【IT168 评论】敏捷个人针对的是每个希望进行自我管理的人,那么针对与每个程序员,我们应该知道的有哪些呢? 本篇分享一下我们程序员应该知道的12件事情。

  充满激情

  喜欢正在做的事情:这也是在如何招到聪明又能做事的人讲到的要有技术热情,你有热情才会喜欢你的技术

  有创造力的:创造力体现在你会创新,创新一方面可以来自你的全新创造,也可以来自于他人基础之上,敏捷个人 - 我是这么理解方法论的中我对方法论的态度就是:不排斥、不迷恋,积极尝试,为我所用。

  想做得最好:内在驱动力,追求卓越的一种价值观

  比昨天更好:我们很多人其实都希望每天都能感觉到进步,我以前每天都要看书,因为每次看书学到新知识之后我就会感觉有点进步,虽然很小,但是这一直让我觉得很好

  喜欢你的代码

  为自己和他人写代码,而差劲的程序员为机器写代码:如果连自己都看不懂的代码就根本不能维护,如果别人看不懂的代码,那就不能交流,而只为机器写代码,那只有一种可能,那你也是机器

  每个程序员喜欢与干净的代码在一起:很些程序员有代码洁癖,看到不符合代码规范、或写的不好的就会强迫自己去修改,即使没有这么强烈的要求,也会表现出对不干净代码的反感

  版本管理

  备份你的代码:现在已经没有人不对自己的代码进行版本管理了

  追溯更改(who、when、what):从log可以清楚知道谁在什么时候改了什么,这在有时候需要查看历史信息时很重要

  并行工作:每个人都可以做自己的工作,做好后集成就好了

  经常提交:一般我们完成一项工作,并通过单元测试后就会提交代码,这是一个好习惯

  构建失败时不提交:在提交之前编译一下、跑一下单元测试,有问题就不要提交,否则影响整个项目

  读代码

  在成为好的写代码的人之前,要学会成为一个好的读代码的人:有人问我如何学习,我就会推荐他们去读一些好代码

  程序员的工作时间,70%读代码,30%写代码:每天程序员也就写个一两百行代码,大部分时间都在思考和看代码了

  练习、练习、再练习

  针对独立的问题进行小练习:把大问题拆成可以独立解决的小问题,针对小问题单独做一些小练习,逐个击破

  在工作之外的项目中练习:每个人都希望工作都能让自己每天进步,但有时环境并不会这么理想,你可能在做维护项目,或者你做的内容更像例行公事,那么你可以在工作之外的项目进行练习,能结合将来工作需要去练习则是更理想的路径

  在没有压力尽自己所能去做:适当压力是动力,但是千万不要给自己太大的压力,在压力承受范围内尽力去练习可以获得较好的结果

  练习成为专家:不断练习,1万个小时之后你就是专家

  重构

  在不改变系统行为下改善代码的质量:重构的前提

  使代码变得容易理解、维护和扩展:重构的目的

  每次签入时是都比签出时更干净:重构的目标

  小方法、组合方法......:重构的技术

  遵守模式和非常好的实践

  SOLID

  GRASP

  DRY

  KISS

  设计模式

  TDD/BDD

  是一个设计流程

  只写足够的代码通过测试

  自动化

  使手工任务自动化

  命令行是你的朋友

  持续集成

  自动部署

  明白你的领域

  特定的领域不会马上过时,而技术会:企业架构框架-TOGAF.pdf 业务分析与需求.pdf

  你只有明白它是如何工作的才能够实现好

  持续学习

  你需要不断地学习,保持竞争力:个人管理 - 学习=知识+实践+思考+心态

  做最差的人:如果你现在是团队最差的人,那么你的进步将是最大的,因为你可以学的是最多的。我是不是也该去找一个让自己觉得很菜的团队呢!?

  读书、blog、网站

  善用好工具:工欲善其事必先利其器,好的工作会让自己效率倍增

  善于沟通

  教或者说是学习最好的方式之一:这个我觉得大家都应该去尝试一下,从我个人经验来看,教和说真的可以让自己学习更有效

  加入一个研究或学习小组

  加入开源社区

  参考: http://www.slideshare.net/samnang.chhun/12-things-every-programmer-should-know

0
相关文章