本来只是分享几条看法,没想到会有这么多人喜欢。我再补充一些,希望能对进阶中的程序朋友有帮助。手机敲得,比较凌乱。作为个人意见仅供参考。
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主动查。那是难得的成长机会(对经验对形象都是)。当然还有:别人查出来你会很被动。
32.不知怎么选技术书时就挑薄的。起码不会太贵,且你能看完。
33.git是最棒的。简单,可靠,免费。
34.仅对“可预测的非理性”抛断言。
35.Log要有时间和分类,并且要能重定向输出。
36.注释是稍差的文档。更好的是清晰的代码命名。
37.造轮子是很好的锻炼方法。不过前提是见过别的轮子。
38.code review最好以小组或结对为主。因为对业务有足够了解建议才更有价值。而且不会成为负担。注意,提交过程中的管理员review很容易成为瓶颈。
39.提问前先做调研。节约大家的时间。
40.永远别小看程序媛(╯3╰)
作者:大狐狸
链接:https://www.zhihu.com/question/36426051/answer/76031743
来源:知乎
注:作者已授权内容转载到慕课网,若想转载,请自行联系原作者。
热门评论
最后一个顶
最后一条,呵呵呵呵呵
有哪些老鸟程序员知道而新手不知道的小技巧?