读书人

Java开发者急需注意的十条法则

发布时间: 2012-12-19 14:13:14 作者: rapoo

Java开发者需要注意的十条法则

原文:http://developer.51cto.com/art/200904/118322.htm

1.给你的代码加注解—每个人都知道这一点,但是总会有人忘记遵守。你有多少次“忘记”加注解了?的却不加文字注解有助于程序的功能性。但是一次又一你返回两星期前写的代码,结果你想不起来那是什么了!如果这个未注解的代码确实是你写的那你就是幸运的了。因为在那些代码中可以唤起你的记忆。不幸的是,大多数的时候代码是别人写的,而且他已将离开了公司!有句谚语是这样说的“自己的事情自己做”。所以为了别人或是我们自己考虑,在你的代码上加上注解吧。

2.别把事情复杂化— 我以前就是这么做的而其我相信你们也一样。开发者喜欢把简单的问题用很复杂的方法来解决。我们介绍EJBs到有五个用户的应用程序中。我们完成一个框架结构那是应用程序所不需要的。我们添加属性文件,目标源方案到本不需要这些东西的应用程序中。为什么我们要这样做呢?一些人是不知道如何去做,而一些人故意这么做是想去学习新的东西,想让我们感兴趣。对于那些不知道如何去做的人,我建议去向经验丰富的编程人员去询问。而对于那些喜欢把应用程序设计搞复杂的人,我的建议还是要更专业一些来处理问题。

3.记住—“少即是多”不见得是件好事。—代码效率是件非常好的事情,但是很多情况下少写几行代码并不能提高代码工作的效率。举个简单的例子:

最好的像避免CPU浪费的方法是去引用像这样的包装方法:

?

?

public class BadCode { public static final int DEBUG_MODE = 1;

?

public static final int PRODUCTION_MODE = 2;

public static void calculationWithPrint(int logMode){

double someValue = 0D;

for (int i = 0; i < 10000; i++) {

someValue = someValue + i;

myPrintMethod(logMode, someValue);

}

}

public static void myPrintMethod(int logMode, double value) {

if (logMode > BadCode.DEBUG_MODE) { return; }

System.out.println(value);

}

public static void main(String [] n) {

BadCode.calculationWithPrint(BadCode.PRODUCTION_MODE);

}

}

String concatenation is another CPU waster. Consider example below:

public static void concatenateStrings(String startingString) {

for (int i = 0; i < 20; i++) {

startingString = startingString + startingString;

}

}

public static void concatenateStringsUsingStringBuffer(

String startingString) {

StringBuffer sb = new StringBuffer();

sb.append(startingString);

for (int i = 0; i < 20; i++) {

sb.append(sb.toString());}}

?

?

在以下的数据中能看到该方法用StringBuffer花了.01秒去执行而同时用字符串串联的方法用了.08秒去执行。选择是很明显的。

7.关注GUI—无论听起来有多么荒谬,我要一再指出的是GUI的功能和运行情况和商业客户是同等重要的。GUI是一个成功的应用程序的重要组成部分。IT管理总是忽略GUI的重要性。许多机构省钱的方式是不雇用设计“user-friendly”应用程序有经验的网络设计师。Java开发者不得不依赖于他们自己的HTML技术和在此领域的那点局限性知识。我见过太多的应用程序是 “computer friendly”而不是 “ user friendly”。很少看到有开发者在软件开发和GUI开发两者都同样精通的。如果你是那个不幸的被指定去创建一个应用程序界面的Java开发者,你可以遵循这三个规则:

1. 不要重新发明车轮。寻找现有的有类似接口需求的应用程序。

2. 先创建个雏形。这是非常重要的步骤。客户想要看到他们能得到些什么。这样对你来说是有意的,是因为在你全力以赴工作之前可以得到客户的要求并且可以创建一个应用程序界面,这样可以让客户冷静下来。

3. 带上用户的帽子。换句话说,就是需要从用户的角度来检查应用程序的需求。例如,一个总结性的screen可以用标页的方式来创建。作为一个软件开发人员,允许从应用程序中忽略标记很让人恼火,因为它确实有一点复杂。但是,从客户的角度来看,可能不是很好的解决方案,因为总结的结果可以容纳数百个数据行。

8. 时刻准备文件需求— 每一商业需求都要记录在案。这个在一些童话故事里是正确的,但是远离了现实世界。无论你的开发有多么的时间紧迫,无论你的最后期限要求的多么严格,你必须确保每个商业需求都是被记录在案的。

9.单元测试。单元测试,单元测试—我就不详细的说明什么是做你的代码单元测试的最好方法。我只是想说的是必须要这么做。这是编程中最基本的规则。这是一个首先就不能被忽视的规则。如果你的下一个开发人员可以创建并为你的代码执行测试计划,那是在是太棒了。但是如果不可能,那你必须自己来做。建立一个单元测试计划,遵循以下这些基本规则:

1. 在写代码之前为分类测试写一个单元测试计划。

2. 在单元测试中获取代码注解。

3. 执行一个“有趣的”功能测试所有的公开的方法(也就是说,没有获得者和设置者,除非他们用一些独特方法来进行他们的获取和设置。)

10. 记住—质量,不是数量—不要呆得太晚(如果你不需要这么做)。我理解有时候产品问题,紧迫的最后期限和不希望发生的一些事情会阻止我们不能按时离开工作岗位。但是,经理们是不会感谢和报答他们的员工因为他们总是呆得时间太长,他们感谢员工是因为他们做了高质量的工作。如果你遵循以上所提到的这些规则,你将会发现你产生很少的bug,获得更多的可维护的代码。这是你工作中最重要的部分。

读书人网 >编程

热点推荐