JAVA编码规范(开发培训讲义)模板课件.ppt
《JAVA编码规范(开发培训讲义)模板课件.ppt》由会员分享,可在线阅读,更多相关《JAVA编码规范(开发培训讲义)模板课件.ppt(70页珍藏版)》请在三一办公上搜索。
1、Lishoulin,PTC,普联软件(中国)有限公司2011年度入职培训,济南燕山学院,PANSOFT,JULY,2011,编码规范(JAVA版),JAVA之路JAVA开发人员编码规范,Technology Team Progress,Lishoulin,PTC普联软件(中国)有限公司PANSO,编码规范的必要性,你自己|编码规范对于程序员自己而言尤为重要 其它人|几乎没有一个软件,在其整个生命周期中,均由最初的开发人员来维护 ,其它的人能看懂你的代码吗?生命周期|80%的花费在于维护 可读性|编码规范可以改善软件的可读性代码理解|有助于尽快而彻底地理解新的代码团队协作|必不可少的规范正确率|
2、保证正确率,规避低级的错误,PANFOT JAVA Developer,编码规范的必要性你自己|编码规范对于程序员自己而言尤为重要,规范的实施,原则|参照规范|注重实践|从点滴做起范围|全体使用JAVA开发的编码人员|设计人员时机|开发软件项目|产品的任何时间检查|项目组内部检查|公司专门人员抽查修改或升级|专门小组负责,PANFOT JAVA Developer,规范的实施原则|参照规范|注重实践|从点滴做起PANFOT,主要内容,JAVA代码编写规范数据库访问规范操作界面设计规范常用工具,PANFOT JAVA Developer,主要内容JAVA代码编写规范PANFOT JAVA Dev
3、e,JAVA代码编写规范,PANFOT JAVA Developer,JAVA代码编写规范PANFOT JAVA Develope,文件组织,文件名|java|class文件组织|单个源文件长度控制在2000行,PANFOT JAVA Developer,文件组织文件名|java|classPANFOT JAVA,包与类、接口命名,包|全部小写,com+公司名+产品名+模块名类|名词|大小写混合|简洁而完整|首字符使用J或者T接口|大小写混合|简洁而完整|首字符使用I,PANFOT JAVA Developer,com.pansoft.financecom.pansoft.public cla
4、ss JRaster;class JImageSprite interface IRasterDelegate;interface IStoring;,包与类、接口命名包|全部小写,com+公司名+产品名+模块名,方法命名,方法|动词|大小写混合|首字母小写|其后单词首字母大写,PANFOT JAVA Developer,run();runFast();getBackground();,方法命名方法|动词|大小写混合|首字母小写|其后单词首字母大,变量命名,大小写混合|首字母小写|后面单词首字母大写不应使用下划线名称应简短而富描述性|便于记忆避免单字母变量名,除非| 临时变量i|j|k|m|n
5、一般用于整型临时变量c|d|e一般用于字符型临时变量,PANFOT JAVA Developer,char c;int i;float myWidth;,变量命名大小写混合|首字母小写|后面单词首字母大写PANFO,成员变量,和变量名相似前面加m,PANFOT JAVA Developer,int mEmployeeId;String mName;Customer mCustomer;,成员变量和变量名相似PANFOT JAVA Develope,实参变量,大小写规则和变量名相似前面需要加一个p,PANFOT JAVA Developer,public void callMe(int pAge
6、, String pName),实参变量大小写规则和变量名相似PANFOT JAVA Dev,常量,全部大写单词间用下划线隔开,PANFOT JAVA Developer,static final int MIN_WIDTH = 4;static final int MAX_WIDTH = 999;static final int GET_THE_CPU = 1;,常量全部大写PANFOT JAVA Developersta,开头注释,开头有一个C语言风格的注释列出类名|版本信息|日期|版权,PANFOT JAVA Developer,/* * Classname * * Version in
7、formation * * Date * * Copyright notice */,开头注释开头有一个C语言风格的注释PANFOT JAVA D,包和引入语句,第一个非注释行是包语句 之后可以跟引入语句,PANFOT JAVA Developer,package java.awt; import java.awt.peer.CanvasPeer;,包和引入语句 第一个非注释行是包语句 PANFOT JAVA,类/接口定义,类|接口注释类的(静态)变量 实例变量 构造器 方法,PANFOT JAVA Developer,类/接口定义 类|接口注释PANFOT JAVA Devel,静态变量,首
8、先是类的公共变量随后是保护变量 再后是包一级别的变量 最后是私有变量,PANFOT JAVA Developer,静态变量首先是类的公共变量PANFOT JAVA Devel,实例变量,首先是公共级别 随后是保护级别的 再后是包一级别的 最后是私有级别的,PANFOT JAVA Developer,实例变量首先是公共级别 PANFOT JAVA Develo,方法,该按功能分组布局非按访问区域分组为了更便于阅读和理解代码,PANFOT JAVA Developer,方法该按功能分组布局PANFOT JAVA Develope,缩进,4个空格为一个缩进单位JBuilder缺省2个可更改|Ecli
9、pse可设置,PANFOT JAVA Developer,缩进4个空格为一个缩进单位PANFOT JAVA Devel,行长度,避免一行超过80字符,PANFOT JAVA Developer,行长度避免一行超过80字符PANFOT JAVA Devel,换行(断行原则),在一个逗号后面断开 在一个操作符前面断开 宁可选择较高级别(higher-level)的断开,而非较低级别(lower-level)的断开 新的一行应该与上一行同一级别表达式的开头处对齐,PANFOT JAVA Developer,换行(断行原则)在一个逗号后面断开 PANFOT JAVA,换行(断行原则),在一个逗号后面断
10、开 在一个操作符前面断开 宁可选择较高级别(higher-level)的断开,而非较低级别(lower-level)的断开 新的一行应该与上一行同一级别表达式的开头处对齐 缩进后若使第二行和第三行移得很靠右,可以代之以缩进8个空格,PANFOT JAVA Developer,换行(断行原则)在一个逗号后面断开 PANFOT JAVA,换行(断行原则),PANFOT JAVA Developer,/正常断行 someMethod(int anArg, Object anotherArg, String yetAnotherArg, Object andStillAnother) . /若断行后很
11、靠右,则下面行可以缩进8个空格,看上去更美 观。 private static synchronized horkingLongMethodName(int anArg, Object anotherArg, String yetAnotherArg, Object andStillAnother) . ,换行(断行原则)PANFOT JAVA Developer,IF语句断行,PANFOT JAVA Developer,/缩小过少,不易阅读1 if (condition1 ,通常使用8个缩进,看起来清晰,IF语句断行PANFOT JAVA Developer /,三元运算符,PANFOT J
12、AVA Developer,1 alpha = (aLongBooleanExpression) ? beta : gamma;2 alpha = (aLongBooleanExpression) ? beta : gamma;3 alpha = (aLongBooleanExpression) ? beta : gamma;,三种可行的方法,三元运算符PANFOT JAVA Developer1 a,注释,PANFOT JAVA Developer,实现注释|注释代码或者实现细节|使用/*/或/注释 |与C+相同 文档注释|Java独有,使用/* */表示|可转为HTML不应包括|制表符和回
13、退符之类的特殊字符 四种注释风格|块|单行|尾端|行末,注释 PANFOT JAVA Developer实现注释|注,块注释,PANFOT JAVA Developer,目的|对文件,方法,数据结构和算法的描述 位置|文件开始|方法之前|方法内部,块注释 PANFOT JAVA Developer目的|对文,块注释,PANFOT JAVA Developer,首部有一空行|利于代码分隔可以以/*-开头|indent(1)就可以将之识别为一个代码块的开始,/* * Here is a block comment. */,块注释 PANFOT JAVA Developer首部有一空,单行注释,PA
14、NFOT JAVA Developer,短注释|可以显示在一行内,与其后的代码具有一样的缩进多于一行|不能在一行内写完,就该采用块注释,1 if (condition) 2 /* Handle the condition. */3 /code.4 ,单行注释 PANFOT JAVA Developer短注释|,尾端注释,PANFOT JAVA Developer,极短的注释|可以与它们所要描述的代码位于同一行极短的注释共存|应该具有相同的缩进,1 if (a = 2) 2 return TRUE; /* special case */3 else 4 return isPrime(a); /*
15、 works only for odd a */5 ,尾端注释 PANFOT JAVA Developer极短的注,行末注释,PANFOT JAVA Developer,三种风格,1 if (foo 1) 2. / Do a double-flip.3 4 else 5. return false; / Explain why here.6 7. /if (bar 1) 8 / / Do a triple-flip.9 /10 /else 11 / return false;12 /,行末注释 PANFOT JAVA Developer三种风格,文档注释,PANFOT JAVA Develop
16、er,JAVA描述信息|类、接口、构造器,方法,以及字段 注释定界符|/*.*/ 位置|应位于声明之前 ,不能在其内部,/* * The Example class provides . */ public class Example .,文档注释 PANFOT JAVA DeveloperJAVA,变量声明|个数,PANFOT JAVA Developer,推荐一行一个声明|因为这样利于写注释 不要|不同类型变量的声明不放在同一行,1 int level; / indentation level int size; / size of table /这样不好 3 int level, siz
17、e; 4 int foo, fooarray; /错误写法,变量声明|个数 PANFOT JAVA Developer推,变量声明|初始化,PANFOT JAVA Developer,尽量|在声明局部变量的同时初始化 或者|初始值依赖于某些先前发生的计算,可不初始化,变量声明|初始化 PANFOT JAVA Developer,变量声明|布局,PANFOT JAVA Developer,只在|代码块的开始处声明变量不要|首次用到该变量时才声明之,for循环例外避免|声明的局部变量覆盖上一级声明的变量,1 void myMethod() 2 int int1 = 0; / 好的声明3 if (c
18、ondition) 4 int int2 = 0; / 不好的声时5 .6 7 ,变量声明|布局 PANFOT JAVA Developer只,类与接口声明,PANFOT JAVA Developer,方法名与其参数列表之前的左括号(间不要有空格 左大括号“”位于声明语句同行的末尾右大括号“”另起一行除非是一个空语句方法与方法之间以空行分隔,1 class Sample extends Object 2 int ivar1;3 int ivar2;4 Sample(int i, int j) 5 ivar1 = i;6 ivar2 = j;7 8 int emptyMethod() 9 .10
19、 ,类与接口声明 PANFOT JAVA Developer方法,简单语句,PANFOT JAVA Developer,每行至多包含一条语句,1 argv+; / Correct 2 argc-; / Correct 3 argv+; argc-; / AVOID!,简单语句 PANFOT JAVA Developer每行至多,复合语句,PANFOT JAVA Developer,定义|包含在大括号中的语句序列 缩进|被括其中的语句应该较之复合语句缩进一个层次 左大括号|位于复合语句起始行的行尾; 右大括号|另起一行并与复合语句首行对齐,1 if ( this.isExist(“0001”)
20、2 argc-; / Correct 3 System.out.println(“HELLO”); 4 ,复合语句 PANFOT JAVA Developer定义|包,返回语句,PANFOT JAVA Developer,带返回值时|return语句不使用小括号()“除非|以某种方式使返回值更为显见,1. return; 2. return myDisk.size(); 3. return (size ? size : defaultSize);,返回语句 PANFOT JAVA Developer带返回值,If|if-else|if else-if else,PANFOT JAVA Deve
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 编码 规范 开发 培训 讲义 模板 课件
链接地址:https://www.31ppt.com/p-1285842.html