一、命名规范

1、标识符:统一、达意、简洁

  统一:一个词有多种表达方式,不求最好,但求统一;例:供应商,既可以用supplier,也可以用provider,选择一种统一使用;

  达意:明确表达其意义,正确而且丰富;例:newSupplier与supplier1, service2的区别;

  简洁:在统一与达意的前提下,进行简洁;若不能达意,请放弃简洁;

  骆驼法则:不使用特殊符号分割,而是通过首字母大写来分割;例:SupplierName, addNewContract;

  英文与拼音:尽量使用简单的英文或者全部使用拼音,拒绝英文拼音混合使用;

2、包名:小写、链接

  包名:全部使用小写;不使用特殊符号分割;

3、类名

  类名:首字母大写,每个单词的都大写

  后缀:Service、Impl、Inter、Dao、Action、listener、Event、Servlet、Factory、Job..

4、方法名

  方法名:首个单词首字母小写,后续单词首字母大写

  前缀:create、delete、add、remove、initialize、destroy、open、close、read、get、copy、modity、send、find..

二、空格空行

  空格使用(1个紧随,2个为前后):分隔时1个;运算符2个;逗号1个;例:call(a, b, c);b - d = e;return a == b ? 1 : 0;if (a > b)

  空行使用:语意操作;方法之间;超十行;

三、代码注释

  代码混乱,再多的注释都不能弥补;达意+统一+简洁+结构清晰==较少的注释

  注释:少而精;代码意义注释;非代码管理;svn的无用代码删除时代

  单行时用 //, 多行时用 /* .. */;流程-包围;流程-大括号;

四、最佳实践

  1、懒惰的程序员,每次保存提交时,都要保持最优代码;每次保存的必须为最美的代码;

  2、log更多的评级使得其优于println;

  3、if while for 后边加括号;

  4、//TODO让大家知道,你还有什么没做;

  5、用“;”或者"//nothing to do " 来说明你故意不需要做什么;

  6、减少嵌套层次;减少true/false的判断;减少变量的作用域;减少使用返回结果的方法;变量声明、初始化、使用尽量放在一起;

JAVA总结--代码规范的更多相关文章

  1. Java&Android代码规范

    项目中直接导入Square的代码风格文件.(不导入Google的原因是Square同时提供了Java和Android两套统一风格,Google只提供了一套) Square Code Styles Go ...

  2. java注释代码规范

    //收集了一小部分,忘记的时候过来查一下 java--hadoop部分 /** * 此类用来处理DNS原始日志:统计给定域名平均响应时延 * @param Input * @param Output ...

  3. java idea 代码规范插件

    推荐阿里的 p3c https://github.com/alibaba/p3c

  4. java web代码规范:

    每个类前要有注释,类前的注释格式是: /** *类是干什么的 *@author  编写该类的作者 */ 类中的每个方法前也要有注释: /** *该方法是干什么的 *@param 该方法中传入的参数 * ...

  5. Java代码规范

    Java代码规范 本Java代码规范以SUN的标准Java代码规范为基础,为适应我们公司的实际需要,可能会做一些修改.本文档中没有说明的地方,请参看SUN Java标准代码规范.如果两边有冲突,以SU ...

  6. Java 代码规范,你应该知道的一些工具和用法

    从事编程这个行业,你一定被别人说过或者说过别人这句话:代码要规范!求职面试时也能从 JD 上看到这个要求:要有良好的编程习惯.其实都是在讲代码规范(Code Style)这件事情. 每个人都有自己的编 ...

  7. Java代码规范和一些常见问题

       本文中的代码规范,是Java标准代码规范中的一小部分,在我看来,是最重要的一部分.    理想目标:不需要写注释,不需要和别人介绍,别人就知道你的项目大致是做什么的,每个类大概实现了什么功能. ...

  8. Java 代码规范,你应该知道的一些工具和用法(转)

    转自:http://yifeng.studio/2017/06/30/coding-with-code-style/ Java 代码规范,你应该知道的一些工具和用法 2017-06-30 从事编程这个 ...

  9. C#与Java对比学习:类型判断、类与接口继承、代码规范与编码习惯、常量定义

    类型判断符号: C#:object a;  if(a is int) { }  用 is 符号判断 Java:object a; if(a instanceof Integer) { } 用 inst ...

随机推荐

  1. zookeeper之四 Curator客户端的使用

    Curator是一个开源的zookeeper客户端,解决了很多zookeeper原生客户端非常底层的细节开发工作,如连接重试.反复注册watcher等. public class CuratorOpe ...

  2. Kali Linux的发展史,专为数字取证和渗透测试而设计

    Kali Linux拥有非常强大的网络功能,Kali Linux是一个Debian衍生的Linux发行版,专为数字取证和渗透测试而设计.它是由OffensiveSecurityLtd维护和资助,是由M ...

  3. git-shell设置代理

    Configure Git to use a proxy ##In Brief You may need to configure a proxy server if you're having tr ...

  4. LeetCode--105--从前序与中序遍历序列构造二叉树(python)

    根据一棵树的前序遍历与中序遍历构造二叉树. 注意:你可以假设树中没有重复的元素. 例如,给出 前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,2 ...

  5. Gparted for partition of Linux on graphic interface

    You can change the partition table on Linux by a group of tools, which is tool comprehansive for a n ...

  6. mysql ORDER BY语句 语法

    mysql ORDER BY语句 语法 作用:用于对结果集进行排序. 语法:顺序:SELECT * from 表名 ORDER BY 排序的字段名  倒序:SELECT * from 表名 ORDER ...

  7. c++复习——临考前的女娲补天 >=.<

    一些零零散散的知识点... 1.抽象类只能作为其他类的基类,不能建立对象,但抽象类的派生类如果给出纯虚函数的函数体,这个派生类仍然是一个抽象类.//这个好理解 懂了 2.抽象类不能作为参数类型,函数的 ...

  8. scanf()函数原理

    一.三点说明 1.用户输入的字符,会以ASCII码形式存储在键盘缓冲区:2.每调用一次scanf函数,就从键盘缓冲区读走一个字符,相当于清除缓冲区:3.若用户一次输入n个字符,则前n次调用scanf函 ...

  9. http协议的深刻理解

    https://www.cnblogs.com/mayite/p/9095986.html

  10. RedisTemplate访问Redis数据结构(三)——Hash

    HashOperations提供一系列方法操作hash.首先初始化spring工厂获得redisTemplate和opsForHash private RedisTemplate<String, ...