Java开发者需坚守的十大基本准则

一、为代码加注释。虽然每个人都知道这点,但有时却不自觉忘了履行,今天你“忘了”加注释了吗?虽然注释对程序的功能没什么“贡献”,但过一段时间,比如说两星期之后或者更长,回过头来看看自己的代码,说不定已经记不住它是干什么的了。如果这些代码是你个人的,那还算是走运了,不幸的是,当然了,大多数时候都是别人的不幸,很多时候大家都是在为公司写代码,写代码的人也许早已经离开了公司,但别忘了一句古话,有来有往嘛,为他人,也为我们自己,请为你的代码加上注释。

二、不要让事情复杂化。程序员有时候总是对简单问题想出复杂的解决方案,比如说,在只有五个用户的程序中引入EJB、对程序实现了并不需要的框架(framework),之类的还有属性文件、面向对象解决方案、多线程等等。为什么要这样做呢?也许我们并不知道是否这样会更好,但这样做也许可以学到一些新东西,或者让自己更感兴趣一些。如果是不知道为什么这样做,建议多请教经验丰富的程序员,如果是为了个人的目的,麻烦让自己更专业一点。

三、始终牢记——“少即是好(Less is more)并不总是对的”。代码效率虽然很重要,但在许多解决方案中,编写更少的代码并不能改善这些代码的效率,请看下面这个简单的例子:

if(newStatusCode.equals("SD") && (sellOffDate == null ||
todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null &&
todayDate.compareTo(lastUsedDate)>0)) ||
(newStatusCode.equals("OBS") && (OBSDate == null ||
todayDate.compareTo(OBSDate)<0))){
newStatusCode = "NYP";
}

能看明白if条件语句是干什么的吗?能想出来是谁写的这段代码吗?如果把它分成两段独立的if语句,是不是更容易理解呢,下面是修改后的代码:

if(newStatusCode.equals("SD") && (sellOffDate == null ||
Q0todayDate.compareTo(sellOffDate)<0 || (lastUsedDate != null &&
todayDate.compareTo(lastUsedDate)>0))){
newStatusCode = "NYP";
}else
if(newStatusCode.equals("OBS") && (OBSDate == null ||
todayDate.compareTo(OBSDate)<0))
{
newStatusCode = "NYP";
}

是不是读起来容易多了呢,在此只是多加了一个if和两个花括号,但代码的可读性与可理解性就一下子提高了一大截。

四、请不要硬编码。开发者经常有意“忘记”或忽略掉这点,因为有些时候开发日程逼得实在太紧。其实,多写一行定义静态变量的代码能花多少时间呢?

