.NET平台的分层架构与设计模式应用研究毕业设计l论文- 副本(2)

2019-04-22 20:10

一、绪论

1.1 B/S系统概述

B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据交互。

B/S结构图

在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。相对于C/S结构属于“胖”客户端,需要在使用者电脑上安装相应的操作软件来说,B/S结构是属于一种“瘦”客户端,大多数或主要的业务逻辑都存在在服务器端,因此,B/S结构的系统可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。B/S结构系统的产生为系统面对无限未知用户提供了可能。当然,与C/S结构相比,B/S结构也存在着系统运行速度较慢,访问系统的

用户不可控的弱点。

以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。特别是在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。 1.2 分层架构概述

在分解复杂的软件系统时,软件设计者用得最多的技术之一就是分层。在计算机本身的架构中,可以看到:到处都有分层的例子:不同的层从包含了操作系统调用的程序设计语言,到设备驱动程序和CPU指令集,再到芯片内部的各种逻辑门。网络互联中,FTP层架构在TCP之上,TCP架构在IP之上,IP又架构在以太网之上。当用分层的观点来考虑系统时,可以将各个子系统想像成按照“多层蛋糕”的形式来组织,每一层都依托在其下层之上。在这种组织方式下,上层使用了下层定义的各种服务,而下层对上层一无所知。另外,每一层对自己的上层隐藏其下层的细节。

多层架构的提出,是软件开发思想的一个重大进步。它的出现,在很大程度上解决了软件开发中的强耦合问题,也为编写代码清晰、可维护性良好的系统提供了思想基础。

Martin Fowler在《企业应用架构模式》一书中对分层架构的优势描述如下: ", 开发人员可以只关注整个架构中的其中一层 ", 可以很容易地用新的实现替代原有层次的实现 ", 可以降低层与层之间的依赖 ", 有利于标准化 ", 有利于各层逻辑的复用

概括来说,分层架构设计可以达到如下目的:分散关注,松散耦合,逻辑复用,标准定义。

当然,任何事物有利也有弊。分层架构的一大缺点就是降低了系统的性能,

因为本来直接完成的功能现在需要多次调用才能完成,自然使得性能下降。所以,分层架构可以说是以牺牲系统性能换取可维护性的手段。

可以看出,系统的性能和可维护性是一对矛盾,鱼和熊掌和难兼得,所以在使用分层架构设计系统时,要把握一个度,不能过于极端的强调性能或可维护性,而是应该根据系统的具体情况,取两者的折中。

1.3 设计模式概述

目前,软件设计模式尚处在迅速发展之中,越来越多的研究人员正在把注意力投向软件设计模式的研究。关于软件设计模式的研究工作主要在国外展开的,国内到目前为止对于软件设计模式的研究尚处在起步阶段。

设计模式这个概念最初产生于建筑行业。设计师(设计建筑物而不是计算机系统)意识到他们需要共享有关正确设计技术的想法。这些想法是在可以使设计师团体从分享经验和教训中获益的设计模式中形成的。设计模式在80 年代后期从建筑业进入计算机系统领域。面向对象(Object-oriented,OO)原则逐渐得到普及,而设计模式成为培育新的OO 追随者的最佳实践。

Richard Gamma 等(人们通常把他们称作 Gang of Four [GoF] )编著的《Design Patterns: Elements of Reusable Object-Oriented Software》一书使设计模式成为万众瞩目的焦点。随着设计模式逐渐普及,他们所涉及的领域就像“Ben and Jerry”效应那样也逐渐广泛起来。因此,它就是设计模式,和普通的OO 设计模式一样来源于GoF 的著作,但是现在包括了专为开发语言、应用服务器、行业合成等提供的设计模式。

设计模式通常根据一些公共特性而组合在一起。GoF 的著作把设计模式划分为三类:Creational、Behavioral 和Structural。用于J2EE 的设计模式通常划分为表现层(Presentation Tier)、业务逻辑层(Business Logic Tier)和集成层(Integration Tier)。这种分组方式可以使描述所有设计模式共享的公共细节更加轻松,或者使设计模式的分类和发现更加轻松。[4]

尽管设计模式本身并不要求一定用某种语言来实现,但脱离了具体的实现,就无法真正理解设计模式。GOF 的《设计模式》是经典之作,但毕竟距现在已经十几年了。这个期间开发平台已经进化了多代,很多新技术已经应用到编程中。

