很想和大家探讨一下:

cxy_ll 自由顾问 架构师  2001-08-07 08:36:07

我以前是用VB,Delphi,PB做前台开发的,作了几个项目后我发现前台开发工具各有千秋,如果什么都用前台来实现程序是很冗长的,而且不利于二次开发,或者说是软件再工程。再者,对于基于数据库的应用开发,数据库定义好后一般是不会更改的。所以我认为将商业逻辑放在数据库系统中,比如约束、规则、触发器、存储过程,通过他们来实现完整的商业逻辑定义,这样无论开发者用何种开发工具都可以实现需要的功能,而前台工具就用来处理用户输入。而且数据操作放在了高性能的服务器上,可大大提高处理效率。这也许就是C/S的优点吧。
当然了,我们也可以把大部分商业逻辑放在一个专门的部分,这样就使各部分分工明确,极大的提高了系统的可移植性、可维护性(但效率是否高我还没有体会到)、安全性(三道防线)、分布式应用,这或许就是人们所说的三层体系吧!
以上是我随笔之谈,大家若有什么体会还请赐教!
...全文
78 2 点赞 打赏 收藏 举报
写回复
2 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
FireKylin 2001-08-08
使用存储过程、触发器是可以解决前台程序冗长的问题,但是这样做可移植性不好。

试想如果由于某种需要换成另外的数据库,那么存储过程、触发器的改动量就相当大了。

目前一个好的数据库设计要做到与数据库系统无关、较少的冗余,较好的可扩展性。

采用三层体系是比较好的方法,当然这需要系统设计人员来完成一个好的架构。

  • 打赏
  • 举报
回复
AutoAsm 2001-08-07
我觉得把商业逻辑做成单独的部分比较合理。这样,用户UI,商业逻辑和数据存储相互独立,形成松偶合的结构。在三层体系之前,商业逻辑要么做到客户端,要么做到靠近数据存储,各有好处,也各有坏处。
  • 打赏
  • 举报
回复
相关推荐
发帖
研发管理
创建于2007-08-27

1221

社区成员

软件工程/管理 管理版
申请成为版主
帖子事件
创建了帖子
2001-08-07 08:36
社区公告
暂无公告