第8~12章
8、边界:将外来代码(第三方包、开源代码、公司组件等)要干净利落整合到自己的代码里,注意Map使用,要学习性测试,已知未知控制。
9、单元测试:整洁的测试代码,可读性。做的越久越对测试的重视,刚开始工作基本不写测试代码,做完就用用户界面完成相关单元测试,也是粗糙的很。可惜未到大公司工作过,没有经过完成的软件测试,都是自己验证需求过程完成测试,但太受制于程序员个人能力及性格等主观因素影响,软件的稳定、健壮性经不过考验。
10、类:短小、单一权责、内聚性。作者推荐函数、类都是短小,权责功能简洁(单一)。
11、系统:开头“复杂要人命。它消磨开发者的生命,让产品难以规划、构建和测试。”这句话很是触动,吐槽下很多公司或者部门负责人更喜欢复杂的东西,可能做出来了一辈子都没人用。因为个人从spring mvc3开始,书中所讲的EJB、构造与分开、依赖注入的内容可以说被spring3以上版本解决了,更别说spring boot。
12、迭进:简单的理解就是程序员代码的优化其实最简单的书写优化有些人都不愿意做,要回头看自己写的代码哪怕优化代码重复、更好的命名、关键点的注释、减少数据库等资料操作,尽力写更优雅的代码。苦逼的小公司只关心进度去了。
小结下这几章内容,感觉现实与书本中的理想差距还是有的,中国非BTATMJ的程序员有些地方还是挺苦逼的,在没有工程师文化的环境里理解码农的含义。