请论述当**采用三层结构时,这三层结构是如何分工的,有什么优点?
答:。区分层次的目的即为了“高内聚,低耦合"的思想。
1、表现层(ui):通俗讲就是展现给用户的界面,即用户在使用一个系统的时候他的所见所得。
2、业务逻辑层(bll):针对具体问题的操作,也可以说是对数据层的操作,对数据业务逻辑处理。
3、数据访问层(dal):该层所做事务直接操作数据库,针对数据的增添、删除、修改、更新、查找等。
注:(内聚:一个模块内各个元素彼此结合的紧密程度;耦合:一个软件结构内不同模块之间互连程度的度量)
优缺点。优点:
1、开发人员可以只关注整个结构中的其中某一层;
2、可以很容易的用新的实现来替换原有层次的实现;
3、可以降低层与层之间的依赖;
4、有利于标准化;
5、利于各层逻辑的复用。
6、扩展性强。不同层负责不同的层面,如petshop可经过简单的配置实现sqlserver和oracle之间的转换,当然写好了也可以实现b/s与c/s之间的转换。
7、安全性高。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。
8、项目结构更清楚,分工更明确,有利于后期的维护和升级。
缺点:1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应的数据,如今却必须通过中间层来完成。
2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的**。
3、增加了**量,增加了工作量。
三层架构是:
一:界面层。
界面层提供给用户一个视觉上的界面,通过界面层,用户输入数据、获取数据。界面层同时也提供一定的安全性,确保用户不用看到不必要的机密信息。
二:逻辑层。
逻辑层是界面层和数据层的桥梁,它响应界面层的用户请求,执行任务并从数据层抓取数据,并将必要的数据传送给界面层。
三:数据层。
数据层定义、维护数据的完整性、安全性,它响应逻辑层的请求,访问数据。这一层通常由大型的数据库服务器实现,如oracle 、sybase、ms sql server等。
从开发角度和应用角度来看,三层架构比双层或单层结构都有更大的优势。三层结构适合群体开发,每人可以有不同的分工,协同工作使效率倍增。开发双层或单层应用时,每个开发人员都应对系统有较深的理解,能力要求很高,开发三层应用时,则可以结合多方面的人才,只需少数人对系统全面了解,从一定程度工降低了开发的难度。
三层架构属于瘦客户的模式,用户端只需一个较小的硬盘、较小的内存、较慢的cpu就可以获得不错的性能。相比之下,单层或胖客户对面器的要求太高。
三层架构的另一个优点在于可以更好的支持分布式计算环境。逻辑层的应用程序可以有多个机器上运行,充分利用网络的计算功能。分布式计算的潜力巨大,远比升级cpu有效。
三层架构的最大优点是它的安全性。用户端只能通过逻辑层来访问数据层,减少了入口点,把很多危险的系统功能都屏蔽了。
另外三层架构还可以支持如下功能:remote access(远程访问资料),例如可透过internet存取远程数据库;high performance(提升运算效率)解决集中式运算(centralize)及主从式架构(client-server)中,数据库主机的运算负担,降低数据库主机的connection load,并可藉由增加app server处理众多的数据处理要求,这一点跟前面讲到的分布式计算提高运算能力是一个道理;client端发出request(工作要求)后,便可离线,交由app server和database server共同把工作完成,减少client端的等待时间;这个功能我觉得应用场合不是很多,自己感受也不是很深刻,从理论上是成立的。
Web程序设计离线作业
浙江大学远程教育学院。web程序设计 课程作业。html部分。一 选择题 1.以下哪个选项能显示成两行文字。a the first line and second line b the first line and second line c the first line and second li...
web程序设计课程作业
一 背景。为图书借阅管理这一常见问题设计 实现对图书 读者 借阅信息的管理 增加 删除 更新 查询 二 作业要求。1 创建数据库。分析图书借阅系统,设计数据库 可包括表 读者表,图书表和借阅表,以及存储过程,视图,用户 角色等 2 系统功能模块主要由以下三部分构成。1 图书信息 增加 删除 修改和查...
web程序设计实验大纲
web程序设计 实验教学大纲。课程名称 网页制作课程编号 06042279 课程性质 独立设课课程属性 专业课 学时学分 总学时50,总学分2 实验学时 20,实验学分2 应开实验学期 本科三年级六学期。适用专业 信息管理与信息系统等。先修课程 计算机基础 c语言 网络基础 实验项目数 6个。大纲主...