有哪些老鸟程序员知道而新手不知道的小技巧?

本来只是分享几条看法,没想到会有这么多人喜欢。我再补充一些,希望能对进阶中的程序朋友有帮助。手机敲得,比较凌乱。作为个人意见仅供参考。

1.重构是程序员的主力技能。

2.工作日志能提升脑容量。

3.先用profiler调查,才有脸谈优化。

4.注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎碎念注释,实际就是背景噪音。

5.普通程序员+google=超级程序员。

6.单元测试总是合算的。

7.不要先写框架再写实现。最好反过来,从原型中提炼框架。

8.代码结构清晰,其它问题都不算事儿。

9.好的项目作风硬派,一键测试,一键发布,一键部署; 烂的项目生性猥琐,口口相传,不立文字,神神秘秘。

10.编码不要畏惧变化,要拥抱变化。

11.常充电。程序员只有一种死法:土死的。

12. 编程之事,隔离是方向,起名是关键,测试是主角,调试是补充,版本控制是后悔药。

13. 一行代码一个兵。形成等建制才能有效指挥。单位规模不宜过大。千人班,万人排,容易变成万人坑。

14. 重构/优化/修复Bug,同时只能作一件。

15. 简单模块注意封装,复杂模块注意分层。

16. 人脑性能有限,整洁胜于杂乱。读不懂的代码,尝试整理下格式;  不好用的接口,尝试重新封装下。

17. 迭代速度决定工作强度。想多快好省,简化开发流程,加快迭代速度。

18. 忘掉优化写代码,忘掉代码作优化。因为过早优化,往往事倍功半; 不通过全局性能度量,优化也难有建树。

19. 最好的工具是纸笔;其次好的是markdown。

20. leader问你任务时间,你答不上来。很可能是任务拆分不够细。细分到没有疑问吧。

21. 宁可多算一周,不可少估一天。别总因为你的“乐观”而boss受惊吓。

22. 最有用的语言是English。其次的可能是Python。

23. 百闻不如一见。画出结果,调试耗时将急剧缩短。

24. 资源、代码应一道受版本管理。资源匹配错误远比代码匹配错误更难排查。

25. 不要基于想象开发, 要基于原型开发。原型的价值是快速验证想法,帮大家节省时间。

26. 序列化首选明文文本 。诸如二进制、混淆、加密、压缩等等有需要时再加。

27. 编译器永远比你懂微观优化。只能向它不擅长的方向努力。

28. 不要定过大、过远、过细的计划。即使定了也没有用。

29. 至少半数时间将花在集成上。

30. 与主流意见/方法/风格/习惯相悖时,先检讨自己最可靠。

31. 出现bug主动查,不管是不是你的。这能让你业务能力猛涨、个人形象飙升; 如果你的bug被别人就出来,那你会很被动~≧﹏≦

32. 不知怎么选技术书时就挑薄的。起码不会太贵,且你能看完。

33. git是最棒的。简单,可靠,免费。

34. 仅对“可预测的非理性”抛断言。

35. Log要写时间与分类。并且要能重定向输出。

36. 注释是稍差的文档。更好的是清晰的命名。让代码讲自己的故事。

37. 造轮子是很好的锻炼方法。前提是你见过别的轮子。

38. code review最好以小组或结对为主。因为对业务有足够了解建议才更有价值。而且不会成为负担。注意,提交过程中的管理员review很容易成为瓶颈。

39. 提问前先做调研。节约大家的时间。

40. 永远别小看程序媛(╯3╰)

有哪些老鸟程序员知道而新手不知道的小技巧?
标签: