设计自己的应用开发框架二(体系结构)

本文介绍了定制应用开发框架的设计思路及其体系结构,包括业务实体、业务逻辑与用户界面等关键部分,旨在通过分层提高代码重用性和开发效率。

系列文章目录:

设计自己的应用开发框架一(引子)

设计自己的应用开发框架二(体系结构)

设计自己的应用开发框架三(数据操作与业务实体)

设计自己的应用开发框架四(业务类库与业务逻辑)

设计自己的应用开发框架五(插件编写与用户界面)

设计自己的应用开发框架六(异常与日志)

设计自己的应用开发框架七(国际化)

设计自己的应用开发框架八(插件化)

 

在上一篇作为引子的文章中,我一遍遍的问大家是不是应该需要一个自己的应用开发框架。如果您还能读系列文章的第二部分,也就是您现在所看到的这个小文,那么就说明您的回答是肯定的。那么这个定制框架应该是个什么样子呢?它是否真的能够带给我们那些好处呢?在本文中,我们将逐步了解它的体系结构。

 

下面这个图形是一个典型的三层结构模型,这也是我们日常开发过程中最常见的模型。当然,您可以进一步的将它进行细分,以达到想要的分层效果。不过,这并不影响我们对框架的使用,也并不影响我们拿三层结构来说事儿。

上图概括的说明了,框架所位于的位置,以及它的作用。协调软件项目中各层之间的工作,并对整个工程进行有效的控制和代码重用是其最根本的用途。

 

那么如何来进行这些工作呢?下面这张图将整个定制框架的内部结构进行了细分。当然,这只是我目前项目中的细分,并不意味着您的定制框架也要这个样子

由上图可以看出,通过定制框架的帮助,我们能在不同的层次获得各自需要的支持模块。

在业务实体部分(BusinessEntity),我们可以为实体层封装可能用到的数据连接方式,当然在实际的开发过程中我们可以只封装一个就够了。同时我们还要在其中定义常用的数据操作方法,接着我们要为整个业务实体部分制定规则、优化等(在本系列文章的第三部分将会详细介绍)

在业务逻辑部分(BusinessLogic),我们为该层提供界面到实体的业务传递控制,以及安全等常用方法。(系列文章第四部分)。

在界面部分(UI),我们为界面层提供界面扩展、报表、编辑器等功能(系列文章第五部分)。

这里我们还有两个基础模块贯穿整个框架的始终,那就是自定义异常和日志部分,它们负责为框架捕获自定义的异常以及发生异常或需要调试时日志的输出功能(系列文章第六部分)。

到这里,相信您已经明白我们如何通过编写定制框架使反复的开发过程变得简化了。因为在我们所进行的大多数开发过程中,只有图中深蓝色部分会发生一些改变,而其它部分是基本不变的。所以,一旦我们拥有了适合自己的开发框架,以后的工作将变得更加的容易和敏捷化。

 
代码转载自:https://pan.quark.cn/s/f87b8041184b Language: 中文 欢迎来到戈戈圈! 当你点开这个存储库的时候,你会看到戈戈圈的图标↓ 本图片均在知识共享 署名-相同方式共享 3.0(CC BY-SA 3.0)许可协议下提供,如有授权遵照授权协议使用。 那么恭喜你,当你看到这个图标的时候,就代表着你已经正式成为了一名戈团子啦! 欢迎你来到这个充满爱与希望的大家庭! 「与大家创造更多快乐,与人们一起改变世界。 」 戈戈圈是一个在中国海南省诞生的创作企划,由王戈wg的妹妹于2018年7月14日正式公开。 戈戈圈的创作类型广泛,囊括插画、小说、音乐等各种作品类型。 戈戈圈的目前成员: Contributors 此外,支持戈戈圈及本企划的成员被称为“戈团子”。 “戈团子”一词最初来源于2015年出生的名叫“团子”的大熊猫,也因为一种由糯米包裹着馅料蒸熟而成的食品也名为“团子”,不仅有团圆之意,也蕴涵着团结友爱的象征意义和大家的美好期盼,因此我们最终于2021年初决定命名戈戈圈的粉丝为“戈团子”。 如果你对戈戈圈有兴趣的话,欢迎加入我们吧(σ≧︎▽︎≦︎)σ! 由于王戈wg此前投稿的相关视频并未详细说明本企划的信息,且相关视频的表述极其模糊,我们特此创建这个存储库,以文字的形式向大家介绍戈戈圈。 戈戈圈自2018年7月14日成立至今,一直以来都秉持着包容开放、和谐友善的原则。 我们深知自己的责任和使命,始终尊重社会道德习俗,严格遵循国家法律法规,为维护社会稳定和公共利益做出了积极的贡献。 因此,我们不允许任何人或组织以“戈戈圈”的名义在网络平台或现实中发布不当言论,同时我们也坚决反对过度宣传戈戈圈的行为,包括但不限于与戈戈圈无关的任何...
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值