囿于篇幅,技术书籍上的代码往往聚焦于阐述主题,而忽视了其他方面的代码质量。甚至可以说给新手读者做了很多不好的示范。

例如,很多讲web框架的书籍,会举一个简单的单表CRUD的例子,简单到只需要在service一层处理应用逻辑(application logic)即可,领域逻辑(domain logic)几乎没有。很多新手就是从这样的代码例子学会了贫血模型

再举一例,很多代码例子为了简化篇幅,大量使用了全局变量,例如我翻译的《RESTful Web Clients》一书里的代码,会把状态放在全局变量里。这种写法不应该在真实项目中使用。

我建议新手读者要学会读重点,别囫囵吞枣地把整个代码全部接收,有样学样的copy到自己的项目里去。要提高代码质量,还得偷师比较成熟的开源框架,判断标准可以看单元测试覆盖率,高覆盖的框架,代码质量大概率更好。