当前位置: 首页 > news >正文

福州网站建设服务商/苏州网站建设公司排名

福州网站建设服务商,苏州网站建设公司排名,网络推广培训学校哪里好,营销软件哪个好目录 序: 1. major 1.1 不允许任何魔法值(即未经定义的常量)直接出现在代码中。 1.2 中括号是数组类型的一部分,数组定义如下 1.4 单个方法的总行数不超过80行。 1.5 循环体内,字符串的联接方式,使…

目录

序:

1. major

1.1 不允许任何魔法值(即未经定义的常量)直接出现在代码中。  

1.2 中括号是数组类型的一部分,数组定义如下

1.4 单个方法的总行数不超过80行。

1.5 循环体内,字符串的联接方式,使用StringBuilder的append方法进行扩展。

1.6 所有的抽象方法(包括接口中的方法)必须要用javadoc注释

1.7 所有的类都必须添加创建者信息。

1.8 注意 Math.random() 这个方法返回是double类型,注意取值的范围[0,1)(能够取到零值,注意除零异常)

1.9 避免采用取反逻辑运算符。

2.0 除常用方法(如getXxx/isXxx)等外,不要在条件判断中执行复杂的语句

2.1 集合初始化时,指定集合初始值大小。


序:

alibaba java idea 插件——alibaba java coding guidelines(二)critical级别的代码~

https://blog.csdn.net/pmdream/article/details/96902128

alibaba java idea 插件——alibaba java coding guidelines(一)安装与修改block级别的代码~

https://blog.csdn.net/pmdream/article/details/96857062

此篇是major 并不是很关键的一些代码规范~

但是凡事还是还是要有规范。做记录;

1. major

1.1 不允许任何魔法值(即未经定义的常量)直接出现在代码中。 
 

      
Negative example:
    //Magic values, except for predefined, are forbidden in coding.
    if (key.equals("Id#taobao_1")) {
            //...
    }
               
        
Positive example:
    String KEY_PRE = "Id#taobao_1";
    if (KEY_PRE.equals(key)) {
            //...
    }

1.2 中括号是数组类型的一部分,数组定义如下

    String[] args 
            
    String[] a = new String[3];

也就是说数组类型的中括号,尽量和前面的类型放在一起,而不是要String args[]

看看PSVM就知道了~

public static void main(String[] args) {}

1.3 包名统一使用小写,点分隔符之间有且仅有一个自然语义的英语单词。包名统一使用单数形式,但是类名如果有复数含义,类名可以使用复数形式 
            
    com.alibaba.mpp.util / com.taobao.tddl.domain.dto

这个地方也就是说我们的所有的package(文件夹)也就是需要使用小写字母和数字来组成。

比如错误的

package openapi.oriData.Input***; //尽量脱敏

1.4 单个方法的总行数不超过80行。

说明:除注释之外的方法签名、结束右大括号、方法内代码、空行、回车及任何不可见字符的总行数不超过80行。

但是也得看设计,其实有时候业务不得不。。。超过80行,不过尽可能的封装而且使用参数化编程。

能不用if就不用 尽量使用参数化

1.5 循环体内,字符串的联接方式,使用StringBuilder的append方法进行扩展。

说明:反编译出的字节码文件显示每次循环都会new出一个StringBuilder对象,然后进行append操作,最后通过toString方法返回String对象,造成内存资源浪费。
            
Negative example:
    String result;
    for (String string : tagNameList) {
        result = result + string;
    }

        
            
Positive example:
    StringBuilder stringBuilder = new StringBuilder();
    for (String string : tagNameList) {
        stringBuilder.append(string);
    }
    String result = stringBuilder.toString();
 

这个平时确实没有注意!!!下次注意,毕竟每次都用String 来进行拼接 都是相当于新的对象!

1.6 所有的抽象方法(包括接口中的方法)必须要用javadoc注释

、除了返回值、参数、异常说明外,还必须指出该方法做什么事情,实现什么功能。 说明:如有实现和调用注意事项,请一并说明。
    /**
     * fetch data by rule id
     * 
     * @param ruleId rule id
     * @param page page number
     * @param jsonContext json format context
     * @return Result<XxxxDO>
     */
    Result<XxxxDO> fetchDataByRuleId(Long ruleId, Integer page, String jsonContext);

 

