说说小团队开发(1)
从看到的一篇东西说起吧: 少人数開発に役立つ5つのまとめ
不会日文的用机器翻译,我也是这样看完的(不想看日文的就不要点击了)。因为这篇东西是对几篇文章的总结,我就简单总结和列出一些要点。
スタートアップ企業で8年間Webの開発をしてみての反省点いろいろ
- 谨慎考虑究竟要做的是什么(YAGNI)
- 关系型数据库的使用
- 是否需要使用事务
- 锁的范围:是什么导致了数据库死锁(deadlock)
- 遵循范式的设计;谨慎考虑反范式的设计
- 切忌在服务器配置上铺张浪费,够用则好
- HTTP头是否被正确地设置?
- 浏览器缓存/中转代理服务器缓存是否被正确利用?
- Log rorating 是否正确地运作?
- 对全部log文件进行监控
- 是否进行了测试?测试结果是否正常?
- 测试是否经常被进行?结果是否正常?
- 服务器出现问题时,是否能够在最短时间内收到通知?
- 重复的工作是否已经全部自动化?
- 把握好文档的粒度:现有文档是否最新?
- 有没有多余的文档?
- 关系型数据库的使用
- 考虑使用现有的产品
- 不要重复制作 framework
- 自行开发:性能问题及扩展性问题——尽可能使用现有的解决方案
- 新人的培训问题:考虑现有资源,Google it.
- 模块化开发:松耦合
- 技术负债需要尽早还清
- 购买合适的服务器:服务器要易于扩展。
- 要有专职的服务器维护人员
- 考虑云服务
- 创建好的公司文化
- 新人员:在完成一个阶段的任务后再考虑补入新人员
- 晨会:每天?每周?或是公司内部研讨会?这些都尽可能避免
- 公司人员间的距离
- 人才储备:考虑内部推荐
複数人(2-3人)でウェブサービスを開発するコツ
- 开发环境
- 使用 VMware ESXi 构建开发环境
- Bug Tracking System + VCS: redmine/trac + git/subversion
- 规范化
- 有约定的编码规范,例如 Zend Framework 的编码规范
- 一分钟晨会:昨天干了什么,今天打算干什么
- 即使坐在隔壁也使用 Skype 或 IRC 通话:工作的状态被打断了是一件很困扰的事情。
- 开发
- 使用 tickets 进行任务分配
- 测试驱动开发
- 灵活使用 VCS 的 hooks
- 灵活使用 redmine 的 code review 插件
- 结束开发以后
- 文档化
还有一篇译文(当然是英文翻译到日文的),直接给出英文版链接: A successful Git Branching model
自动化测试
单元测试,Selenium,PHPUnit。有这几个关键字足矣(资料自己找去 :D )。
这篇完了
当然也有好部分内容没有翻译过来,原文链接已经给出,不做传声筒。
这是第一篇,所以肯定也有第二篇,下一篇再写点自己的东西。(这篇水分太多了?)