Delphi中DLL封装业务逻辑的实现
(黑龙江八一农垦大学,黑龙江 大庆 163319)
摘 要:文章通过分析软件分层设计的优点,提出了对用户界面与业务逻辑进行分离,通过接口或抽象类实现两者间通信的方法,并对业务逻辑进行封装成动态链接库,以达到数据资源共享的目的,解决了应用逻辑重复使用问题,增加了系统的可复用性、可扩展性和健壮性。
关键词:分层设计;界面与业务逻辑分离;动态链接库
中图分类号:tp31 文献标识码:a 文章编号:1007—6921(2008)10—0142—02
三层结构是开发c/s或b/s系统经常采用的策略,这种分层方式将系统分为用户服务、业务服务和数据服务三部分,能够解决客户端与服务器结构维护成本问题、改善客户端与服务器结构延展性问题;解决应用逻辑重复使用的问题;还能够满足整合不同系统结构的需要与及时应用新技术的需要。但在实际应用中,如何更好的利用这种分层方式来解决实际项目中的问题,一直是程序设计者不断探索的方向。本文主要就dll封装业务逻辑的实现方法进行探讨。
1 界面与业务逻辑的分离
mis系统经常采用c/s结构来处理,在实际使用中用户界面与业务处理并没有进行详细的区分,这样编写出来的程序层次复杂,不仅阅读不够清晰,对于以后进行修改和维护也会遇到很大的困难,同时降低了代码的可复用性与可扩展性,所以在编写程序时需要将界面与业务逻辑进行分离,以此来降低数据的传输量、减少对客户端影响以及增强系统的安全性和健壮性,提高程序的可复用性和可扩展性。在用户层与业务层分离时,应尽量使客户端更“瘦”,将复杂的算法和业务逻辑规则放在中间层来处理,而数据层只用来保证提供给中间层所有的数据和操作能够正常进行。
例如:在进销存系统中对于货品的销售过程中供应商提供了对某种货品的保价处理,那么在销售时就不能对保价货品随意出售,需要对商品进行保价检查,如果是保价商品,则需经过特别处理或者不予销售,而对非保价商品就可以直接进行销售。下面是一段处理代码:
if no_bj then //no_bj变量用来确定该商品是否是保价商品
begin
{保价或不予销售代码}
{界面处理代码a}
end
else
begin
{销售代码}
{界面处理代码b}
end
上面这段代码将业务处理代码与界面处理代码放在一起,我们可以使用下面的代码对其进行
分离:
function sfbj_sp(no_bj:boolean):boolean;
begin
if no_bj then
begin
{保价或不予销售代码}
result:=true;
end
else
begin
{销售代码}
result:=false;
end;
end;
此段代码放在业务处理中,界面中有下面这段代码:
if sfbj(no_bj) then
begin
{界面处理代码a}
end
else
begin
{界面处理代码b}
end;
分析这两段代码的不同点,从中可以看出,后面这段代码使界面处理与业务处理分开来进行,从而使代码结构更加清晰、简洁;更重要的是,即使对界面和业务逻辑进行维护和修改,只需修改各自的处理代码就可以了,增加了独立性,同时也增加了程序的可复用性和可扩展性。
2 dll封装业务逻辑
动态链接库给应
Delphi中DLL封装业务逻辑的实现
本文2010-04-27 19:35:27发表“财经金融”栏目。
本文链接:https://www.wenmi123.com/article/161150.html
- 2025 年《建设工程项目管理》模考卷一.pdf
- 座谈会发言:体系抓好思政课教育做好贯彻落实下篇文章(02-19).docx
- 组织部机关支部书记2024年度抓基层党建工作述职报告(02-19).docx
- 在县委理论中心组暨2024年度民主生活会学习研讨会上的发言(02-19).docx
- 在2025年市人代会分组讨论会上的发言(02-19).docx
- 医院党委选人用人工作自查报告(02-19).docx
- 宣传部2024年民主生活会个人对照检查发言(02-19).docx
- 行政服务中心民族团结进步创建工作经验材料(02-19).docx
- 校长在中学2025春季开学典礼上的讲话:撷一抹祈望春风掬一程锦绣花开(02-19).docx
- 乡镇领导班子2024年民主生活会对照检查发言材料(五个带头+典型案例)(02-19).docx