1.7 所有的类都必须添加创建者信息。

说明:在设置模板时,注意IDEA的@author为${USER},而eclipse的@author为${user},大小写有区别,而日期的设置统一为yyyy/MM/dd的格式。
    /**
     * Demo class
     * 
     * @author keriezhang
     * @date 2016/10/31
     */
    public class CodeNoteDemo {
    }

这个按照公司要求来。

1.8 注意 Math.random() 这个方法返回是double类型,注意取值的范围[0,1)(能够取到零值,注意除零异常)

如果想获取整数类型的随机数,不要将x放大10的若干倍然后取整,直接使用Random对象的nextInt或者nextLong方法。 
Negative example:
    Long randomLong =(long) (Math.random() * 10);

        
Positive example:
    Long randomLong = new Random().nextLong();

主要是注意整数类型的随机数。

1.9 避免采用取反逻辑运算符。

说明: 取反逻辑不利于快速理解,并且取反逻辑写法必然存在对应的正向逻辑写法。


2.0 除常用方法(如getXxx/isXxx)等外,不要在条件判断中执行复杂的语句

将复杂逻辑判断的结果赋值给一个有意义的布尔变量,以提高可读性。 说明:很多if语句内的逻辑相当复杂,阅读者需要分析条件表达式的最终结果,才能明确什么样的条件执行什么样的语句,那么,如果阅读者分析逻辑表达式错误呢?
            
Negative example:
    if ((file.open(fileName, "w") != null) && (...) || (...)) {
        // ...
    }
            
        
            
Positive example:
    boolean existed = (file.open(fileName, "w") != null) && (...) || (...);
    if (existed) {
        //...
    }

也就是 if判断中 最好是用一个boolean来进行判断

2.1 集合初始化时,指定集合初始值大小。

说明:HashMap使用如下构造方法进行初始化,如果暂时无法确定集合大小,那么指定默认值(16)即可。
        
 Negative example:   
   Map<String, String> map = new HashMap<String, String>();
  

Positive example: 
   Map<String, String> map = new HashMap<String, String>(16);

 

 

http://www.jmfq.cn/news/4755097.html

相关文章:

  • 网站开发的全套软件/阿里云域名查询和注册
  • 如何做网站费用多少/微商营销技巧
  • 怎样讲卖灯的网站做的好处/友情链接百科
  • 唐山企业网站建设/莆田seo
  • 做swf网站/seo在哪学
  • 购物网站建设规划论文/海淀区seo搜索引擎优化企业
  • 网站后台图片编辑器/优化大师win10
  • 网站备案期间怎么做/域名解析查询
  • 无锡 网站建设公司/怎么搭建属于自己的网站
  • 公司进门形象墙图片/苏州seo整站优化
  • 备案网站内容怎么写/网上电商平台开发
  • 定西市建设局网站/搜索引擎营销的主要方法
  • 汽车网站建设流程/网络营销的四个步骤
  • 电子商务网站开发实务石道元/站长是什么级别
  • asp.net做网站吗/军事新闻俄乌最新消息
  • 昆明网站空间/免费b站软件推广网站2023
  • 国外极简网站/网站免费搭建平台
  • 产品毕业设计代做网站/google搜索排名优化
  • 个人做网站排版/营销策划方案模板范文
  • 专门做反季的网站/郑州网站建设推广
  • 网站banner尺寸大小/全球搜索引擎排名
  • 学习软件的网站/免费推客推广平台
  • 广州建设工程质量安全网站/如何制作网址链接
  • 为什么要建设学校网站/怎么把自己的网站发布到网上
  • 固定ip做网站怎么备案/站长统计工具
  • 武汉建设银行行号查询网站/开鲁视频
  • WordPress 评论列表折叠/开封搜索引擎优化
  • 建设地方美食网站的目的/网站关键词优化外包
  • linux系统做网站/宣传网页制作
  • 佛山高端网站开发公司/2021年网络热点舆论