
Java Code Standard
Java语法及代码规范
雪心玉竹
网安行业产品媛
展开
-
提高代码阅读能力的7种方法
原文:7 Ways to Improve Your Code Reading Skills 作者: A. N. M. Bazlur Rahman 翻译:无阻我飞扬摘要:随着越来越多的公司使用敏捷开发,能够阅读别人的代码比以往显得更重要。这就需要学习一些如何提高这项技能的技巧。本文提供了7种提高代码阅读技巧的方法,以下是译文。在软件开发人员的职位描述中有阅读源代码。然而,这体验并不总转载 2017-10-19 11:10:09 · 334 阅读 · 0 评论 -
Java开发代码规范之单元测试
文章通过学习《阿里巴巴Java开发手册》整理1.好的单元测试必须遵守AIR原则好的单元测试宏观上来说,具有自动化、独立性、可重复执行的特点。A: Automatic (自动化)I:Independent (独立性)R:Repeatable(可重复)2.单元测试应该是全自动执行的,并且非交互式的单元测试中不准使用System.out来进行人肉验证,必须使用assert翻译 2017-11-15 11:10:20 · 4709 阅读 · 0 评论 -
Java开发代码规范之异常日志(二)——日志规约
文章通过学习《阿里巴巴Java开发手册》整理1。应用中不可直接使用日志系统(Log4j、Logback)中的API,而应依赖使用日志框架SLF4J中的API,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。import org.slf4j.Logger;import org.slf4j.LoggerFactory;private static final Logger logge翻译 2017-11-04 09:43:45 · 925 阅读 · 0 评论 -
Java开发代码规范之MySQL数据库(一)——建表规约
1。表达是否概念的字段,必须使用is_xxx的方式命名,数据类型是unsigned tinyint(1表示是,0表示否) 说明:任何字段如果为非负数,必须是unsigned。 例子:表达逻辑删除的字段名is_deleted,1表示删除,0表示未删除2。表名、字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出现数字。 MySQL在windows下不区分大小写,但在Linux下翻译 2017-11-17 11:28:06 · 2566 阅读 · 0 评论 -
Java开发代码规范之编程规约(七)——控制语句
文章通过学习《阿里巴巴Java开发手册》整理switch在一个switch块内,每个case要么通过break/return等来终止,要么注释说明程序将继续执行到哪一个case为止; 在一个switch块内,都必须包含一个default语句并且放在最后,即使它什么代码也没有。if/else/for/while/do语句在if/else/for/while/do语句中必须使用大括号。即使只有一行代翻译 2017-10-16 15:53:10 · 1072 阅读 · 0 评论 -
Java开发代码规范之编程规约(六)——注释规约
文章通过学习《阿里巴巴Java开发手册》整理。类、类属性、类方法的注释类、类属性、类方法的注释必须使用Javadoc规范,使用/**内容*/ 格式,不能使用// xxx方式。 说明:在IDE编辑窗口中,Javadoc方式会提示相关注释,生成Javadoc可以正确输出相应注释;在IDE中,工程调用方法时,不进入方法即可悬浮提示方法,参数、返回值的意义,提高阅读效率。抽象方法所有的抽象方法(包括接口翻译 2017-10-15 10:14:56 · 704 阅读 · 0 评论 -
Java开发代码规范之编程规约(五)——集合处理
关于hashCode和equals的处理关于hashCode和equals的处理,遵循如下规则: 1)只要重写equals,就必须重写hashCode; 2)因为Set存储的是不重复的对象,依据hashCode和equals进行判断,所以Set存储的对象必须重写这两个方法。 3)如果自定义对象作为Map的键,那么必须重写hashCode和equals。 说明:String重写了hashCod翻译 2017-10-15 09:27:42 · 428 阅读 · 0 评论 -
Java开发代码规范之异常日志(一)——异常处理
1。Java类库中定义的一类RuntimeException可以通过预先检查进行规避,而不应该通过catch来处理,比如:IndexOutOfBoundsException ,NullPointerException 等。 说明:无法通过预检查的异常除外,如在解析一个外部传来的字符串形式数字时,通过catch NumberFormatException来实现。2。异常不要用来做流程控制,条件控制,翻译 2017-10-31 18:49:43 · 2096 阅读 · 0 评论 -
Java开发代码规范之编程规约(八)——并发处理
文章通过学习《阿里巴巴Java开发手册》整理单例对象获取单例对象需要保证线程安全,其中的方法也要保证线程安全。 资源驱动类、工具类、单例工厂类都需要注意。线程创建创建线程或线程池时指定有意义的线程名称,方便出错时回溯。线程池线程资源必须通过线程池提供,不允许在应用中自行显示创建线程。 说明:使用线程池的好处是减少在创建和销毁线程上所花的时间以及系统资源的开销,解决资源不足的问题。如果不使用线程翻译 2017-10-19 10:48:35 · 762 阅读 · 0 评论 -
Java开发代码规范之编程规约(四)——OOP规约
文章通过学习《阿里巴巴Java开发手册》整理。1.避免通过一个类的对象引用访问此类的静态变量或静态方法,无畏增加编译器解析成本,直接用类名访问即可。2.所有的覆写方法,必须加@ Override注解。3.相同参数类型,相同业务含义,才可以使用java的可变参数,避免使用Object。4.不能使用过时的类或方法。5.Object的equals方法容易抛空指针异常,应使用常量或确定有值的对象来调用eq翻译 2017-10-13 10:51:54 · 519 阅读 · 0 评论 -
Java开发代码规范之编程规约(三)——代码格式
大括号的使用约定如果是大括号内为空,则简洁地写成{}即可,不需要换行;如果是非空代码块则 左大括号前不换行,后换行; 右大括号前换行; 右大括号后还有else等代码则不换行; 表示终止的右大括号后必须换行。小括号使用约定 左小括号和字符之间不出现空格 右小括号和字符之间不出现空格。反例:if (空格a == b空格)保留字与括号之间if/for/while/swi翻译 2017-10-12 15:57:03 · 1637 阅读 · 0 评论 -
Java开发代码规范之编程规约(二)——常量定义
不允许任何魔法值(即未定义的常量)直接出现在代码中。 反例:String key = "Id#taobao_" + tradeId;cache.put(key, value);long或Long初始赋值时,使用大写的L,不能使用小写的l,小写容易跟数字1混淆,造成误解。 正例:Long a = 2L;不要使用一个常量类维护所有常量,按常量功能进行归类,分开维护。 说明:大而全的长两类,翻译 2017-10-12 10:34:13 · 1613 阅读 · 0 评论 -
Java开发代码规范之编程规约(一)——命名风格
文章通过学习《阿里巴巴Java开发手册》整理。代码中的命名禁止以下划线或美元符号开始或结束。 反例:_name代码中的命名禁止使用拼音与英文混合的方式,禁止直接使用中文。 说明:正确的英文拼写和语法易于理解,避免歧义,可视同英文。 如 alibaba/taobao/youku/hangzhou 等国际通用的名称,可视同英文。类名使用 UpperCamelCase风格,必须遵从驼峰形式,但以翻译 2017-10-11 21:39:24 · 2234 阅读 · 1 评论 -
Java开发代码规范之编程规约(九)
文章通过学习《阿里巴巴Java开发手册》整理1。后台输送给页面的变量必须加$!{var}——中间的感叹号。 如果var= null或者不存在,那么${var}会直接显示在页面上.2。注意Math.random() 这个方法返回是double类型,取值范围是0<=x<1(能够取到零值,注意除零异常),如果想获取整数类型的随机数,不要讲x放到10的若干倍然后取整,直接使用Random对象的nextI翻译 2017-10-28 09:04:16 · 1009 阅读 · 0 评论 -
Java开发代码规范之安全规约
1。隶属于用户个人的页面或者功能必须进行权限控制校验。 说明:防止没有做水平校验就可随意访问、修改、删除别人的数据,比如查看他人的私信内容、修改他人的订单。2。用户敏感数据禁止直接展示,必须对展示数据进行脱敏。 说明:查看个人手机号码会显示成:178****3012 ,隐藏中间4位,防止隐私泄露。 【数据脱敏:对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。是数据库安全技翻译 2017-11-16 15:35:45 · 1159 阅读 · 0 评论