三层的分工合作(150分)

  • 主题发起人 主题发起人 xang2001
  • 开始时间 开始时间
X

xang2001

Unregistered / Unconfirmed
GUEST, unregistred user!
客户层:用户界面
中间层:商业规则
数据层:数据的处理
问题1:客户层如何实现纯粹的用户界面,如何实现这样的新增删除之类事务,是不是要调用中间层的一个方法呢,用不用数据模板
问题2:中间层封装怎样的商业规则,怎样才算是一个规则,大量的数据运算算不算,如果算那
是不是应该在数据层实现商业规则,而不是在中间层
有请大佬讲解一下如何进行三层的开发,以及各层到底做什么,怎样做合理,速度更快,维护更
方便,150分送上,TKS!
 
问题1:
不管删除还是插入修改,都要用到客户端的提交技术,当然支持事务,容错处理也不错,
你可以参考李维的三本书。
问题2:
企业逻辑是实现公司某种数据的一定的计算方法还有其他,比如说工资的计算方法。
放在书层也可以实现,但是并不是所有的企业逻辑都可以用数值计算来实现,所已不能
全放在数据层实现。
 
强烈推荐你看看《windows DNA 可扩展设计》这一本书!!!!
你可以在其中找到答案的。
 
《windows DNA 可扩展设计》,看书名就不错,我找。
 
我对数据库分层的理解是:
① 性能和安全性是第一位的,别管分二层,三层,五层也好(把应用事物层又细分为三层),实
用便于维护以及提高开发效率是十分关键的.
② 椐我所知多一个应用程序服务器,不一定多占一台机子,可以考虑把应用程序服务器和数据
库服务器放在一起(分层并不一定要分机子),各层之间也不一定非得一层层调用,也可以由第一层直接到最后一层(限于特殊事物).
③ 应用程序服务器的作用:为客户端减肥,增加安全性组建,便于程序维护及提高开发效率,我
以为便于维护是最大的好处:各个组件可由不同的人开发,提高了开发效率,由于每个组件都处
理一定的事物,如果系统的那一块出了问题,替换相应的组件即可,不用从新编译程序,也为升
级系统提供了方便.
④ 关于具体事物划分问题,我也很头疼,如何把逻辑事物放在应用程序服务器上呢,参照了一
些书,我找到了几点,当然,由于没有实践经验,只能靠推测来判断(希望高手多多指点);
Ⅰ.我认为一般应用程序服务器适宜做一些返回值比较简单的应用:比如<<windows2000
编程实务与应用>>上曾有一例:只返回简单的查询结果和判断
Ⅱ.但对与一个复杂的进销存系统,或一个财务软件来说,一个窗体或页面要返回十几个
字段,把所有的事物都放在应用程序服务器上,谈何容易,<<windows DNA 扩展性设计>>曾有一
例:应用函数返回recordset,然后在客户段提取recordset的字段来显示我想这与delphi中的
数据模块上放置query,table建立明确的连接,再在相应的事件中写入限制条件,没有任何区别
. 如果假使改变一个字段的话,数据库,应用事物层都得改,相反,增加了维护负担 ,这样,软件
本身还有何灵活性?如果还有其他办法,那又该如何实现呢?
当然, 我在这些方面都非常浅薄,但愿这些思考能作根引线,欢迎各位高手批评,指点!
 
题目太大,是一个很难有统一的答案。
每人都有自己的做法。
 
windows dna 可扩展设计 是一本好书,不过是采用MTS/COM+架构,请问有没有介绍CORBA技术的好书
 
我在用BCB5做多层结构系统时,我在Server端加入了一个取得服务器IP地址的方法:GetServerIP它的参数是vIP:Variant *,IN方式,并在服务端实现了这个方法,
加入的代码如下:
*vIP="192.168.0.01";最后我注册成功。
可是在我开发客户端程序时,我用TSocketConnection
当取得它的服务时我是这样做的:
Variant* vip;
SocketConnection1->AppServer.GetServerIP(vip);
Edit1->Tex=vip;
可 是我在运行程序时出错,没有编译通过。
它说getserverIP不是variant的成员
getserverIP is not a memober of variant
请问?
我该如何去调用这个方法呢?
请各位大侠多多指教?
小生的QQ:65466700(24小时在线恭候)
MAIL: alongsun@sina.com
 
后退
顶部