选择显示字体大小

创建良好设计的代码(基于delphi/vcl)

版权所有:nicrosoft
文章来源:东日制作室

我们平时都会写很多代码,为公司,为自己或者为朋友。有时,为了验证自己的一个想法,或学习某一个技术,会写一些试验性的代码。这样的代码的生命周期很短,基本不需要维护,随意写一下就可以。但是,当你真正要完成一个 project 的时候,代码设计就非常重要。因为这样的代码是需要长期维护,不断修改或增强的。设计凌乱的代码会使得维护非常困难或者根本不可能,修改这样的代码意味着产生更多的 bug 或者就是灾难。

既然,代码设计如此重要,我们就不能忽视它。那么,如何设计代码呢?面向对象编程技术可以帮助我们。在此,插一些题外话,很多程序员将面向对象编程(oop)技术和面向对象(oo)技术混淆。就我自己的认识来说,面向对象技术是一门博大精深的学问,它是一种方法论或者说是一种世界观,而面向对象编程技术只是提供一种在编码时运用面向对象的一种方法。

以下是笔者看了一些相关的书籍和在日常实践中得出的一些体会,希望和大家分享一下。

首先,让界面代码和功能代码分离。需要牢记的一个原则,就是不要将复杂的功能逻辑写在界面代码中。界面窗体的实现文件只用来存放界面代码,而将复杂的功能代码独立出来。举个简单的例子,假设要从某处获得一个字符串列表,然后显示于 tlistbox 中,这样的代码就是值得尊敬的:

objectxxx := tobjectxxx.create;
listbox1.items := objectxxx.getstringlist;
objectxxx.free;

这样就把获得该字符串列表的复杂逻辑封装于 tobjectxxx 类的实现代码中,并且可以将这个类的定义及实现独立的放在一个 .pas 文件中,以便于维护。将界面代码和功能代码分离还有另外一个好处,一个功能的实现代码可能会被多个界面模块调用,如果将功能实现代码在需要的地方就复制一份,那么你就会有多个相同的模块需要维护,如果需要修改的话,呵呵,几乎不可能保证你不会出错。

其次,让每个模块的逻辑尽可能简单。经验告诉我们,对于过于复杂的逻辑,会给人的理解带来困难。所以,尽可能的让每个模块的代码简单,一般不要超过 25行代码。当你发现你写的逻辑正在趋于复杂,那么这个时候是你寻找对象的时机了,看看能不能将其中的一些逻辑独立出来。

最后,就是要注意变量的命名。经常查看 vcl 源代码,你会发现,vcl类中私有成员变量都以“f”打头,类名都以“t”打头等等这样的规则。这样有什么好处?当别人查看这样的代码时,一旦看到“f”开头的,就立刻可以知道它是该类的私有成员,便于代码的维护。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons