成功程序员的8个习惯

对成功的渴望或许是我们与生俱来写在基因里的一部分。成功会让人幸福,并且几乎每个人都在争取幸福。当我们感到幸福的时候,我们大脑中的化学物质会迸发积极的情感,激励我们获取更多的成功。

成功的职业生涯通常是指规定时间内,发布高质量且被认可的工作。这对于IT开发人员也没什么不同。成功的开发人员能在预估范围内编写出高质量的代码,并通过发布伟大的产品让利益相关者满意。

那么开发人员如何才能做到这一点呢?有些人认为开发人员是魔术师,按几个按钮就能让计算机变魔法。现实情况则要复杂得多:我们得遵循一定的原则来编写可靠的代码,测试我们的工作,并不断更新到最新的技术。

那么,开发人员想要成功的话,需要做些什么呢?


1.测试,测试,还是测试

写代码的一个重要方面就是,测试。项目中的bug发现得越早,修复成本就越低。你在项目的最后阶段找到的bug,修复起来绝对相比你在写代码的时候修复要昂贵得多。自动单元测试有时在软件项目中会被忽略,但我可以告诉你自动单元测试有助于尽早发现bug。


2.原型和线框图

在动手写代码之前,你得想清楚你究竟要开发什么东西。好的原型和线框图将帮助利益相关者和开发人员确定最终产品应有的样子。越早讨论功能和可能的障碍越好。

Indigo Studio是一个能帮助我们迅速起草原型的超棒工具:平台不但不需要设计人员写一行代码,而且允许用户和利益相关者在应用程序构建之前先行体验它的简化版本。


3.使用在线社区和论坛

俗话说,共享的问题就是减半的问题。当你绞尽脑汁解决问题的时候,请注意不要浪费太多时间在孤军奋战上。很有可能你的问题,其他某个人已经经历过了,他的经验教训会对你产生极大的帮助。访问在线社区,例如Stackoverflow或TechNet寻求提示和技巧。


4.充分利用工具和实用程序

有大量的软件可用于帮助提升开发人员的构建速度。 除了visual Studio——这款开发微软软件的必备工具现在已经是开箱即用的了——还有很多其他的工具和第三方插件可帮助开发人员做的更好:

ReSharper使得编写代码更容易;

Web Essentials在创建web app时可提供方便的功能;

FxCop / StyleCop用于广泛的代码分析;

SPCAF(用于SharePoint / Office 365的开发)。


5.有明确的前景规划和最终目标

一个伟大的app和产品始于一个点子,并且这个点子成为了最终的目标。如果没有最终目标就没有清晰的情景规划,这很有可能会导致预期和最终产品之间出现差异。在开发过程中略微改变最终目标是没有关系的:但始终要对最终结果将是什么样子胸有成竹。


6.不要急于开发

大多数bug都是在急急忙忙开发时而引进的。每一个项目在某个阶段都会有时间压力,但成功的开发者得能够应对这种压力,并保持提供高质量的软件。

俗话说,忙中出错。匆匆忙忙赶出来的东西总会有瑕疵。而且,引进的bug实际上反而会导致更长的开发时间,得不偿失。


7.学习,变得更好,懂得更多

IT是一个进步非常迅速的世界。如何编写代码、使用哪款插件、哪个产品可用等等所有这些问题的答案,在一定时间之后都会发生变化。开发人员需要熬夜去阅读最新的博客、论坛和社交网络。当然,阅读哪些博客取决于你使用何种技术,关于SharePoint / Office 365的一些必要资源包括官方的General Office Blog和 Office Dev blog。

这不仅仅是位与字节的问题:阅读关于如何变得更优秀的书籍,是走在前沿的关键。推荐阅读Malcolm Gladwell的Outliers来了解更多成功的秘诀。


8.不要害怕失败

即使开发人员严格遵照前面的7个要点去做,问题依然还是会有。当错误出现时,你千万不能因此而气馁——没有人是完美的,偶尔出现问题是正常的。

关键是要了解问题的所在,承认自己的失败,并从中吸取经验教训。千万不要将自己的错误归咎于其他人,而且如果你敢于承担责任的话,大家反而会欣赏你

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第1章 敏捷——高效软件开发之道 第2章 态度决定一切 1. 做事 2. 欲速则不达 3. 对事不对人 4. 排除万难,奋勇前进 第3章 学无止境 5. 跟踪变化 6. 对团队投资 7. 懂得丢弃 8. 打破砂锅问到底 9. 把握开发节奏 第4章 交付用户想要的软件 10. 让客户做决定 11. 让设计指导而不是操纵开发 12. 合理地使用技术 13. 保持可以发布 14. 提早集成,频繁集成 15. 提早实现自动化部署 16. 使用演示获得频繁反馈 17. 使用短迭代,增量发布 18. 固定的价格就意味着背叛承诺 第5章 敏捷反馈 19. 守护天使 20. 先用它再实现它 21. 不同环境,就有不同问题 22. 自动验收测试 23. 度量真实的进度 24. 倾听用户的声音 第6章 敏捷编码 25. 代码要清晰地表达意图 26. 用代码沟通 27. 动态评估取舍 28. 增量式编程 29. 保持简单 30. 编写内聚的代码 31. 告知,不要询问 32. 根据契约进行替换 第7章 敏捷调试 33. 记录问题解决日志 34. 警告就是错误 35. 对问题各个击破 36. 报告所有的异常 37. 提供有用的错误信息 第8章 敏捷协作 38. 定期安排会面时间 39. 架构师必须写代码 40. 实行代码集体所有制 41. 成为指导者 42. 允许大家自己想办法 43. 准备好后再共享代码 44. 做代码复查 45. 及时通报进展与问题 第9章 尾声:走向敏捷 9.1 只要一个新的习惯 9.2 拯救濒临失败的项目 9.3 引入敏捷:管理者指南 9.4 引入敏捷:程序员指南 9.5 结束了吗 附录A 资源 索引
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值