public class A {
public static final String S_CONSTANT_ABC = "ABC";
public boolean methodA(String sParam1){
if (A.S_CONSTANT_ABC.equalsIgnoreCase(sParam1)){
return true;
}
return false;
}

现在,每次需要将“ABC”与其他变量进行比较时,不必记住实际代码,直接引用A.S_CONSTANT_ABC就行了,而且在今后需要进行修改时,也可在一处修改,不会翻遍整个源代码逐个修改了。

时间: 2024-09-19 10:11:32

Java开发者需坚守的十大基本准则的相关文章

Java程序开发者需要了解的十大清规戒律

程序 对Java开发者来说,有许多的标准和最佳实践.本文列举了每一个开发人员必须遵从的十大基本法则:如果有了可以遵从的规则而不遵从,那么将导致的是十分悲惨的结局. 1. 在你的代码里加入注释 每个人都知道这点,但不知何故忘记了遵守.算一算有多少次你"忘记"了添加注释?这是事实:注释对程序在功能上没有实质的贡献.但是,你需要一次又一次的回到你两个礼拜之前写的代码上来,可能一辈子都是这样,你一定记不住这些代码为什么会这样.如果这些代码是你的,你还比较的幸运.因为它有可能让你回忆起.但是不幸

盘点开发者最喜爱的十大开源Xcode插件

Xcode IDE拥有着诸如导航.重构.校准等众多非常高大上的工具,而予以辅助的插件更是在Xcode的基础上对相关功能进行改进与扩展.在应用开发过程中,通过开源包管理器Alcatraz对插件进行安装管理,打造最为强大的开发环境,早已成为开发者们的必备功课.本文总结介绍了备受开发者喜爱的10款开源Xcode插件,涉及代码编辑.注释.管理等各个方面. 1. Code Pilot 说到Xcode那些炙手可热的插件,很多开发者首先都会想到Code Pilot.Code Pilot是Xcode 5的一款扩

打造高性能Java应用需掌握的5大知识

这篇文章节选自<java performance>,对java性能比较关心的同学大概都知道这本书,性能这个东西可能是很多同学在日常写java code的时候很少去关心的,但是在我们写code的过程中确又时时离不开对程序性能的影响,小到我们使用位运算来实现算术运算,大到我们对JAVA代码的总体架构设计,性能其实离我们很近.本片文章主要提到几个点,主要是在性能领域我们比较关注的一些问题,并且是有启发性的,如果同学对性能较感兴趣,那么我们可以一起深入研究各个点. 对于性能调优,通常会有三个步骤:1,

浅谈草根微博新手入门需注意的十大事项

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 作为互联网一个跨时代的网络媒体,微博正以其迅速的传播速度,广泛的覆盖面,良好的传播效果而迅速红遍网络.那么,微博时代,作为一个微博新手,如何才能够更好更迅速的玩转微博呢?经常会看到或者听到有朋友问及关于草根微博新手如何才能够迅速提升自己的影响力.今天,笔者就针对草根微博新手所关心的几个问题做一个总结. 在这里说明一下,为什么我强调草根微博新手

社交营销需谨慎 警惕十大误区

在当下的互联网时代,社交网站层出不穷,竞争激烈,而在社交营销中,许多公司,多亏了他们在互联网上的强力存在,成功了.但也有一些,花了大钱,却效果不佳. 因此,在你开始用社会化媒体平台进行推广之前,有必要理一下你的社会化媒体技能.更好的办法是,了解下社交营销中最常见的十个误区,以及如何避免犯这些错误. 误区1:没有清晰的社交营销战略 <福布斯>杂志专栏作家Pamela Springer注意到许多企业主不能恰当地设置预算.她写到:"即使许多社会化媒体应用是免费的,但他们仍然需要时间的投入,

SWJ版:搜索引擎营销(SEM)的十大基本准则!

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 搜索引擎营销(SEM)10大准则: 1.关注用户体验.SWJ小结:最终的目标还是客户 多从用户或客户角度去思考 2.推广关键词比购买关键词更重要.SWJ小结:虽然推广一组或一个关键词比购买一组或一个关键词更重要,但是合理的部署 可以使事半功倍! 3.集思广义,获取公司内部智慧技术.SWJ小结:集体的力量毕竟比一个人闷头苦恼的想更有实质的意义

避开十大错误 找到数据库开发捷径

尽管软件发展中的热点技术层出不穷,不断地变化,有一些东西却一直未曾改变,其中之一就是开发人员对数据库的使用和设计开发-- 你可能会兴奋地紧跟时尚创建一个AJAX Web界面,或者使用最近迷人的Windows用户界面,但是透过这些各种各样的外观界面,你可能依然需要从后台数据库中提取或存取所需要的数据--这一点就如同十多年以前人们对数据库的操作是一样的. 然而,令人吃惊的是,现在还有很多开发者依然在不断地重复着很多年以前就存在的数据库使用和开发上的错误.或许是有太多的开发者只是来学习如何使用一个数据

十大求职陷阱公布 骗子敢用真信息欺诈求职者_经典网摘

请擦亮你的双眼,在求职跳槽高峰期的这段日子里,看清这世界形形色色职场"陷阱".昨天,根据连日来700多网友的积极投票,市劳动和社会保障局所属的上海公共招聘网发布了"我最需防范的十大求职陷阱". 1.试用陷阱 以新招人员替代试用期满人员  [经典案例]吴先生应聘某汽车销售服务公司的汽车驾驶员岗位.单位承诺3个月试用,录用后发现,该单位仍在进行汽车驾驶员招聘工作.吴先生按约定做满3个月,却接到了单位的辞退通知. 2.培训陷阱 以招聘为名为培训学校拉生源 [经典案例]张小

《期货》十大基本规则

美国<期货>月刊不久前刊载署名文章.介绍了期货界公认的期货交易的十大基本规则.作者是在归纳了美国期货界的交易老手和专家的言论的基础上,提出这些规则的.这是一些浓缩了的经验之论谈,对我国期货界不无参考价值. 以下是期货交易的十大基本准则.有经验的期货交易员认为,这些准则是一名期货新手走向成功之道,在期货市场得以生存下去的关键.违反这些准则,将导致破产.在激烈的竞争中,遵循这些准则可以避免成为"祭坛上的羔羊".一些业余的交易者永远也成不了专业交易员的原因,就是未能遵守这些交易准