为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Java开发规范

2019-05-13 10页 doc 32KB 26阅读

用户头像

is_589748

暂无简介

举报
Java开发规范Java开发规范 目录 目录    2 History    2 Java编程规范    3 1. 为什么要制定编码规范?    3 编码原则    3 2. JAVA编码规范    4 2.1 程序编写规范    4 2.2 排版规范    4 2.3 测试维护    4 2.4 JAVA文件样式    4 2.5 可读性    7 2.6 性能    8 2.7 命名规范    8 2.8 代码编写格式    11 2.9 注释规范    12 2.10 代码编译    13 2.11 关于分布式系统的包结构组织一般约...
Java开发规范
Java开发规范 目录 目录    2 History    2 Java编程规范    3 1. 为什么要制定编码规范?    3 编码原则    3 2. JAVA编码规范    4 2.1 程序编写规范    4 2.2 排版规范    4 2.3 测试维护    4 2.4 JAVA文件样式    4 2.5 可读性    7 2.6 性能    8 2.7 命名规范    8 2.8 代码编写格式    11 2.9 注释规范    12 2.10 代码编译    13 2.11 关于分布式系统的包结构组织一般约定(walkersun内部使用的强制)    14 3. 显示层页面编码规范    14 3.1 显示层页面样式(草案)    14 4. 参考资源    16 History Date version description Author                                         Java编程规范 为什么要制定编码规范? 代码规范相当重要. 代码规范提高软件代码的可读性 , 使得开发人员快速和彻底的理解新代码. 好的代码风格不仅会提高可读性 ,而且会使代码更健壮 , 更为重要的是在修改时不容易出错. 在现代软件开发中 ,维护工作会占用80%的时间 , 而且开发者和维护者通常不是同一个程序员. 这意味着你经常要阅读和修改别人开发的程序 , 别人也同样可能需要阅读和修改你开发的程序. 既然如此 , 为什么不把这利人利己的事情作好呢? 一些习惯自由程序人员可能对这些规则很不适应,但是在多个开发人员共同写作的情况下,这些规则是必需的。 编码原则 1)精练。合理利用面向对象的抽象概念。 2)高复用性。模块化的观念。 3) 团队精神。 4)易调试。认真记录每一个异常,在程序的关键地方可以加入调试信息。 如何精练 1)对于多处调用的同一段代码,请及时改写为同一函数的调用,且函数的粒度要细,功能要单一。一般一个函数最好不要超过200行。 2)对于同类操作要及时抽象其超类。这其实作为一个java程序的基本要求。 3)对于一些频繁调用,但是又不是专属于某个类的方法,请放到common中的相关类中,比如Tools等,以便大家使用,注意这些方法应该是静态的,不要创建类实例甚至有上下文的牵扯。 如何在编码时体现“团队精神” 1)不要轻易删除别人的代码,一般做法是注释掉即可,而且也要征求原作者的意见,说明原因。对于确实要删除的代码一定要征求原作者的意见,当然原作者不在情况下例外,但是一定要备案。 2)对于修改底层类或者超类(被很多类继承的,涉及很多开发人员的)一定要慎重。如果要修改,一定要向相关负责人或者相关代码作者告知,讲明理由。所谓底层类包括通讯类等。 3)多写注释。 如何使程序易调试 请应用log4j模块。用该模块来记录每一个调试信息,异常等。关于该模块的使用方法将有专人讲解。 JAVA编码规范 命名规范 定义这个规范的目的是让项目中所有的文档都看起来像一个人写的,增加可读性,减少项目组中因为换人而带来的损失。(这些规范并不是一定要绝对遵守,但是一定要让程序有良好的可读性) 较短的单词可通过去掉“元音”形成缩写; 较长的单词可取单词的头几发符的优先级,并用括号明确达式的操作顺序,避免使用默认优先级。 使用匈牙利表示法。 ●  Package 的命名 Package 的名字应该都是由一个小写单词组成。 package com.neu.util ●         Class 的命名 Class的名字必须由大写字母开头而其他字母都小写的单词组成,对于所有标识符,其中包含的所有单词都应紧靠在一起,而且大写中间单词的首字母。 public class ThisAClassName{} ●         Class 变量的命名 变量的名字必须用一个小写字母开头。后面的单词用大写字母开头 userName , thisAClassMethod ●         Static Final 变量的命名 static  Final 变量的名字应该都大写,并且指出完整含义。 /** *DBConfig PATH **/ public static final String DB_CONFIG_FILE_PATH ="com.neu.etrain.dbconfig"; ●         参数的命名 参数的名字必须和变量的命名规范一致。 ●         数组的命名 数组应该总是用下面的方式来命名: byte[] buffer; 而不是: byte buffer[]; ●         方法的参数 使用有意义的参数命名,如果可能的话,使用和要赋值的字段一样的名字: setSize(int size){ this.size = size; } 不要用 setSize(int i){    //错误!参数需要有意义 this.size = i;  } ●?属性访问函数的命名 这里主要说明一些对(fields/property)赋值的访问性函数。 访问一个对象的属性时不要这样 obj.attr; 请使用set/get方法 obj.getAttr(); Get型函数 Get型函数返回一个域(field)的值。在命名时将“get”作为第一个单词;如果是boolean型的域,那么将“is”作为函数名称的第一个单词,这些函数主要用来对一个布尔域(field)来进行值测试,命名时将“is”作为第一个单词。如Thread类中的isInterrupt()方法。 getFirstName(); getAccountNumber(); getLostEh(); isPersistent(); isAtEnd(); Set型函数 这些函数主要用来对一个域(field)来赋值,命名时将“set”作为第一个单词。 setFirstName(string aName); setAccountNumber(int anAccountNumber); setReasonableGoals(Vector newGoals); setAtEnd(boolean isAtEnd); To型函数 这些函数主要用来进行类型转换,如toSting()方法。 这些命名约定是JDK和JAVA Beans开发时所要求的。 下表总结了类、接口、包的命名规则。 定义类型 命名规则 例子 Packages 包名称的前缀总是用小写的ASCII字母来表示的,并且总是采用一级域名,如com,edu,gov,mil.net,ort,或者是ISO 3166标准中的国家名的2字母缩写。 一个包名称后面的组件名根据一个组织的各个名称约定来取。 com.travelsky.gds.XXX com.apple.quicktime.v2 edu.cmu.cs.bovik.cheese Class 类名称应该是名词,且其内部的每一个词的首字母应大写。类名应简单而有意义。组成类名的单词不应用缩写。除非这些缩写已被广泛理解,如URL和HTML Class Raster; Class ImageSprite; Interfaces 接口名称的大写规则与类名相同 Interface GodDelegate       ●?名字缩写? 说明:较短的单词可通过去掉“元音”(在拉丁字母中,A、E、I、O、U通常都是元音字母)形成缩写;较长的单词可取单词的头几个字母形成缩写;一些单词有大家公认的缩写。 示例:如下单词的缩写能够被大家基本认可。 temp 可缩写为  tmp  ; flag 可缩写为  flg  ; statistic 可缩写为  stat ; increment 可缩写为  inc  ; message 可缩写为  msg  ; 码编写格式 ●         代码样式 代码应该用 unix 的格式,而不是 windows 的(比如:回车变成回车+换行) ●         文档化 必须用 javadoc 来为类生成文档。不仅因为它是标准,这也是被各种 java 编译器都认可的方法。使用 @author 标记是不被推荐的,因为代码不应该是被个人拥有的。 ●         缩进 缩进应该是每行4个空格. 不要在源文件中保存Tab字符. 在使用不同的源代码管理工具时Tab字符将因为用户设置的不同而扩展为不同的宽度. 如果你使用 UltrEdit 作为你的 Java 源代码编辑器的话,你可以通过如下操作来禁止保存Tab字符, 方法是通过 UltrEdit中先设定 Tab 使用的长度是4个空格,然后用 Format|Tabs to Spaces 菜单将 Tab 转换为空格。 ●         页宽 页宽应该设置为80字符. 源代码一般不会超过这个宽度, 并导致无法完整显示, 但这一设置也可以灵活调整. 在任何情况下, 超长的语句应该在一个逗号或者一个操作符后折行. 一条语句折行后, 应该比原来的语句再缩进2个字符. ●         {} 对 {} 中的语句应该单独作为一行. 例如, 下面的第1行是错误的, 第2行是正确的: if (i>0) { i ++ }; // 错误, { 和 } 在同一行 if (i>0) { i ++
/
本文档为【Java开发规范】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索