开发最经常用的三层指的是那三层?里面分别包括什么样的类呢?请说详细点。谢谢

wjbmbl 2009-04-28 05:27:38
如题,谢谢大家了!我用了动软的代码生成器,但是看不懂,我想先弄明白原理在做三层,请有开发经验的大侠们指点迷津,大恩大德啊!
...全文
127 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsx521lxd 2009-04-29
  • 打赏
  • 举报
回复
反思
wjbmbl 2009-04-28
  • 打赏
  • 举报
回复
我去参考一下PETSHOP4!谢谢大家!
chowyi 2009-04-28
  • 打赏
  • 举报
回复
嗯 大家讲得都不错
动软的是简单的工厂模式
sushou2009 2009-04-28
  • 打赏
  • 举报
回复
表示层
业务逻辑层
数据访问层
给你举个小例子你就能明白了:
比如说你去饭店吃饭,你进去饭店后接待你的是服务员。这里的服务员就相当于三层结构中的表示层(usl),服务员给你菜谱,你点好菜后,服务员将你点的菜名送给厨师,厨师在这里就相当于业务逻辑层(BLL),然后厨师做菜。做好后再通过服务员传给你。那厨师做菜的原来是那里来的呢?他肯定不会自己去采购的,所以这里有用到了饭店的采购员,采购员就相当于数据库访问层(DAL)。服务员、厨师与采购员之间都有各自的分工。服务员只负责将顾客点的菜报给厨师和将厨师做的菜传给顾客,而不必去关心厨师是怎么样做出菜的。同样厨师只负责做出顾客喜欢的口味的菜,而不需要自己将菜传给客人,也不比去考虑原料的价格什么的。采购员呢?他只负责购买原料,不比去问厨师要做什么菜,更不需要知道顾客是什么口味的。
通过这个例子我们就可以发现:服务员也就是(USL)只是负责呈现给用户一个界面,和将用户的需求传递进去,至于这个需求是怎样实现的则不需要他管,他只需要调用厨师(BLL)就可以。厨师(BLL)就负责实现客户的需求,但是当他遇到需要的原料啊,数据之类的他也不必要去管,因为这些东西是交给采购员(DAL)去做的,所以呢BLL调用的就是DAL。要注意的是服务员(USL)不能直接去调用采购员(DAL)!
三层结构的主要作用就是分工明确、降低程序的耦合,增加可重用性!比如说一个客户让你开发了一个控制台应用程序,你用了双层结构实现了。但是过了一段时间呢,客户发现窗体应用程序比较漂亮让你给改成窗体的。这样的话的你的代码就必须全部重写了,现在WEB应用程序有相当流行了,客户又让你改成web的,你就不得不再次重写了..这样不但浪费时间还增加了自己的工作量。三层结构就不同了,你只需修改下表示层(usl)就可以全部搞定了,不但节省时间还大大减轻了自己的工作量!
至于三层结构的具体好处,等你自己编写几次之后就会慢慢发现了!
Sysping1 2009-04-28
  • 打赏
  • 举报
回复
1: 这是大家一直在追求的
2:典型设计这样
2.1 结构
UI->中间层->业务层->DAO层
->视图层
->实体层
2.2 功能
UI: 画面展示
中间层:业务定位、执行监控、执行调配等
业务层:具体业务实现
DAO:数据访问层ORM
视图层:画面显示格式定义
实体层:数据库关系表映射成实体类【 ORM】

2.3 每一层都可以是一个独立的项目。
2.4 UI仅与中间层联系。
2.5 中间层负责业务层、视图层、实体层项目的加载(或直接引用)、验证、初始化、缓冲、执行等处理。
2.6 这样后台(中间层后面部分项目)与UI无关,对于CS还是BS就一样的啦!

3: 采用ORM可以起到兼容数据库的效果。

4:希望能对你帮助
zzxap 2009-04-28
  • 打赏
  • 举报
回复
简单来说就是写好方法,放在一个class里面。
然后调用这个class 里面的方法,赋上参数。


535cheng110 2009-04-28
  • 打赏
  • 举报
回复
petshop
a385835287 2009-04-28
  • 打赏
  • 举报
回复
建议你直接下个三层代码直接研究
gui0605 2009-04-28
  • 打赏
  • 举报
回复
petshop4,看看这个
jinshengming 2009-04-28
  • 打赏
  • 举报
回复
业务逻辑层
数据访问层
表示层
lsx521lxd 2009-04-28
  • 打赏
  • 举报
回复
就是经常听到的MVC三层模式,V:视图层,C:处理层,M:数据层.
举个例子:V(就是你自己)C(就是你的朋友)M(就是你家的冰箱)
你现在想让你的朋友从你家的冰箱里取一个苹果给你(传达你的要求),你只需要
告诉你的朋友你要苹果就可以了,不必告诉他其他的(前提是他知道你家的冰箱在哪里),
你的朋友得到你的请求后,只需要到冰箱里给你去拿(处理你的请求),而冰箱可以给苹果保鲜.
wuyq11 2009-04-28
  • 打赏
  • 举报
回复
业务层
数据库
表示层,可看看petshop
参考
a1015154569 2009-04-28
  • 打赏
  • 举报
回复
第一层:界面层。
完成用户的交互操作。在界面代码中,严格控制,不可以出现任何SQL语句。所有的的数据的读写都通过对象来处理。

第二层:业务逻辑层。根据界面的请求,从数据库获取数据。不可以直接写表。必须通过存储过程处理。在查询时,不要在中间出现复杂的处理,比如JOIN等,多适用视图处理。

第三层:数据服务
完成数据的真正写操作。
ericzhangbo1982111 2009-04-28
  • 打赏
  • 举报
回复
建议你看看petshop这个

111,126

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