最近在群里看到别人分享的一篇知乎文章,总结的非常好,很多地方感同身受,Copy过来,谨以自勉!
-
重构是程序员的主力技能。
-
工作日志能提升脑容量。
-
先用profiler调查,才有脸谈优化。
-
注释贵精不贵多。杜绝大姨妈般的“例注”。漫山遍野的碎碎念注释,实际就是背景噪音。
-
普通程序员+google=超级程序员。
-
单元测试总是合算的。
-
不要先写框架再写实现。最好反过来,从原型中提炼框架。
-
代码结构清晰,其它问题都不算事儿。
-
好的项目作风硬派,一键测试,一键发布,一键部署; 烂的项目生性猥琐,口口相传,不立文字,神神秘秘。
-
编码不要畏惧变化,要拥抱变化。
-
常充电。程序员只有一种死法:土死的。
-
编程之事,隔离是方向,起名是关键,测试是主角,调试是补充,版本控制是后悔药。
-
一行代码一个兵。形成建制才能有战斗力。单位规模不宜过大,千人班,万人排易成万人坑。
-
重构/优化/修复Bug,同时只能作一件。
-
简单模块注意封装,复杂模块注意分层。
-
人脑性能有限,整洁胜于杂乱。读不懂的代码,尝试整理下格式; 不好用的接口,尝试重新封装下。
-
迭代速度决定工作强度。想多快好省,就从简化开发流程,加快迭代速度开始。
-
忘掉优化写代码。过早优化等同恶意破坏;忘掉代码作优化。优化要基于性能测试,而不是纠结于字里行间。
-
最好的工具是纸笔;其次好的是markdown。
-
leader问任务时间,若答不上来,可能是任务拆分还不够细。
-
宁可多算一周,不可少估一天。过于“乐观”容易让boss受惊吓。
-
最有用的语言是English。其次的可能是Python。
-
百闻不如一见。画出结果,一目了然。调试耗时将大大缩短。
-
资源、代码应一道受版本管理。资源匹配错误远比代码匹配错误更难排查。
-
不要基于想象开发, 要基于原型开发。原型的价值是快速验证想法,帮大家节省时间。
-
序列化首选明文文本 。诸如二进制、混淆、加密、压缩等等有需要时再加。
-
编译器永远比你懂微观优化。只能向它不擅长的方向努力。
-
不要定过大、过远、过细的计划。即使定了也没有用。
-
至少半数时间将花在集成上。时间,时间,时间总是不够。
-
与主流意见/方法/风格/习惯相悖时,先检讨自己最可靠。
-
出现bug主动查,不管是不是你的。这能让你业务能力猛涨、个人形象飙升; 如果你的bug被别人揪出来.....呵呵,那你会很被动~≧﹏≦
-
不知怎么选技术书时就挑薄的。起码不会太贵,且你能看完。
-
git是最棒的。简单,可靠,免费。
-
仅对“可预测的非理性”抛断言。
-
Log要写时间与分类。并且要能重定向输出。
-
注释是稍差的文档。更好的是清晰的命名。让代码讲自己的故事。
-
造轮子是很好的锻炼方法。前提是你见过别的轮子。
-
code review最好以小组/结对的形式。对业务有一定了解,建议会更有价值(但不绝对)。而且不会成为负担。管理员个人review则很容易成team的瓶颈。
-
提问前先做调研。问不到点上既被鄙视,又浪费自己的时间。
网友评论