加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

三层结构的问题一

发布时间:2020-12-17 01:19:52 所属栏目:安全 来源:网络整理
导读:三层结构的程序不是说把项目分成DAL,BLL,WebUI三个模块就叫三层了,下面几个问题在你的项目里面: 1. UILayer里面只有少量(或者没有)的SQL语句或者存储过程调用,并且这些语句保证不会修改数据? 2. 如果把UILayer拿掉,你的项目还能在Interface/API的层次上提供

三层结构的程序不是说把项目分成DAL,BLL,WebUI三个模块就叫三层了,下面几个问题在你的项目里面:   1. UILayer里面只有少量(或者没有)的SQL语句或者存储过程调用,并且这些语句保证不会修改数据?   2. 如果把UILayer拿掉,你的项目还能在Interface/API的层次上提供所有功能吗?   3. 你的DAL可以移植到其他类似环境的项目吗?   4. 三个模块,可以分别运行于不同的服务器吗?   如果不是所有答案都为YES,那么你的项目还不能算是严格意义上的三层程序. 三层程序有一些需要约定遵守的规则:   1. 最关键的,UI层只能作为一个外壳,不能包含任何BizLogic的处理过程   2. 设计时应该从BLL出发,而不是UI出发. BLL层在API上应该实现所有BizLogic,以面向对象的方式   3. 不管数据层是一个简单的SqlHelper也好,还是带有Mapping过的Classes也好,应该在一定的抽象程度上做到系统无关   4. 不管使用COM+(Enterprise Service),还是Remoting,还是WebService之类的远程对象技术,不管部署的时候是不是真的分别部署到不同的服务器上,最起码在设计的时候要做这样的考虑,更远的,还得考虑多台服务器通过负载均衡作集群   所以考虑一个项目是不是应该应用三层/多层设计时,先得考虑下是不是真的需要? 实际上大部分程序就开个WebApplication就足够了,完全没必要作的这么复杂. 而多层结构,是用于解决真正复杂的项目需求的

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读