不一定要分层,分层的优点有:代码简洁,易维护。缺点是:开发成本高,性能也有所下降。
如果你开发大的项目的时候,用分层是很好的,若是很小的,就没有这个必要了。
最佳平衡点不是理论决定的,是由具体的业务需求来决定的。
根据业务需求特点以及软件的开发、维护需求来决定采用什么样的设计模式,
设计模式的灵活运用是开发经验和对业务精通的结果。要真正用好设计模式,
要在大量的开发经验基础上,总结系统架构的不足之处,才会真正体会到设计模式为什么要这样做。
设计模式不可滥用,大多数采用的设计模式都会或多或少降低程序的性能,采用设计模式的目的在于方便对软件的开发和维护。
采用分层结构来开发网站的优点是层次清晰,便于维护和分工,但是对程序性能的影响是比较大的。
以ASP.NET来说大都用的一种MVC三层结构的变种,主要采用的是抽象工厂,生成器等设计模式。
这些东西不需要学,做的多了,不自觉之间就会了。平时没注意,其实你天天都在用设计模式。 最后,我不知道你是怎么理解的。分层并不是设计模式,它与面向对象设计不是一个层次上的概念。
分层是一种抽象工厂设计模式的一种应用方式而已。
看项目规模和开发人员数量
多人开发的话分层不管在可维护性,扩展性等方便有它的优势的
单人开发的话可以任意选择...
如果你项目很小,即使全部文件都有改动,也不会很麻烦,那就没必要纯粹为了分层而分层。。。
分层是对于大系统来说维护容易。。。
分层的时候用不到设计模式,设计模式是对那些具体模块的内部实现用的。整个框架的分层,主要立足于接口。至于怎么分层的话,看你自己的项目了。如果项目够大,那么就分层。一般主要基准与mvc模型分层。比较通用的是三层与五层模型。
分层的目的是为了代码的逻辑性好,以便维护与扩展。切忌为了分层而分层。OOA分层的时候不用看任何具体实现,直接拟定相关接口。OOD部分,采用面向对象思想以及设计模式以对接口负责的角度来设计。至于后面的OOP部分,面向实现。
设计模式这个概念最好可以忘记。别什么地方都想着怎么用设计模式,否则产品就是一个怪物,毫无价值。设计模式是在你具体某个实现的时候你自己会想到或者为了封装某个变化点的时候。