Chinaunix首页 | 论坛 | 博客
  • 博客访问: 29334373
  • 博文数量: 2065
  • 博客积分: 10377
  • 博客等级: 上将
  • 技术积分: 21525
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 17:50
文章分类

全部博文(2065)

文章存档

2012年(2)

2011年(19)

2010年(1160)

2009年(969)

2008年(153)

分类: Java

2009-12-10 09:36:32

一个有经验的Java程序人员往往会把一些常用的语句定义成一种工具,然后把其放在自己的工具库中。不知道大家有没有这么操作的习惯,反正笔者的工 具库中,已经有上百个工具了。凭借这这些工具,给笔者开发Java应用程序提供了很大的方便。即可以不用担心重名导致的冲突,而且还可以简化输入,一举两 得。为此笔者在这里大力推荐,Java程序员要从现在开始建立自己的工具库,并在以后工作中不断的完善它。

  一、 工具库的一个简单例子。

  记得笔者刚开始建立工具库的时候,是从一个输出语句开始的。有时候Java程序开发人员需要在程序代码中加入输出语句。如出于调试的需要临时增 加输出语句,用来判断运算结果的准确性;如有时为了加强同用户的互动性,在用户输入参数之前需要向屏幕中输出一些提示性的语句等等。而要实现这个目的的 话,在JAVA程序中是通过print方法或者println方法实现的。两者的差异主要在于是否要换行。但是在Java程序中调用这两个方法的话,前面 要加一大堆的前缀。如调用这个两个方法,要把下面的代码写全,即为System.out.print();以及 System.out.println()。显然为了输出一串信息,要收入这么长的代码,在输入的时候工作量比较大。而且需要注意的是,这里的 System单词中S必须大写。对于一些刚接触Java程序的新手来说,刚开始往往把S写成了小写的s,结果就出现了语法错误。特别是在一个JAVA代码 中,需要频繁的用到这个方法。为此使用起来比较不方便。那么有没有更加简单的方法呢?其实Java程序开发人员完全可以把这些方法加入到自己的工具库中, 来简化输入的方法。而且还不用担心会因为重名而导致的冲突。如大家可以安装如下的方式来将这个方法定义到自己的工具库中。

