年中总结写了以下内容,放在这备忘,
顺便提供给有兴趣的人参考。
下面列表只是我整理刚完成项目得出的内容,
如果你不认同,请随意修改成适合你们自己的。
虽然在前一个项目中公司的研发人员相较其他公司人员
已经能够较高效的完成项目开发工作,
但从容易进行功能变更及编写易维护代码角度来看,
仍存在很大的调整空间。
软件开发除了需要有好的设计外,
还需要开发人员能够依据设计、参照面向对象原则、
采用“对未来需求的修改较有弹性”且“较容易维护”的编程技巧来
开发出“高内聚、低耦合”的代码。
总的来说,所谓“面向对象(简称OO)原则”,
就是写出“对未来需求的修改较有弹性”且“较容易维护”代码的原则。
具体来说,新入职研发人员至少应该培训他们使其具备以下能力:
善用委托模式(最重要);
能够单独写类、单独执行,最终将类集成到具体功能中(次重要);
测试驱动的开发,并能够编写永久有效的测试用例(第三重要);
基于Maven管理项目及模块版本,能够松散集成地开发子模块;
使用“注入”降低模块间的耦合;
熟悉使用事件模式(观察者模式);
能够使用策略模式、命令模式;
其他编程技巧:
使用较少的代码行数编写方法;
使用流处理byte[]与报文;
正确处理TCP粘包、分包和串包;
基于Entity/ORM操作数据库;
基于差异调整数据库结构;
能够横转直测试if条件;
应该编制一份《研发人员能力记录表》,
跟踪新入职研发人员是否真的具备上述各项能力。
对于不具备相应能力的员工应该给予培训,
确保研发人员在下个项目的开发工作中能够使用正确方式
编写出“对未来需求的修改较有弹性”且“较容易维护”
“高内聚、低耦合”的代码。