第3章 代码风格

3.1 命名

  1. 符合语言特性
  2. 体现代码元素特征:

    Abstract xxx、 Basexxxx、xxException、xxxTest等;

    包名统一使用小写, 完整单词+点分隔符;

    枚举类成员全大写+下划线
  3. 望文生义
  4. POJO类布尔类型的变量:

    数据库使用is_xxxx,

    但是POJO类中属性为xxxx;

3.2 风格

  1. if 不要省略中括号;
  2. 没有必要增加若干空使变量赋值等号对齐(之前再oschina看到这样做, 感觉便于阅读, 但是浪费时间)
  3. 多层嵌套不能超过3层: 可使用卫语句, 策略模式, 状态模式等实现
  4. 避免反逻辑运算符: 反例 if(!(x >= 48))
  5. 条件表达式中不允许出现复杂逻辑组合: 可以将复杂逻辑赋值给布尔变量

3.4 注释

  1. 枚举类一定要有注释
  2. 不允许写在代码后面

码云地址: https://gitee.com/forxiaoming/JavaBaseCode/tree/master/EasyCoding

《码出高效 Java开发手册》第三章 代码风格的更多相关文章

  1. 《码出高效 Java开发手册》第二章 面向对象

    码云地址: https://gitee.com/forxiaoming/JavaBaseCode/tree/master/EasyCoding 第2章 面向对象 Object-Oriented Pro ...

  2. 《码出高效 Java开发手册》第一章计算机基础(未整理)

    码云地址: https://gitee.com/forxiaoming/JavaBaseCode/tree/master/EasyCoding

  3. 《码出高效 Java开发手册》第七章 并发与多线程

    码云: https://gitee.com/forxiaoming/JavaBaseCode/blob/master/EasyCoding/src/concurrency/multithreading ...

  4. 《码出高效 Java开发手册》第六章 数据结构与集合

    码云: https://gitee.com/forxiaoming/JavaBaseCode/blob/master/EasyCoding/src/collection/index.md 6.1 数据 ...

  5. 《码出高效 Java开发手册》第五章 异常与日志

    码云: https://gitee.com/forxiaoming/JavaBaseCode/blob/master/EasyCoding/src/exception/index.md 5.2 try ...

  6. 《码出高效 Java开发手册》第四章 走进JVM(未整理)

    码云地址: https://gitee.com/forxiaoming/JavaBaseCode/tree/master/EasyCoding

  7. 阿里巴巴 Java 开发手册(三): 代码格式

    1. [强制]大括号的使用约定.如果是大括号内为空,则简洁地写成{}即可,不需要换行:如果 是非空代码块则: 1) 左大括号前不换行. 2) 左大括号后换行. 3) 右大括号前换行. 4) 右大括号后 ...

  8. 2020阿里最新出品的泰山版Java开发手册,告别垃圾代码

    说起华山,我就想起岳不群,不,令狐冲:说起泰山,我就想起司马迁,他的那句名言"人总有一死,或重于泰山,或轻于鸿毛",真的发人深省啊.这就意味着,阿里出品的泰山版 Java 开发手册 ...

  9. 《码处高效:Java开发手册》之代码风格

    流水淡,碧天长,鸿雁成行.编码风格,简捷清爽,反引无限风光. 在美剧<硅谷>中有这样一个经典镜头,主人公 Richard 与同为开发工程师的女友闹分手,理由是两人对缩进方式有着截然不同的编 ...

随机推荐

  1. UIVisualEffectView(高斯模糊效果)

    ///高斯模糊. UIView *tempView = [[UIView alloc] initWithFrame:CGRectMake(100, 100, 100, 100)]; tempView. ...

  2. 前端入门CSS(3)

    day60 不透明度 opacity()\ opacity (不透明度)             1. 取值0~1             2. 和rgba()的区别:                ...

  3. Elasticsearch系列(五)----JAVA客户端之TransportClient操作详解

    Elasticsearch JAVA操作有三种客户端: 1.TransportClient 2.JestClient 3.RestClient 还有种是2.3中有的NodeClient,在5.5.1中 ...

  4. [Swift实际操作]七、常见概念-(11)路径URL的使用详解

    本文将为你演示网址对象(URL)的使用 首先导入需要使用的界面工具框架 import UIKit 接着初始化一个指定网址的网址对象 let url = URL(string: "https: ...

  5. SSH免密码远程登录Linux

    1. 有A,B两台机(Linux/unix), 要想从A用ssh远程登录到B上(假设各自的IP,A:192.168.100:B:192.168.1.104). 2. 在A机上,用“ssh-keygen ...

  6. JMeter性能测试-服务器资源监控插件详解

          零.引言 我们对被测应用进行性能测试时,除了关注吞吐量.响应时间等应用自身的表现外,对应用运行所涉及的服务器资源的使用情况,也是非常重要的方面,通过实时监控,可以准确的把握不同测试场景下服 ...

  7. 利用Django和装饰器做一个简单的修改密码页面

    view视图代码: from django.shortcuts import render,redirect from django.http import HttpResponse from PIL ...

  8. Ubuntu软件更新时出错问题解决

    apt-get instal update 提示:错误,无法解析域名等等之类的 网上解决办法一大堆,先别急着用网上的方法,来检查检查系统是否有网络连接 网络图标显示网络连接,等等,别被表面迷惑了,命令 ...

  9. TestNG的常用注解

    @BeforeSuite:表示此注解的方法会在当前测试集合(Suite)中的任一测试用例开始运行之前执行 @AfterSuite:表示此注解的方法会在当前测试集合(Suite)中的所有测试程序运行结束 ...

  10. vue 中使用 screenfull.js 全屏插件

    参考网址: https://blog.csdn.net/houyibing930920/article/details/89214200 https://www.jianshu.com/p/cfbb1 ...