【VB.net】三层的理论认识
2016-03-27 09:08
357 查看
VB.net 视频里讲到了早闻大名的三层,那么关于三层的一些理论知识和实践操作是怎样的呢?我会在这篇博客和下一篇博客,为大家娓娓道来。
三层包括显示层,业务逻辑层,数据访问层。包图如下:
![](https://img-blog.csdn.net/20160327085142876?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
下面就分别介绍一下,三层的每一层。
显示层
作用---
展现业务
采用户信息和操作
原则---
简洁友好
业务逻辑层 BLL
作用
1.从DAL得数据,供UI显示
2.从UI得用户指令数据,执行业务逻辑
3.从UI的用户指令数据,通过DAL写入数据源
1.从数据源(不只是数据库)加载数据,select
2.向数据源写入数据insert /update
3.从数据源删除数据delete
三层不只是三层,还有一个Entity。
独立性:Entity不知道外面有层次,它是独立于其他三层的。三层都知道Entity的存在,Entity不知道三层的存在。
引用:从程序集引用来说,Entity不引用其他程序集。三层程序集都要引用Entity
三层的职责机制
1.UI请求给BLL,BLL自己可以搞定,传给UI
2.UI 请求 ,搜集数据,传BLL,一看需要数据,转给DAL,加工后给BLL,BLL知道之后给UI
PS:UI引用BLL,BLL引用DAL ,UI间接引用DAL。忌讳 互相引用
程序集Assembly
DAL BLL UI 分别在不同的程序集中,这样具有扩展性。
DAL---只提供 基本数据访问,不包含任何逻辑业务处理
UI----只负责显示和采集用户操作,不包含任何业务处理
BLL——最重要。负责处理业务逻辑。获取,UI操作指令,决定执行业务逻辑,在需要访问数据源后,给DAL,处理完,返回必要数据给UI。
关于三层的代码实践请期待下一篇~
博客有待改进之处,期待您的意见和建议。
三层包括显示层,业务逻辑层,数据访问层。包图如下:
下面就分别介绍一下,三层的每一层。
显示层
UI(User Interface)
作用---展现业务
采用户信息和操作
原则---
简洁友好
业务逻辑层 BLL
(BusinessLogic Layer)
作用1.从DAL得数据,供UI显示
2.从UI得用户指令数据,执行业务逻辑
3.从UI的用户指令数据,通过DAL写入数据源
数据访问层 DAL(Data AccessLayer)
作用1.从数据源(不只是数据库)加载数据,select
2.向数据源写入数据insert /update
3.从数据源删除数据delete
三层不只是三层,还有一个Entity。
Entity——
由来:User相当于一个数据模型,它需要一个Model,或者说Entity用来封装数据,让它能在各层之间流转上窜下蹦。独立性:Entity不知道外面有层次,它是独立于其他三层的。三层都知道Entity的存在,Entity不知道三层的存在。
引用:从程序集引用来说,Entity不引用其他程序集。三层程序集都要引用Entity
三层的职责机制
1.UI请求给BLL,BLL自己可以搞定,传给UI
2.UI 请求 ,搜集数据,传BLL,一看需要数据,转给DAL,加工后给BLL,BLL知道之后给UI
PS:UI引用BLL,BLL引用DAL ,UI间接引用DAL。忌讳 互相引用
程序集Assembly
DAL BLL UI 分别在不同的程序集中,这样具有扩展性。
具体应用
——原则
DAL---只提供 基本数据访问,不包含任何逻辑业务处理 UI----只负责显示和采集用户操作,不包含任何业务处理
BLL——最重要。负责处理业务逻辑。获取,UI操作指令,决定执行业务逻辑,在需要访问数据源后,给DAL,处理完,返回必要数据给UI。
小结:
通过分层来实现各司其事,这增强了程序扩展性。每实现一个功能,要用三层来合作实现,和之前把所有的代码都写到一起相比,这是一个转变。关于三层的代码实践请期待下一篇~
博客有待改进之处,期待您的意见和建议。
相关文章推荐
- Excel2016中设置X轴的刻度
- VB.Net文本框提示及一次性清空
- 15电气郄慧敏vb作业715个数的大小排序
- 15电气郄慧敏vb作业6比较两个数的大小
- Arch的VBox安装笔记
- 15电气 齐振昊 实验名称:在VB中三个数的排序
- 15电气 齐振昊 实验名称:在VB中对于随机数ab的比较大小
- 15电气郄慧敏vb作业5比较两个数的大小
- vb排序
- 15电气郄慧敏vb作业4VB中数字的交换
- vb排序
- 15电气郄慧敏vb作业3红糖水白糖水的交换
- [提权禁区]利用vbs添加管理员用户
- VB-交换
- VB-计时器程序设计2
- VB之15个数字的排序
- VB-计时器程序设计1
- 【VB.NET视频总结(三)】
- JVAVBigInteger类的使用
- VB中数字的交换