java开发规范
hbh 开发规范文档
一:目的
使本组织能以标准的,规范的方式设计和编码。通过建立编码规范,以使每个开发人员
养成良好的编码风格和习惯;并以此形成开发小组编码约定,提高程序的可靠性,可读性,
可修改性,可维护性和一致性等,增进团队间的交流,并保证软件产品的质量。
二:代码组织与风格
1:长度:为便于阅读和理解,单个函数的有效代码长度当尽量在100行以内(不包括注行),
当功能模块过大时往往采用使用子函数将相应的功能抽取出来,这也有利于提高代码的重用度。
2:间隔:类,方法及功能块间等应以一个空行相隔,以增加可读性,但不得有无规则的大片空行。操作符两端应当各空一个字符以增加可读性。
三:注释
1:注释应该增加代码的清晰度。代码注释的目的时要使代码更易于被其他开发人员等理解。
2:保持注释的简洁。
3:注释信息应该包括代码的功能。
4:除变量定义等较短语句的注释使用行尾注释外,其他注释当避免使用行尾注释
5:JavaDoc规范
对类,方法,变量等注释需要符合
javadoc规范,对每个类,方法都应详细说明其功能条件,参数等。
1)类,接口注释
在类,接口定义之前当对其进行注释,包括类,接口的目的,作用,功能,继承于何种父类,实现的接口,实现的算法,使用方法,示例程序等。
2)方法注释
以明确该方法功能,各参数含义以及返回值等。
3)其他注释
应对重要的变量及不易理解的分支条件表达式加以注释,以说明其含义等。
四 命名规范
1:对变量,类,接口及包的命名应该使用英文或者是汉语首字母。更不可以使用汉字来进行命名。采用大小写混合,提高名字的可读性。一般应该采用小写字母,但时类和接口的名称的首字母,以及任何中间单词的首字母应该大写。包名全部小写。
2:尽量少用缩写,但如果一定要用,当使用公共缩写和习惯缩写等,如implement可缩为impl,manager可缩写成mgr等。
3:包名一般以项目或模块名命名,少用缩写和长名,一律小写。包名按照如下规定组成[基本包].[项目名].[模块名].[子模块名].…. 如:org.skyinn.skyhome.dao.hibernate。 不得将类直接定义在基本包下,所有项目中的类,接口等都当定义在各自的项目和模块包中。
4:类,接口
所有单词首字母大写,最好能够见名知意。一般采用名词或者是汉语首字母。或able,dao,dto,bean后缀。
5:字段
常量采用完整的英文大写单词,单词之间用下划线连接,如DEFAULT_VALUE.
6:变量和参数对不易识别出该变量类型的变量应使用类型缩写作其前缀,如字符串使用strXXX,boolean使用isXXX,hasXXX等等。除第一个单词外其余单词的首字母大写。
7:集合
采用复数名称来表示队列中存放的对象类型,名词采用完整的英文描述。例如:Vector vProducts= new Vector(); Array aryUsers= new Array();
8:方法
方法的名称应采用完整的英文描述,大小写混合使用:所有中间单词的第一个字母大写。方法名称的第一个单词常常采用一个强烈动作色彩的动词。取值类使用get前缀,设置类使set
前缀。例如getName(),setSarry()。
9:异常类名由表示该异常类型的单词和Exception组成,如ActionException。异常实例一般使用e,ex等。
10:数组的命名
数组应该总是用下面的方式来命名:byte[] buffer; 而不是:byte buffer[];
关于hbh项目的特殊规定:
一.controller层规范:
1.在controller层中查询类接口全部以quary*开头。查询本地使用quaryList。查询中登quaryZdList。
2. 在controller层提交类接口全部以to*开头。查询本地使用toZzh。
3. url地址一般是以方法名称。如果有特殊情况。与本规范作者沟通。并且添加到此规范中。
java开发规范的更多相关文章
- 阿里Java开发规范&谷歌Java开发规范&华为Java开发规范&Tab键和空格比较&Eclipse的Tab键设置 总结
现在收集到如下有用的信息: 阿里巴巴公开的Java开发规范:https://yq.aliyun.com/articles/69327?utm_content=m_10088 google公开的Java ...
- eclipse安装阿里巴巴java开发规范插件
阿里巴巴java开发规范插件 作为JAVA开发人员,始终没有一个明确的规范,何为好代码,何为坏代码,造成不同人的代码风格不同,接手别人代码后改造起来相当困难.前不久,阿里巴巴发布了<阿里巴巴Ja ...
- myeclipse 阿里巴巴java开发规范
今天发现阿里巴巴搞了个java开发规范,然后火了: 然后发现我也整了一下: 阿里巴巴java开发规范宣传页: http://mp.weixin.qq.com/s/IbibsXlWHlM59kfXJqR ...
- 阿里巴巴Java开发规范手册
Java开发手册 版本号 制定团队 更新日期 备 注 1.0.0 阿里巴巴集团技术部 2016.12.7 首次向Java业界公开 一.编程规约 (一) 命名规约 1. [强制]所有编程相关命 ...
- 阿里java开发规范学习(附P3C IDEA插件 帮助规范的养成)
浅析 阿里巴巴 Java 开发规约 (未完成) 更加优秀的页面展现请到浅析 阿里巴巴 Java 开发规约 contents 为什么要学 编程规约 P3C IDEA 插件 why-use 我们知道,一般 ...
- 阿里Java开发规范记录(一)
近日,从网上下载了阿里云栖社区发布的<阿里巴巴Java开发手册(正式版)>v1.1.0版.从编程以来,一直苦于没有相关的.全面的.靠谱的规范可以参考,有了这手册,日后编程也算是找到了依 ...
- 我的java开发规范
关于文件的命名参考阮一峰的这篇文章:http://www.ruanyifeng.com/blog/2017/02/filename-should-be-lowercase.html,文中说文件名全部使 ...
- Google的Java开发规范
长期以来,Google一直有针对各种语言的规范,例如C++, Python等等.惟独对于Java语言,Google一直没有给出相应的规范(传说中是因为Google Java首席构架师Joshua Bl ...
- java开发规范学习
from 慕课网-明明如月-<阿里巴巴的Java开发手册> Integer缓存问题分析 1, Integer缓存[-128, 127]的数字,除此之外,将通过new创建. Long也是缓存 ...
随机推荐
- Linus:为何对象引用计数必须是原子的
Linus大神又在rant了!这次的吐槽对象是时下很火热的并行技术(parellism),并直截了当地表示并行计算是浪费所有人时间(“The whole “let’s parallelize” thi ...
- Azkaban2官方配置文档
最近工作实在是太忙了,我把之前翻译的官方的文档先放上来吧,希望对大家有所帮助~ 介绍 Azkaban2新功能: 1.Web UI 2.简单工作流上传 3.更容易设置job的依赖关系 4.调度工作流 5 ...
- redis学习心得之二【redis主从配置】
在前一节我们已经实践启动了一个redis服务,我们将其作为主机,现为其创建一个从机作备份使用 1.复制一份配置出来为从机所用 ~$ cp redis/etc/redis.conf ...
- Away3D 4.1.4 中实现骨骼绑定
骨骼的绑定归根结底就是将目标骨骼的位置以及旋转数据,同步给要绑定的显示对象. 先来看BindingTag.as package away3d.entities { import away3d. ...
- 嵌入式C语言优化小技巧
嵌入式C语言优化小技巧 1 概述 嵌入式系统是指完成一种或几种特定功能的计算机系统,具有自动化程度高,响应速度快等优点,目前已广泛应用于消费电子,工业控制等领域.嵌入式系统受其使用的硬件以及运行环境的 ...
- Android 网络技术HTTP
1.XML3种解析方式(DOM.SAX.PULL) 在网络上传输数据时最常用的格式有两种,XML 和JSON 这里首先明白什么是SAX是一个用于处理XML事件驱动的"推"模型,优点 ...
- [Ruby] Ruby Variable Scope
Scope defines where in a program a variable is accessible. Ruby has four types of variable scope, lo ...
- 在Quick-cocos2dx中使用云风pbc解析Protocol Buffers,支持win、mac、ios、android
本例主要介绍 如何将 pbc 集成到quick-cocos2dx框架中,让我们的cocos2dx客户端Lua拥有编解码Protocol Buffers能力. 参考: 云风pbc的用法: http:// ...
- 第三篇:数据仓库系统的实现与使用(含OLAP重点讲解)
前言 上一篇重点讲解了数据仓库建模,它是数据仓库开发中最核心的部分.然而完整的数据仓库系统还会涉及其他一些组件的开发,其中最主要的是ETL工程,在线分析处理工具(OLAP)和商务智能(BI)应用等. ...
- java的通信机制
通信机制无非就那几种:http访问.socket访问: http又分为:jsp.servlet.html,用的就是get和post方法 socket则可分为:tcp或者udp方式 从以上内容又衍生出其 ...