经过前段时间的修改,对KFDSWEB应用系统进行了优化:主要是对程序进行了模块化设计(采用三层架构)
进行层次化后优点一般表现为下面5点:
1、以后开发可以只关注整个结构中的其中某一层;
2、很容易的用新的实现来替换原有层次的实现;
3、可以降低层与层之间的依赖;
4、标准化;
5、利于各层逻辑的复用。
概括的用书面语言来说,分层式设计可以达至如下目的:分散关注、松散耦合、逻辑复用、标准定义。
分层式结构也不可避免具有一些缺陷:
1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,
如今却必须通过中间层来完成。
2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,
为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。
谈起分层,不是只有在后台代码有这个概念,而层次也不一定有三层,
有的人分7层,有的分2层!三层只是一个表面上的说法,实际过程中分的多的话,但是也逃不出这3层吧 。
在前台页面设计的时候也分层了,js,css,html;优点是能快速更改布局
感想:
分层更能体现面向对象
表现如下:
简单的说MVC模式中的M层或者以orm为思想的Hibernate就充分体现的这一点,其实数据库中的每张表都是可以对象化的,
也就是说表中的每个字段都是一个属性,每条记录都是一个个体;针对每张表的操作就是方法.
而在业务逻辑层和数据访问层,为了能根据不同的参数形式和个数调用不同的方法,就得在业务逻辑层进行重载,等等都是不约而同的。