首页 > 应用 > 软件技巧 > 正文

面向对象的应用服务层设计

2024-07-16 17:58:42
字体:
来源:转载
供稿:网友
前言

 

N层的应用软件系统,由于其众多的优点,已经成为典型的软件系统架构,也已经为广大开发人员所熟知。在一个典型的三层应用软件系统中,应用系统通常被划分成以下三个层次:数据库层、应用服务层和用户界面层。如下图所示:

  

 

其中,应用服务层集中了系统的业务逻辑的处理,因此,可以说是应用软件系统中的核心部分。软件系统的健壮性、灵活性、可重用性、可升级性和可维护性,在很大程度上取决于应用服务层的设计。因此,如何构建一个良好架构的应用服务层,是应用软件开发者需要着重解决的问题。

 

为了使应用服务层的设计达到最好的效果,我们通常还需要对应用服务层作进一步的职能分析和层次细分。很多开发者在构建应用服务层的时候,把数据库操纵、业务逻辑处理甚至界面显示夹杂在一起,或者,把业务逻辑处理等同于数据库操纵,等等,这些,都是有缺陷的做法。本文,就在这个方面进行设计时可采用的方案进行一些探讨。

 

为了使讨论更具有针对性,本文会讨论一些比较流行的系统架构,例如J2EE架构,以及JDO。在微软的.Net平台上,将以Websharp中间件为例。Websharp中间件是笔者开发的一个构建在微软.Net平台之上的一个中间件系统,也是实现文章所述的系统架构的支撑系统。选用这些架构做例子,也是因为.Net出现的时间比较短,目前在这个平台上没有成熟统一的架构,而J2EE是目前最成熟的构建企业应用的平台。

 

自本人的《 利用.Net框架开发应用系统》和《 实战揭秘:开发.Net平台应用系统框架》两篇文章发表以来,收到很多反馈和来信,提出了很多问题。因为时间的关系,不能一一回复,因此,也借本文给大家一些解答。需要说明的是,原来的Jobsinfo现在已经做了升级,名称变更为Websharp。

 

设计的原则和评判标准

 

同软件工程的原则一样,应用服务层的设计,必须遵循的最重要的原则就是高内聚和低耦合。软件分层的本来目的,就是提高软件的可维护性和可重用性,而高内聚和低耦合正是达成这一目标必须遵循的原则。尽量降低系统各个部分之间的耦合度,是应用服务层设计中需要重点考虑的问题。

 

内聚和耦合,包含了横向和纵向的关系。功能内聚和数据耦合,是我们需要达成的目标。横向的内聚和耦合,通常体现在系统的各个模块、类之间的关系,而纵向的耦合,体现在系统的各个层次之间的关系。

 

系统的框架,通常包含了一系列规范、约定和支撑类库、服务。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表