package com.abc.tool;
public class PR{
 public static void pln(String s){
   System.out.println(s);
 }
 pulic static void p(String s){
   System.out.print(s);
 }
}

  如此定义之后,下次在需要向屏幕中输出内容的时候,只需要按如下的方法来调用即可,如PR.pln()或者PR.p()即可。两者的差异就在于 是否需要换行打印。这比直接调用原先的输出命令要简单的多。这只是一个最简单的例子。其实Java程序员还可以丰富这个屏幕输出命令。如可以在输出提示信 息之前,加入“******”类似的移行内容,以表示强调或者格式化输出的内容。这些都可以在这个工具中定义好。如此的话,下次需要实现这个需求的时候, 可以直接拿来使用。而不需要再写多个代码来实现。

  二、 定义工具库要选择一个好的工具库名字。

  像上面这样定义Java程序人员自己工具库的时候,需要取一个好的工具库名字。其实取这个工具库名字的时候,可能比取人的名字更要有讲究。为什 么这么说呢?因为当你出名的时候,这个工具库可能不仅仅是你自己在用,有可能项目团队中别的程序开发人员也会使用你的工具库。特别是当你作为项目团队负责 人的时候,这种情况就很常见了。你必须无私的把这个工具库共享出来,以提高程序的开发效率。同时也可以增加你的威信。这对于你作项目负责人的这个角色很有 帮助。所以这个工具库名字命名的时候,就很有讲究。具体来说,最好能够做到如下几点。

  首先,最好Java程序开发人员在制作这个工具库之前,能先花点小钱去申请一个域名。这主要是为了保证你工具库库名字的唯一性。因为有时候在开 发的时候,你的工具库可能别人在使用;而你也可能会使用别人开发的工具库。但是,很有可能在这个过程中会因为重名而导致冲突。而花点小钱去申请一个域名, 然后利用这个域名来对这个工具库进行命名,显然能够保证工具库名字的唯一。如上面这个例子中,笔者采用的就是域名(反过来写)+tool作为工具库的名 字。由于域名是唯一的,所以后面加上一个tool也是唯一的。如果大家都能够遵守这个规则的话,就不会导致命名的冲突。而且,这个命名方法还可以顺便用来 宣传自己。如果大家觉得你的工具包不错,就会根据工具包的名字,找到你的网站。这就好像是在发邮件的时候采用签名一样,是一种宣传自己的很好工具。

  其次,需要注意一个书写的规范。在定义工具包名前面有一个关键字package,注意通常情况下这个关键字要小写,这是一个强制性的规定。另 外,工具包的名字也最好小写。虽然采用大写的名字,也不违反语法约束,可以正常编译。但是最好还是采用小写。因为这个就好像是一个行业的规范。虽然没有法 律性的约束力,而主要是一种道德上的约束力。Java程序人员要融入这个大圈子,这些行业性的约束也要遵守。不然的话,人家会排斥你,甚至会把你当作菜鸟 看。为此笔者再强调一次,在定义工具名字的时候,包括关键字、域名、具体名字,都必须要小写。

  第三,在后续的工作中,Java程序开发人员可以不断的完善这个工具库。如以后Java程序人员开发了一个从特定服务器中获取系统时间的工具。 其实,这个工具很有用。如在ERP系统中,要确保个个客户端的时间与服务器的时间同步,否则的话,一些客户端上做的一些计划性任务可能无法正常执行。为 此,就需要客户端使用的是服务器端上的系统时间,而不是客户端上的系统时间。因为除非客户端上的系统时间也是跟某台时间服务器同步,否则的话无法保证各个 客户端的时间一直。而现在利用这个工具,去获取ERP服务器端的系统时间,就可以保证各个客户端时间的一致性。即使ERP服务器端的时间有错误,也不影响 后续的作业。因为各个客户端的时间跟服务器是同步的。既然这个工具这么重要,而且需要频繁的使用,那么当然有必要将其加入到自己的工具库中了。此 时,Java程序开发人员只需要在源代码文件的开头,加入package com.abc.tool即可。在编译的时候,解释其看到这个包名的定义,如果系统中已经有这个工具包,就会直接将这个工具加入到现有的工具包中。如果没 有这个工具包的话,则会新建一个工具包。所以Java程序开发人员不需要一次性建立好工具包,而是可以在后续的工作中日益的完善。

  三、 取一个简单而容易理解的方法名。

  如果按照上面的方法建立了一个工具包之后,如果Java程序员需要调用这个工具包中的方法,该怎么进行呢?其实跟调用其它的系统方法一样。首 先,需要在源代码的开头位置,使用import关键字将这个工具包“导入”到当前的文件中。然后可以采用类名+方法名的方式来进行饮用。如上面这个例子, 程序开发人员就可以直接使用PR.P来调用系统的print方法。而原先的话,则需要使用System.out.print(s)命令。显然采用自己定义 的工具包,可以在很大程度上简化输入。

  那么这个简化输入的效果到底有多大呢?这主要还是跟程序开发人员的命名习惯有关。如果程序开发人员能够取一个简单而容易理解的类名与方法名的 话,那么简化输入的效果就会很明显。如上面就采用几个简单的字母就可以完成。相反,如果取的名字比较长的话,那么命令输入起来仍然会很麻烦。其次就是这个 名字要容易理解。如果都是采用没有具体含义的字母,那么当工具包中类或者方法一多的话,可能就连程序开发人员自己都不知道这个工具的用途了。所以,在给类 或者方法命名的时候,要简单而且容易记忆,如可以使用原有方法的简写等等。另外需要注意的是,在建立自己工具包的时候,最好能够最一份详细的说明书。因为 以后你若做项目管理员的时候,可能你手下的成员需要用到你的工具包。此时这份说明书对他们来说就是最好的资料了。

  总之,自定义工具包是程序开发人员提高开发效率的一个很好的帮手,也是Java应用程序的特性之一。希望各位同行能够好好利用这个工具,来提高自己的能力。同时也要学会使用他人开发的工具包,这也是迅速提高自己开发能力的一个捷径。

阅读(931) | 评论(1) | 转发(0) |
0

上一篇:dtree控件

下一篇:dom4j操作XML代码DEMO篇

给主人留下些什么吧!~~

chinaunix网友2009-12-10 09:37:40

在以后的开发过程中一定要养成这样的好习惯!!!将相关的东西打包成自己的JAVA常用工具直接调用就行了!