前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >.NET简谈分层架构思想(彻底分离每个层)——后补

.NET简谈分层架构思想(彻底分离每个层)——后补

作者头像
王清培
发布2022-03-14 13:58:05
2440
发布2022-03-14 13:58:05
举报
文章被收录于专栏:王清培的专栏

先给大家说声不好意思,在本人的".net简谈分层架构思想(彻底分离每个层)"文章中由于缺乏示例代码,所以给大家理解带来不便,小弟先赔礼;这篇文章我补充所有实现彻底分层的全部代码。

彻底分层的好处是能合理的分配各个人员的工作量,比如在我们某一个项目团队里面可能有的人偏向于UI设计开发,有的偏向于业务逻辑的编写,熟悉公司核心业务的人可以不需要管UI层和业务层的实现方式,只要实现数据访问层的代码,供上层调用;在本人的一个项目里面,为了能让所有的实现彻底分离开发是技术的要求也是业务的要求,项目大概是这样的:对所有的实现我并不知道存不存在,也不知道实现的项目或这程序集(dll)文件在哪里,所以我只需要公布一个实现接口供其他人去实现,我通过接口去调用相关的实现代码;上文中的反射代码是最关键的实现;请看我的项目结构图:

在我的项目里面就是完全按照分层架构(纵横分层)来实现的;有一个主要程序Hz.DataGather.Main,这个项目是所有的界面层也就是UI层,对UI层而言我不需要知道所有实现功能的对象在哪里我只需要通过接口去调用就可以了,请看图:

我UI层只需要使用BLL层接口去调用,将接口类型做为参数传递至BLL工厂,请看BLL层工厂代码图:

需要说明的是在:Assembly.LoadFrom()参数的名称是需要动态填充的,这里的名称需要进行文档化;这样就有效的实现层层分离,哪怕在开发阶段每一层的项目都可以从解决方案中移除,动态添加;以此类推DAL层也是如此;最后会到UI层来:

通过接口事件能准确的关联到实例的状态变化;希望这部分代码能帮助您理解;有问题请指出;

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2011-05-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档