|
|
|
请教各位大哥,小弟是一名菜鸟,想对公司下面的项目采取如下的分层方式,各位大哥,看看我的想法对不对
|
2006年10月01日 11:20
|
|
|
标签列表
|
|
请教各位大哥,小弟是一名菜鸟,想对公司下面的项目采取如下的分层方式,各位大哥,看看我的想法对不对
分层的方式
view:简单说的是就是表单/操作界面,当然在这里我们会把一个表单作为一个对象,不管你这个表单里面有什么控件,有多少控件,看作是一个对象。
control:这个地方我把他看着有2个用处:1、把要做的事情告诉控制层,让控制层判断你的请求对不对,请求正确去什么地方,错误怎么作 2、把作完的事情告诉他,他会告诉你下面去什么地方了。
dao:对数据操作的功能,这个我们将形成一个抽象(abstrace)作为一个模板,让下面具体的程序去继承这个模板(template),就不用再去写那么多几乎相同的代码了,因为对数据库操作有很多都是相同的,但只是sql不同 。
service:这个地方我们以前采用Facade模式,把所有的模块接口,写在这个地方,便于以后的维护和管理,但是这次Facade的用法还是不会丢弃。只是现在1、我想用service层把对数据库操作产生的结果进行 判断,比较,把最终计算的结果交给control层下面去做什么。2、把请求交给他判断,用户的请求是否正确。
|
|
|
|
|
|
Re: 请教各位大哥,小弟是一名菜鸟,想对公司下面的项目采取如下的分层方式,各位大哥,看看我的想法对不对
|
2006年10月03日 21:53
|
|
|
我现在想知道的就是:怎么建模 什么框架太多了,网上一大堆! 怎样从业务需求到建立模型??
|
|
|
|
|
|
Re: 请教各位大哥,小弟是一名菜鸟,想对公司下面的项目采取如下的分层方式,各位大哥,看看我的想法对不对
|
2006年10月06日 18:18
|
|
|
现在j2ee程序基本就是Domain,Persistence,Dao,Service等层,大体使用的是Facade模式,考虑效率有时再加上cache的辅助.
在开源社区的帮助下,Persistence,Dao,Service,Cache等层已经属于力气活了;有了各种框架,Persent层也很容易.实际上我们只需要对Domain层多化心思就可以了,其它的有许多代码和文章可以参照,为什么要重复发明轮子呢?当然,如果你发明了航空发动机就另当别论了.
怎么设计领域对象?这没有成法,可以参考的是<企业架构模式>和<领域驱动设计>两本书,还有Banq大哥的系列文章,当然最主要还是靠自己的努力发掘和不断重构,好的代码是重构出来的,希望一蹴而就是不切实际的想法.
|
|
|
|
|
|
Re: 请教各位大哥,小弟是一名菜鸟,想对公司下面的项目采取如下的分层方式,各位大哥,看看我的想法对不对
|
2006年10月06日 21:37
|
|
|
关于建模,我谈谈自己的想法,请大家批评指正: 1.分析业务流中主要对象,并归类整理成基本类. 2.在基本类基础上分析,看依靠基本的类的组合是否能形成用户需要的数据.否则回到上一步,是则进入下一步. 3.对基本类进行归类整理,这个过程从代码上来说就是让众多类实现某几个接口的问题.整理过程中要根据业务实质最小化基本类的数量. 4.根据业务需求制作Service各类,将基本对象从持久层提出后提供给上层使用.如果Service各类需要交互则再封装Business层(这个不是必要的). 5.使用框架将各个层连接起来,注意绝不允许跨层调用.
|
|
|
|