.net三层架构详解

1.三层架构的优势:

  • 适应变化,利于维护:项目往往随市场的变化而发生改变,三层架构通过将各功能模块分离,提高了项目的可维护性和代码的重用性。
  • 适合协作开发。
  • 组六趋势,越来越多的企业在开发项目使用三层架构作为基础架构。三层架构在将来会有更大的市场。

2.三层架构包括哪些层?:

  • 数据访问层(Database access layer),业务逻辑层(business logical layer),表示层(User Interface)
  • 数据访问层:封装了所有与数据库的加互操作。既对数据库的增,删,查,改操作,不做业务逻辑的判断。
  • 过去使用ADO.NET连接数据库需要编写固定格式的代码,比如打开数据库连接,关闭数据库连接等。在面向对象的课程中,我们在每一个数据库访问层代码中编写重复的ADO.NET代码。那么大家有没有想到重用这些代码呢?这里我们使用了一个封装了ADO.NET方法的类—SqlHeloer类,用来提高数据访问代码的可重用性。
  • 针对模型层宗的每一个可,数据访问层都有一个对应的数据访问类。比如针对User实体类,有一个对应的UserSevice类,专门处理有关User表的数据。

3.三层深入理解:

  • 1.复杂项目不能把SQL语句直接卸载界面里,不模块化,难以维护,应该采用三层结构。先慢慢吸收,然后理解。Wed开发中的三层机构也是同样的结构。还有更复杂的多层架构。
  • 2.三层的组成
  • 界面层UI
  • 数据访问层DAL
  • 业务逻辑层BLL
  • 对数据进行操作的代码写在DAL中,一般SQL语句,DAL只有对数据的操作,不能有逻辑判断。
  • 3.三层架构图

4.三层实战

  • 1.命名规则:DAL层,一般使用表明+Service,例如:EmpService。
  • Bll层,一般表名+BLL,例如Emp表在BLL层就命名为EmpBLL
  • 但是这里注意一点:BLL不是简单的对DAL层的转发,还包含业务逻辑。例如:“未经审核的数据不能删除”这样的业务逻辑就放在BLL中
  • 2.三层的重点
  • UI层和BLL打交道,不用处理SQL语句;开发更方便,更不容易出错。一般,UI层中没有复杂的代码,解耦合,容以改变UI层技术,如果从Winform改到SAP.NET只需要修改UI就行了,如果MySQL改成Oracle,只需要修改DAL即可。
  • Model是在三层中传递数据的,而且Model不属于三层中的任意一层。
  • 那么各层之间使用Model(实体类的作用是什么呢?)
  • 表示层中使用实体类
  • 1.将解析实体对象封装的数据展示给用户。
  • 2.将用户请求的数据封装到实体对象中。
  • 业务逻辑层使用实体类
  • 1.将接受到的实体对象传递到下一层。
  • 2.根据用户请求对实体对象中的数据进行处理。
  • 在数据访问层中使用实体类
  • 1.将接受到的实体对象传递到下一层。
  • 2.根据用户请求对实体对象中的数据进行处理。
  • 在数据访问层中使用实体类
  • 1.将数据库中的数据封装到实体对象中或将多个实体对象封装成集合。
  • 2.将实体对象中的数据保存到数据库中。

5.三层的效率

  • 三层一般会比不分层慢,但是为了分工明确,这样的少量的性能下降时可以接受的,很多时候效率不是唯一追求因素。

注释:这里转载至别人的博客如有侵权请联系:原链接添加链接描述

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值