三层架构(总结)

本文介绍了三层架构的概念,包括表示层UI、业务逻辑层BLL和数据访问层DAL,强调了各层的作用和在大型项目中的优势,如代码高内聚、低耦合,便于维护和升级。

1.什么是三层,有哪些三层?

  我理解的三层架构就是把整个业务或项目给分解成三个层:

(1)表示层 UI

(2)业务逻辑层 BLL

(3)数据访问层  DAL

  既有数据访问层,又有BLL层的时候,就需要三层的结构,当业务复杂到一定程度之后,数据访问脱离业务,脱离UI的时候,就需要三层架构;使用三层会在设计阶段有很明确完整的规划,并且会让软件开发者有着清晰的思路去开发项目;三层结构适合大中型项目的开发,分层设计更容易解决数据库升迁,升级维护所带来的的一系列的问题,可以使程序代码高内聚,低耦合。

 

2.每一层的作用:

  (1)UI 层:用户直接可以看到,使用;为用户提供各种功能的实现;为了数据库收集用户的各种信息;

                       不包含任何业务相关的逻辑处理。

先拿登录界面举个例子:

            //访问BLL需要它提供的服务

            string userName = txtUserName.Text.Trim();
            string password = txtPassword.Text; 
            Login.BLL.LoginManager mgr = new Login.BLL.LoginManager();
            Login.Model.UserInfo user = mgr.UserLogin(userName, password);

            MessageBox.Show("登录用户:" + user.UserName);

 

  (3)BLL层:是业务逻辑层,(因为现实层UI 不能直接和数据源DAL打交道)所以有了BLL业务逻辑层来作为一种媒介,

                         通过UI传递过来的操作命令,然后决定执行业务逻辑,

                         在需要访问的时候直接交给DAL数据访问层处理,然后再返回必要的数据给UI。

           public Login.Model.UserInfo UserLogin(string userName, string password)
           { 
            throw new NotImplementedException();

            Login.DAL.UserDAO uDao = new Login.DAL.UserDAO();

            Login.Model.UserInfo user = uDao.SelectUser(userName, password);

            if (user !=null )        //如果登录成功,就给该用户增加积分。
            {
                Login.DAL.ScoreDao sDAO = new Login.DAL.ScoreDao();
                sDAO.UpdateScore(userName, 10);      //增加10积分
            }
            else
            {
                throw new Exception("登录失败");
            }

(2)DAL层:(1)从数据源加载数据(Select)

                         (2)向数据源写入数据(Insert / Update)

                         (3)从数据源删除数据(Delete)

              DAL层仅仅只是提供基本的数据访问,不包含任何业务相关的逻辑处理。

      三层架构也可以理解成是“机房重构”的前奏。三层架构降低了系统代码的耦合,分工明确,提高了效率和代码的准确性。

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值