有些技术可以简化设计模式的实现,有些技术已经采用了设计模式。因此,设计模式必须针对所使用的编程语言和开发平台,一定要注意,不是将《设计模式》

中的例子转换为C#或者其他语言就等于知道如何实现设计模式了,而是要关注设计模式的精髓,并结合具体的语言特点完成其实现。

就.NET 而言,很多技术可以简化设计模式的实现,例如,采用反射技术实现工厂和采用委托技术实现模板方法等。另外,由于国情不同和业务的发展,使得设计模式的选择和运用更具有特殊性,特别是在业务变化频繁项目中的选择和运用。

1.4 研究背景

1.4.1 .NET平台分层架构的现状及可研究性

微软(Microsoft)公司的.NET平台凭借其先进的设计思想、丰富的类库、

强大的能力和完善的IDE及开发帮助文档获得了众多开发者的青睐。尤其在Web开发平台方面,ASP.NET凭借其完善的面向对象模型和独树一帜的控件式开发方式将Web开发这一技术领域提高到一个前所未有的新境界。

然而,令人遗憾的是,到目前为止,仍缺少一个成熟的基于.NET平台的经

典分层架构体系。反观其竞争对手Java平台,从EJB到轻量级框架,基于J2EE平台的分层架构已相当成熟和完善。目前,基于.NET平台的分层架构一般都是模仿微软官方给出的分层范例——“.NET PetShop”。虽然“.NET PetShop”是一个经典的基于.NET平台的B/S系统分层架构示例,然而也有许多不足,如:

1.结构过于复杂,有点为分层而分层的感觉,对实际项目指导力不足。 2.实现方法单一。如数据访问层是使用的朴素实现,即手工组合参数,然后

动态生成SQL语句和调用存储过程。然而在实际中,可能有更多的实现方式,例如通过ORM实现,这就需要进一步讨论数据访问层的共性,从更高的抽象层次上对其进行理解和掌握,而不是仅仅把数据访问层看成一种具体的实现。

基于以上几点,可以看出,现在迫切需要形成一套理论,来指导.NET平台

上的分层架构开发,而不是让其仅仅停留在模仿阶段。

1.4.2 研究目的

本论文的研究目的,是力图通过对分层架构思想、设计模式、软件工程、.NET

平台以及Web2.0思想等论题的研究,寻找一种合理、简练、通用、易用、安全、具有良好的可维护性和可扩展性并且融入最新技术元素的基于.NET平台的分层架构模式。而且要通过一个完整的系统实例展现出来。

另外,设计模式也是本课题要讨论的话题之一。因为,做架构设计离不开设

计模式。文章中在用到设计模式的地方,进行与分层架构模型有关的讨论,并研究其在与.NET平台的结合中的特殊问题。 1.4.3 研究方法

本文是一个兼具理论与应用的课题,所以,在研究过程中,两方面都要涉及

到。基于此,我们对此课题采取的研究方法是:收集需求、提出方案、设计实现、验证效果。

首先,应该从整体到部分,对整个分层架构体系各个需求进行收集,明确各

部件的职责;然后,针对其职责,提出几种设计方案,并进行设计实现;最后,从耦合度、可扩展性、可维护性和性能等多方面对方案进行验证,提出对解决方案的评价。

为了避免脱离实际,在研究本课题的过程中,将逐步完成一个实际的系统,

而所有的理论,都将直接作用在此系统上,贯穿于一个完整的系统开发过程中,从而让理论在实践中得到检验。

本文研究的Demo将是一个网上购物系统,之所以选择网上购物系统,有以

下几点原因:

1.规模适中。网上购物系统的规模适中,既能起到示例的作用,又不会因为

太过复杂而影响进度。

2.业务逻辑熟悉。一般来讲,在做某个系统时,业务逻辑的设计要和领域专

家合作,因为一般情况下软件开发人员对其他领域的业务流程并不熟悉。而网上购物系统是我们常用的一种系统,大多数人对其业务逻辑非常熟悉。这样就可以免去在研究业务上耗费精力,而将主要经历放在架构的研究上。


.NET平台的分层架构与设计模式应用研究毕业设计l论文- 副本(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:刘振亚各种讲话

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: