我应该按照什么顺序开发我的N层应用程序



问题是,一组开发人员被指派从头开始创建大型项目,在考虑了一些架构的优缺点后,他们决定选择N层架构。举一个简单的例子,让我们选择3层(作为一个非常通用和公共的层(。

假设他们在敏捷开发方法论中工作,那么最好的顺序是什么?

我想了三种方法,但我无法真正解释为什么其中一种比另一种更好:

  1. 从DB开始,然后是Buisness,然后是Service,然后是Presentaion。

  2. 建立一个假的Buisness层(Mock(,让DB进行更高级的迭代,然后,在我们有了一个假的工作构建层之后,在它上面建立一个工作服务层(测试它并使其完美(,然后,回到DB和Buisness。

  3. 自下而上构建每个用例(DB->Buisness->Service->Presentation(

选项3在我看来是最灵活的方法。我看到了这个关于它的问题,但我找不到足够有力的答案

感谢您的帮助!

敏捷方法通常是尝试尽早获得可工作的软件,以便您能够收到反馈。

这意味着第三种选择是最好的:通过分层进行精简,以尽快获得可用的功能。

在构建过程中仍然值得考虑使用mock。如果你有专业的开发人员(如数据库开发人员、前端开发人员等(,你可能会发现这有助于平衡工作量

例如:

  • 选择要处理的高优先级功能
  • 快速模拟它的某些方面,以便各个层的专业开发人员可以在不相互依赖的情况下工作
  • 通过所有层构建一个薄薄的切片,在每个代码到位时交换mock

相关内容

最新更新