软创互联

软件开发最佳实践总结

工序

相同序号表示可并行

1、需求
2、领域设计
2.1、 根据领域进行API设计
2.1.1、根据API设计编写契约测试
2、交互设计(先出低保真请产品经理&界面开发评估,然后出高保真)
3、界面实现
3、API实现
4、集成测试(功能、安全、性能),测试可提前进行的也尽可能提前。

约束

  1. 前后端(界面与API)代码必须分离。
  2. API必须按领域限界上下文拆分,并且代码独立开发维护。便于领域复用、避免随着软件需求增加软件代码复杂性指数级增长。
  3. API必须要有设计文档,并且必须要有契约测试(实战分享)。接口开发最佳实践
  4. 如果有通用组件,则优先考虑复用。避免重复造轮子,减少浪费。
  5. 提供Docker部署脚本和镜像。

书籍推荐

. 《软件方法》
. 《领域驱动设计》
. 《实现领域驱动设计》
. 《领域驱动战略设计实践》

大厂都在玩的微服务,小团队如何应用?
高并发架构系列:Kafka、RocketMQ、RabbitMQ的优劣势比较


编程的三档

  • 编程人员,用代码完成需求,能运行;
  • 程序员,会优化代码,尽量模块化,尽量为未来的改进和复用努力;
  • 架构师,会充分考虑变更的代价,架构(设计)的定义就是让变更的代价最小化。