我的团队正在讨论我们开展项目的未来方向。一半的团队相信纯粹的3层架构,而另一半则倾向于采用双层架构。
项目假设:
三层团队优惠:
2层团队优惠:
这就是高级别的论点。我们应该考虑哪些因素?你有什么经验吗?
答案 0 :(得分:4)
前期设计有时间和地点,只有经验丰富的建筑师才能知道项目的细节。对我来说,如果有任何疑问,或者它是否可以采取任何一种方式,我会这样理解:
因人而异。
答案 1 :(得分:2)
我不相信双方实际上相距甚远。对我来说听起来像2层方法更关注于演示,并希望服务能够完成繁重的工作。这些服务仍然可能有另一层涉及数据访问,因此它是另一种3层方法。它也是我们在工作中所青睐的,因为假设我们保持相同的界面,经常对服务进行更改并不需要对消费者进行任何更改。
然而,所有这一切,我认为这应该在要关注的事项的优先列表上低得多。分层方法本身并不会对您有所帮助。这些层级的构建方式非常重要。我觉得每个人都同意编码实践更为重要。诸如依赖注入,关注点分离,控制反转,单元测试,模拟等等。这些事情比关心层数更重要。一旦这些层落到位,层级将自然地跟随。