首页 代码编写规范

代码编写规范

举报
开通vip

代码编写规范nullnull王大刚*null一个软件的生命周期中,80%的花费在于维护 几乎没有任何一个软件,在其整个生命同期中,均由最初的开发人员来维护 编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新代码 如果你将源码作为产品发布,就需要确认它是否被很好的打包并且清晰无误,一如你已构建的其它任何产品为了执行规范,每个软件开发人员必须一致遵守编码规范。每个人!!! *null本文档反映的是Sun Microsystem公司,Java语言规范中的编码标准部分。主要贡献者包括:Peter King,Patrick N...

代码编写规范
nullnull王大刚*null一个软件的生命周期中,80%的花费在于维护 几乎没有任何一个软件,在其整个生命同期中,均由最初的开发人员来维护 编码规范可以改善软件的可读性,可以让程序员尽快而彻底地理解新代码 如果你将源码作为产品发布,就需要确认它是否被很好的打包并且清晰无误,一如你已构建的其它任何产品为了执行规范,每个软件开发人员必须一致遵守编码规范。每个人!!! *null本文档反映的是Sun Microsystem公司,Java语言规范中的编码标准部分。主要贡献者包括:Peter King,Patrick Naughton,Mike DeMoney,Jonni Kanerva,Kathy Walrath以及Scott Hommel。*null统一使用eclipse作为开发工具,避免不同的开发工具格式不一样引起的编码混乱*null文件名称第一个字母大写,每个单词的第一个字母大写。 代码行不要超过2000行. 开头要有注释 / * * Classname * * Version information * * Date * * Copyright notice * / *null一个制 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 符作为缩进排版的一个单位 尽量避免一行长度超过80个字符 换行。当一个表达式无法容纳在一行内时,可以依据如下一般规则断开之: 在一个逗号后面断开 在一个操作符前面断开 选择较高级别的(higher-level)的断开 新行应该与上一行同一级别表达式的开头处对齐 如果以上规则导致你的代码混乱或者使你的代码都堆挤在右边,那就代之以缩进8个空格*null*someMethod(longExpression1, longExpression2, longExpression3, longExpression4, longExpression5); var = someMethod1(Expression1, someMethod2(longExpression2, longExpression3)); longName1 = longName2 * (longName3 + longName4- longNeme5) + 4 * longName6); private static synchronized horkingLongMethodName(int anArg, Object anotherArg, String yetAnotherArg, Object andStillAnother) { …… } if ((condition1 && condition2) || (condition3 && condition4) || !(condition5 && condition6)) { doSomethingAboutIt(); } nullJava程序有两类注释:实现注释(implementation comments)和文档注释(document comments)。 实现注释是那些在C++中见过的,使用/*…*/和//界定的注释。文档注释(被称为“doc comments”)是Java独有的,并由/**…*/界定。文档注释可以通过javadoc工具转换成HTML文件 实现注释用以注释代码或或者实现细节。文档注释从实现自由(implemtentation-free)的角度描述代码的规范。它可以被那些手头没有源码的开发人员读懂 注意:频繁的注释有时反映出代码的低质量。当你觉得被迫要加注释的时候,考虑一下重写代码使其更清晰。 *null块注释通常用于提供对文件,方法,数据结构和算法的描述。块注释被置于每个文件的开始处以及每个方法之前 块注释之首应该有一个空行,用于把块注释和代码分割开来,比如: / * * Here is a block comment. */*null短注释可以显示一行内,并与其后的代码具有一样的缩进层级。如果一个注释不能在一行内写完,就用块注释。 if (condition) { / * Handle the condition. */ …… } *null极短的注释可以与它们所要描述的代码位于同一行,但是应该有足够的空白来分开代码和注释。若有多个短注释出现于大段代码中,它们应该具有相同的缩进。 if (a ==2) { return TRUE; / * special case */ } else { return isPrime(a); / * works only for odd a */ } *null注释界定符“//”,可以注释掉整行或者一行中的一部分。它一般不用于连续多行的注释文本; if(foo > 1) { // do a double-filp …… } else { return false; }*null文档注释描述Java的类、接口、构造器、方法,以及字段(field)。每个文档注释都会被置于注释界定符/ **…*/之中,一个注释对应一个类、接口或成员。该注释应位于声明之前: / ** * The Example class provides … */ public class Example { …*null一行一个声明 方法与方法之间 以空行分隔 int level; // indentation level int size; // size of table Sample(int i, int j) { ivar1 = i; ivar2 = j; } int emptyMethod() {} … }*null每行至多包含一条语句 argv++; argc--; // 避免这样使用 带返回值的return语句不使用小括号“()”,除非它们以某种方式使返回值更显见。比如: return myDisk.size(); return (size ? size ; defaultSize);*null空行将逻辑相关的代码段分隔开,以提高可读性。不同代码块之间应该有空行隔开。 紧跟着括号的关键语句应该被空格分开。比如while (true) { 空格不应该置于方法名与其左括号之间,这将有助于区分关键字和方法调用 空白应该位于参数列表中逗号的后面 所有的二元运算符,除了“.”,应该使用空格将之与操作数分开。比如:a += c + d; for语句中的表达式应该被空格分开。比如:for (expr1; expr2; expr3) 强制转型后应该跟一个空格。myMethod((byte) aNum, (Object) x);*null命名要做到见名知意 使用完整单词,避免缩写词 包名全部小写 类名是一个名词,采用大小写混合方式,每个单词的首字母大写 方法名是一个动词,采用大小写混合方式,第一个单词的首字母小写,其后单词的首字母大写 除了变量名外,所有实例,包括类,类常量,均采用大小写混合的方式,第一个单词的首字母小写,其后单词的首字母大写。变量名不应以下划线或美元符号开头,尽管这在语法上是允许的 实例变量名应简短且富于描述。变量名的选用应该易于记忆,即,能够指出其用途。尽量避免单个字符的变量名,除非是一个临时性变量。临时变量通常被取名为i,j,k,m和n,它们一般用于整形;c,d,e,它们一般用于字符型 大小写规则和变量名相似,除了前面需要一个下划线隔开*null提供对实例以及类变量的访问控制,若没有足够的理由,不要把实例或类类变量声明为public 避免用一个对象访问一个类的静态变量和方法。应该用类名替代 位于for循环中作为计数器值的数字常量,除了-1,0和1之外,不应被直接写入代码 避免在一个语句中给多个变量赋相同的值 不要使用内嵌(embedded)赋值运算符试图提高运行时效率。比如:d = (a = b +c) + r; *null设法让你的程序结构符合目的。例如: if (booleanException) { return true; else { return false; } 应该代之以如下方法:return booleanException; 类似地: if (condition) { return x; } return y; 应该写为:return (condition ? x : y);*null下面的例子,展示了如何合理布局一个包含单一公共类的Java源程序。接口的布局与其相似。更多信息参见“类和接口”以及“文档注释”*null* /* * @(#)Blah.java 1.82 99/03/18 * * Copyright (c) 1994-199 Sun Microsystems, Inc. * 901 San Antonio Road, Palo Alto, California, 94303, * U.S.A * All rights reserved. * * This software is the confidential and proprietary * information of Sun Microsystems, Inc. (“Confidential * Information”). You shall not disclose such Confidential * Information and shall use it only in accordance with the * terms of the license agreement you entered into with Sun. */ package java.blah;   import java.blah.blahdy.BlahBlah;   null* /** * Class description goes here. * * @verison 1.82 18 Mar 1999 * @author Firsname Lastname */ public class Blah extends SomeClass { /* A class implementation comment can go here. */   /** class Var1 documentation comment */ public static int classVar1;   /** * classVar2 documentation comment that happen to be * more than one line long */ private static Object classVar2;   /** instanceVar2 documentation comment */ public Object instanceVar1;  null* /** instanceVar3 documentation comment */ private Object[] instanceVar3;   /** * …constructor Blah documentation comment… */ public Blah() { //…implementation goes here… }   /** * …method doSomething documentation comment… */ public void doSomething() { //…implementation goes here… }null*   /** * …method doSomethingElse documentation * comment… * @param someParam description */ public void doSomethingElse(Object someParam) { //…implementation goes here… } }
本文档为【代码编写规范】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_964249
暂无简介~
格式:ppt
大小:1MB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2013-09-07
浏览量:45