敏捷/XP可以与分层方法一起使用吗?
敏捷/XP应该与分层方法一起使用吗?
将源代码分成多个层需要付出额外的努力,从而大大增加了开发时间。
注:这里所说的“层”指的是带有POCO、DA等的独立组件。
发布于 2009-10-18 06:46:24
Agile/XP是一种管理项目活动、可交付成果和时间表的方法。
分层(N层)应用程序是一种提高可维护性、可伸缩性和团队成员分开职责领域的能力的方法。
它们彼此之间没有太多的关系,除了如果你不熟悉它们,它们都需要额外的投资。与传统的替代方案相比,如果使用得当,两者都将倾向于提高项目的质量。
发布于 2009-10-18 06:47:30
这两者是完全正交的。
在XP中,您可以逐个功能开发系统功能。在添加特性时,您需要不断地重构系统,以确保其实现尽可能清晰。层通常会从这种重构中消失。如果该架构合适,层也是如此,或者其他大型架构结构,如SEDA或REST。
发布于 2009-10-18 15:29:39
相反,在我看来,敏捷警告“你不会需要它”并不是为了完全避免复杂性,而是为了避免添加不必要的复杂性。事实上,单元测试的好处之一是建立了一种规则,在这种规则中,您可以无所畏惧地重构,这样东西就会到达它所属的地方,而不是它可能开始的地方。
因此,重点不是避免层(如果需要,也可以是层) --重点是避免糟糕的层。
https://stackoverflow.com/questions/1584187
复制相似问题