略谈“开发效率”
by huangxu 2009-8-25
1. 概念上阐述
效率<>速度,
同时还应保证产品,程序,代码的质量。
2. 横向纵向分工
大纲:
横向纵向结合,灵活选取,减低各项分工之间的依赖程度和集成难度。
拆分模块,分层,模块内横向纵向划分。
各种分工方式的一致目标:推进项目,保证程序质量和健康发展。
基础模块,组件等。
同一层设计一致性。
接口暴露原则,修改和变动的影响扩散。
增强可测试性。
详细:
横向纵向结合,灵活选取,以减低各项分工之间的依赖程度和集成难度为出发点,各种分工方式的一致目标:推进项目,保证程序质量和健康发展,而非单纯为了拆分人员职责。
对于不同功能模块,不同代码结构分层,都可进行横向纵向划分。同时对于基础模块,组件等的拆分和设计都应通过合理分工来达到设计风格和接口的稳定以及一致性。
同一层设计一致性,接口暴露原则一致性,修改和变动的影响扩散的最小化,可测试性增强,这些都是能通过更优的分工来达到的。
3. 开发模式
选取一个模式不是为了推广它,而是根据项目和团队特点选取合适开发模式,吸收已经有的优秀实践来建设当前团队,而非强加一套方式。
4. 规范化
规范在全局来讲不可能涉及各个开发细节,只提供一个可参考的规范,在具体项目中则预先根据项目情况制定一系统编码和工作流程的规范。
5. 产品迭代的边界问题
6. 前端工程师职责(各层设计和引用的依赖的转移)
以上总结了一些开发效率可谈及的条条纲纲,之后再逐渐加深细谈。