zoukankan      html  css  js  c++  java
  • android代码规范和studio配置CodeStyle

    studio配置CodeStyle可以很好的帮助我们检测代码规范性,保持大家的代码统一,来看看怎么配置和使用吧

    代码规范,自己公司的一套

    代码规范

    一、      简介

    A.    目的

    本文提供一整套编写高效可靠的 Java代码的标准、约定和指南。它们以安全可靠的软件工程原则为基础,使代码易于理解、维护和增强。而且,通过遵循这些程序设计标准,你作为一个 Java软件开发者的生产效率会有显著提高。经验证明,若从一开始就花时间编写高质量的代码,则在软件开发阶段,对代码的修改要容易很多。最后,遵循一套通用的程序设计标准将带来更大的一致性,使软件开发团队的效率明显提高。

          

    Note: 规范编码的目的是让开发者更容易理解其他人的代码,而不是约束你编码的方式

    B.    范围

    本指南仅适用于使用Java编写的Android程序代码。

    C.    参考资料

    http://www.oracle.com/technetwork/java/codeconvtoc-136057.html

    http://source.android.com/source/code-style.html

     

     

    二、      快速入门

    l  驼峰式命名(大小写交替)

    错误:

    public classmyClass

    publicinterface foo

    public finalstatic int max = 100

    public intFooValue

    正确:

    public classMyClass

    publicinterface IFoo

    public finalstatic int MAX = 100

    public intfooValue

    l  使用Javadoc识别的注释

    在函数声明前添加注释(输入”/**”+回车)

    l  精简函数体(最好不要超过40行)

    l  局部变量随用随声明(尽量缩小变量的作用域)

    l  每行最长100字符

    l  缩进用4个空格代替TAB

    l  成员变量名用m开头,static变量名用s开头

    l  前大括号“{”不要单占一行

    错误:

    if(condition)

    {

    //dosomething

        }

    正确:

    if(condition) {

        //do something

    }

    l  多利用标准注解

    错误:

    publicvoidonCreate(Bundle savedInstanceState) {

    正确:

    @Override

    publicvoidonCreate(Bundle savedInstanceState) {

    l  少用不常见缩写

    错误:opnDlg

    正确:openDialog

    三、      命名

    A.  Java命名规范

    命名应符合驼峰式规则,利用大小写字母交替来区分名称中的不同单词,即应采用小写字母,但类名、接口名以及任何非初始单词的第一个字母要大写。

    1.        尽量使用完整的英文描述符,采用适用于该领域的术语

    2.        采用大小写混合使名字可读

    3.        尽量少用缩写,但如果用了,要明智地使用。

    4.        避免使用类似的名字,或者仅仅是大小写不同的名字

    类型

    规则

    示例

    包名

    全部小写字母,URL倒序

    package com.domain.project

    类名

    首字母大写,使用描述性强的名词,避免使用缩写,除非该缩写十分通用(Url、Html)

    class Raster;

    class ImageSprite;

    接口

    同上。通常以字母I开头。回调接口等特殊情况可不加I。

    interface IRasterDelegate;

    interface IStoring;

    interface OnClickListener;

    方法

    使用动词,驼峰式命名,首字母小写

    run();

    runFast();

    getBackground();

    变量

    使用有意义的简短的单词,驼峰式,首字母小写。

    成员变量m开头,JavaBean例外。

    static变量s开头。

    int i;

    float myWidth;

    int mPrivate;

    static MyClass sSingleton;

    常量

    全部大写,用下划线分割单词,static final修饰

    static final int MIN_WIDTH = 4;

    B.  Android命名规范

    类型

    规则

    示例

    Activity

    XxxxActivity

    MainActivity

    View

    XxxView,XxxLayout

    RedTextView、BluetoothDialog

    Service

    XxxService

    BroadcastReceiver

    XxxxReceiver

    工具方法类

    Utils或Manager为后缀

    ThreadPoolManager、LogUtils

    基础类                    

    BaseXxx

    BaseActivity、BaseFragment、BaseDao

    布局xml

    全部小写,以下划线分割,使用名词命名。Activity或Fragment的布局文件必须与其类名对应,对应规则为:将所有字母都转为小写,将类型和功能调换。

    activity_main.xml

    fragment_homework.xml

    dialog_bluetooth.xml //对话框

    item_message.xml //列表Item

    vw_titlebar.xml //其他布局文件

    布局id

    全部小写,以下划线分割,view缩写_view的逻辑名称

    layout_city、tv_name、btn_submit、img_head、list_message

    图片文件

    全部小写,以下划线分割。

    xxxx_checked.png

    xxxx_focused.png

    xxxx_selected.png

    xxxx_pressed.png

    xxxx_disabled.png

    xxxx_normal.png

    Drawable xml

    selector_xxx、shape_xxx


    四、     注释

    1.        每个类必须有文件头注释。简要说明类的作用,注明作者和创建时间。标准模板:

    /**

     * Filedescription.

     *

     * @author ${USER}

     * @date ${DATE}

     */

    2.        大部分方法都需要方法注释,一些不言自明的方法除外。简要说明方法作用,并解释参数、返回值、抛出异常。方法注释请使用JavaDoc标准。例如:

    /**

    * Description.

    *

    * @param arg1 description

    * @param arg2 description

    * @return description

    * @throws Exception description

    */

    public int getFoo(int arg1, booleanarg2) throws Exception {

       return 0;

    }

    3.        关键逻辑或者较复杂的逻辑处,应该添加必要的注释。单行注释使用”//”,多行注释使用/**/。

    4.        注释必须在程序改变时实时更新。

    5.        简单明了,确保任何程序员都可以读懂。

    五、      其他规范

    1.        所有文件编码格式为UTF-8。

    2.        变量的作用域应该尽量小,需要时才声明,并尽快进行初始化。

    3.        前大括号不要单独占用一行,不要省略单行代码块的大括号。

    正确:

    if (condition) {

        statements;

    }

    错误:

    if (condition)  //没有大括号

    statement;

    错误:

    if (condition)  //前大括号单独占用一行

    {

    statement;

    }

     

    4.        尽量少使用缩写,除非该缩写很常见(Html、Url)

    5.        缩进使用4个空格替代Tab。

    6.        编写代码后必须格式化。AndroidStudio默认格式化快捷键:Ctrl+Alt+L。

    7.        在代码中逻辑性代码块的起始、结尾处,都应该加入空行,并在起始处写注释。

    相对独立的程序块之间必须加空行。

    8.        一行代码不超过100字符。超过100字符,请换行或者提取变量。

    9.        方法体不超过40行。若超过,则应考虑拆分成多个方法。

    10.    尽量避免使用枚举类,使用常量代替。

    11.    只要是合法的,就把@Override注解给用上。

    12.    规范TODO使用,加上日期和描述,并及时解决删除。AndroidStudio中可以敲todo来使用标准模板。例如:

    // TODO: 2017/1/5简单描述

    13.    采用统一的LogUtils来输出Log。输出的Log要简明扼要。充足的log可以便于定位错误,但Log太多会影响程序性能(I/O耗时)。正式版本应该关闭Log开关。

    14.    Java文件中不允许有多余的import,不允许importjava.io. *

    15.    Warning要解决。

    16.    不允许硬编码,状态值必须定义常量,并添加注释。

    配置CodeStyle

    Android Studio统一配置

     

    1.   配置CodeStyle

    按照上图标注顺序,导入AndroidCodeStyle.xml文件。

    2.   工程文件编码统一为UTF-8

     

    3.   注释模板

    注意:请将${USER}修改为自己的名称,模板前后不要有多余的空格与换行符。

    /**

     * File description.

     *

     * @author ${USER}

     * @date ${DATE}

     */

    4.   安装使用CheckStyle插件

     

    安装完成后,重启AndroidStudio。然后添加CheckStyle脚本:

     

    配置实时检查

     

    使用方法简介:

    -        配置好实时检查后,在编辑器中,不符合风格的代码会直接出现警告:

     

     

     

     

    -        在Java文件中右键,点击如图选项,即可查看当前文件所有不符合风格的代码段:

  • 相关阅读:
    1026 Table Tennis (30)
    1029 Median
    1025 PAT Ranking (25)
    1017 Queueing at Bank (25)
    1014 Waiting in Line (30)
    1057 Stack (30)
    1010 Radix (25)
    1008 Elevator (20)
    字母大小写转换
    Nmap的基础知识
  • 原文地址:https://www.cnblogs.com/wangfeng520/p/6385827.html
Copyright © 2011-2022 走看看