pxq
7642
|
2004/8/8 23:31:28 |
用DELPHI的DBExpress实现N层应用系统该怎样做?如果有现成的简单程序发一份给我,PXQ_MAIL@163.COM。谢谢!!! |
aleyn
7421
|
2004/7/31 12:34:23 |
to shaoyy : 请大侠留下你的QQ号码好吗,或者加入QQ组:1005454,我们在组里详细交流一下. (认证时请写:shaoyy,好认我知道是你). |
liuxiangsoft
7293
|
2004/7/29 12:19:11 |
to : alyen.wu: 自己看了你的代碼﹐也在寫﹐也在學。總感覺有些不明白﹗可能是專業語太濃﹗還請您再次幫我看看﹕ http://www.delphibbs.com/delphibbs/dispq.asp?lid=2736594 |
shaoyy
7277
|
2004/7/29 10:10:34 |
to aleyn: 我上面的发言并非针对本作品,所以算不上是建议:) 我仔细看了一下这个程序的代码,架构清晰,设计也有独到之处,应该对从事Delphi三层开发的人有很好的引导作用,并且代码规范整洁,不错,看得出来你还是花费了一些的心思,感谢你的无私奉献! 最后提两点建议: 1.这个程序中虽然避免了客户端直接对表的操作,并且也实现了业务规则的动态管理,但是可能是程序太小,我在这个程序中还看不出"软件复用"思想的体现,中间层的功能好像都是基于数据库的操作,没有体现出清晰的"业务对象",个人愚见。 2.hmOleVariant单元没有提供源码,如果方便最好能开放出来,这样便于大家理解这个程序的代码。 |
aleyn
7216
|
2004/7/28 8:01:10 |
to shaoyy,nb2008: 謝謝你們的意見,如果有空,也請看看這個三層程序的業務層,好嗎, 實際上,我已經把所謂的中間層規劃成幾個層,詳細架構請看看這個文檔。 http://www.e-midas.cn/software/stru.pdf |
nb2008
7208
|
2004/7/27 18:12:56 |
严重同意 shaoyy
很多所谓的三层,只是把程序在物理上分成了三部分。里面的逻辑未分层。即shaoyy所说的,业务层,逻辑层等。 我个人认为,从中间服务器取出记录集,修改后提交,并不算真正意义上的三层。因为你必须明白你所取出的记录集的每个字段的含义,该取怎么样一个记录集。。。。所涉及的数据库定义,业务数据关连等知识过于详细,这是客户端程序员不应该详细了解的 |
aguestxp
7206
|
2004/7/27 17:33:06 |
to aleyn 我刚成功运行这个DEMO, 觉得很有兴趣,能大概写一些你编写的过程和这个DEMO的基本逻辑给我们这些初学者共享吗? 在此先想了 |
aleyn
7157
|
2004/7/26 10:39:59 |
把搜索指向那個目錄就可以了。 |
xw_xw
7156
|
2004/7/26 10:09:50 |
按作者文中说明调试安装本程序出现如下错误: 编译 dmDefault.dpr时出错: File not found: 'hmOleDataset.dcu' 编译 swServer2.dpr时出错: File not found: 'hmOlevariant.dcu' 编译 demo1.dpr时出错: File not found: 'hmClientDataset.dcu' 咋办啊!!!??????
|
weny
7096
|
2004/7/24 8:03:22 |
dfw,大富翁吗?我是不是太菜了,呵呵~~~~~~~~~ |
dengxh10
7088
|
2004/7/23 17:12:36 |
我想请教各位高手,三层结构系统能直接使用于Internet网络中吗?具体是使用COM还是MTS还是COM+,各方面的差异有哪些?希望高手发表议论。 |
shaoyy
7078
|
2004/7/23 13:37:38 |
可能是市面上这些书籍的原因,Delphi对多层应用的开发很容易产生误导,过分强调"快速开发",快是快,但是后面的问题也很多,而且很多人做出来的三层系统实在称不是"三层系统",把所有的数据集由原来的DataModule移到Remote上,然后在Clinet放一个ClientDataset就是三层了吗?这根本没有使用到(甚至是违背了)多层系统的精髓,会什么要采用多层系统?其实就是为了解决原来系统里的一系列问题:逻辑和界面分离、数据存储和业务处理分离、软件重用、框架和模式等等,可是现在有多少用Delphi的人真正在关注这个东西? 参照TCP/IP的分层原理,我们也可以将软件分为:核心层、通用层、行业层、定制层,每一层都隐藏本层的实现细节并提供一个新的开发层面,如此才能实现真正的软件复用,可是有多少做到了? |
jhwh
7077
|
2004/7/23 13:04:40 |
好啊,我的qq是359062004,现在一般下午晚上在。 |
aleyn
7064
|
2004/7/23 8:06:30 |
to jhwh 如果不介意的話,留下你的QQ號好嗎,我邀請你加進去。 |
jhwh
7061
|
2004/7/23 3:04:07 |
我很久没上dfw了,注册后,上的时间少,即使上dfw,说话的时候也少。为什么?有三方面的原因:第一,我觉得很多问题是比较呆板的,可以在delphi的帮助,或者在以往的问答中找到答案,这种情况下,我不问,也没答,因为说这个话的dfw很多了,不缺我一个说话。如果是涉及界面,这个东西很繁琐,我宁愿下控件,而不是自己写。我觉得精力不应该放在这上面来,毕竟有这么多好的控件。 第二,使用delphi的dfw,大多数是来写数据库软件,那么能接触到 windows 内核对象很少,这个时候,vcl已经没有为我们封装什么了,控件也很难找到,这时还得在 msdn 中或者专门讲 windows 的书中去找。这些问题既然遇上少,问的也少,我也没有回答。 第三,我表达能力不行,就懒于回答了,成了恶性循环。同样的,这种循环开拓到了各个论坛,都是看贴,很少回。现在又多了一个很具体的问题:找钱吃饭。而且我用的工具很杂,不是只用delphi。代码是公司的,不能私自放上来。为了吃饭,我也没时间来写例子,来解答。我想,要是我能很好的养活自己,我专门的来开源。 对于发代码的兄弟们,我真的是很敬重的。这些是没有报酬的,靠的是一如既往的热情和乐于助人的心。我前面发的贴,只是表达我对软件开发的认识,想和大家一起探讨。我去楼主说的1005454这个群,结果人满了,没办法,想进行讨论也不成了。如果有人退出了,请通知我一声,我也加入群。 如果有什么冒犯之处,请谅解。祝 夏安。 2004-7-23 |
liuxiangsoft
7042
|
2004/7/22 9:22:08 |
對不起﹐jhwh﹕我剛才看到您的發言﹐是過火了﹐不過﹐alyen即把程序放在這里給我們學習﹐我們應該接受。大家都有這個熱情就是好的了。說實話﹐ alyen給我幫助很大﹐所以我很反感這樣說他的人﹗
sorry
2004-7-22 |
liuxiangsoft
7040
|
2004/7/22 9:11:41 |
to JHWH:
不知你在這里瞎叫什么﹖在我見識的dfw中﹐alyen和沙隆巴斯是最高手了。東蘭是基于web的高手﹐劉麻子是全面的高手。就是從未聽過你的名字﹐不過從你的這番話里就看出你的品質﹐也可知道你的水平。
消化不了別人的東西﹐不要在這里發牢騷﹐要發回家找你媽發為什么生你那么條﹗ 要是有個交待﹐也寫出你的東西給大家看看﹗我們一起期待﹗就要看看你的水平比alyen高出多少﹐我學三層alyen和沙隆巴斯給我很多幫助﹐就是沒有看到你發個有用的貼子﹐講個有用的話﹐全只會放庇 |
codecn
7037
|
2004/7/22 9:01:47 |
呵呵,看来是楼主把标题名字取错了,把超强两字去掉就不会有这么多事了。 |
aleyn
7034
|
2004/7/22 8:16:52 |
to jhwh,謝謝你的批判,我會虙心接受的。 其實,我的這個三層程序中的客戶端Demo1.prj,只是隨便寫一下,並沒有完全發揮中間層swServer2.prj的長處,還有一些我認為功能獨到的地方沒有發揮出來。 說到底,我的這個程序在高手面前,也不過是班門弄斧罷了,大家見笑了。 我原意想放這裡,只是讓三層的初學者和三層進階者有個比較和學習三層的機會,沒有什麼想法。因此引起大家的爭論,我置歉。 aleyn. 07-22 早上。 |
jhwh
7033
|
2004/7/22 2:32:16 |
这个代码怎么也说不上超强。看着定义了规则,但是这个规则对象(姑且称为对象,只是用了class的形式,但是代码写作方式还是过程性的。如果想批判这个说法,或者骂我,请先看看policy的解决方式)粒度太大,完全耦合在了一起,这种方式写的代码根本没办法重用的。当然,客户端可以一直使用10001这种调用方式,但是服务器的东西得大量的修改,这种方式不能算重用的。 interface和com,除了实现,没本质的差别,其实就是一个符合计算机逻辑的oo。而midas就是一个可以透明传输的TDataSet,定义一个interface,一个com,只是为了和计算机通信,让计算机能明白它要做的事情,这些东西和我们的企业逻辑毫无关系,企业逻辑绝对不要有任何一点代码与这些东西关联。如果不看清楚这一点,写出来的东西就是我上面说的,没办法重用的。 我说这些话,只是把我的认识说出来而已,并不想说服别人。再不济,也算是一种不同的声音罢,不希望为了这个而吵起来。 |