专栏首页移动开发Android 代码规范(自用)

Android 代码规范(自用)

命名规范和排版

java成员类
  1. 基础类型优先排在上方
  2. java相关类排在基础类型下方
  3. android相关类排在java相关类下方
  4. 整体排序按照访问权限:private->default->protected->public 由低到高排序
  5. 以上的模块间以一个空行隔开
  6. 所有成员类命名均以小写m开头,采用驼峰命名
  7. 静态成员变量放在以上模块最上方
  8. 封装的bean类成员变量不需要以小写字母m开头,采用驼峰命名即可
类方法
  1. android中方法排序首先生命周期方法在最上方,排序按照自然生命周期的排序
  2. 其余方法按照调用先后顺序往下排列
  3. 方法体内不要多余无意义的空行,代码紧凑
文件和目录命名规范
  1. 工程目录下所有文件夹名一律用小写字母
  2. drawable目录所有图片资源一律以 ic_ 为前缀开头
  3. 同一资源图片不同尺寸一律相同命名以尺寸大小为后缀,如 ic_default_600_400 , ic_default_300_200
  4. adapter类的填充展示布局一律以 item_ 为前缀
  5. listview 和recycleview等类似头部和尾部布局概念分别以 head_ , foot_ 为前缀
  6. shape 文件 和 selector 文件 分别以 shape_ , selector_ 为前缀
色值命名

以色值本身的名字来命名,而不是以功能性的名称表达如 btn_bg, tv_bg 这样很容易有些色值重复.

常用缩写和模型的统一命名

这个需要团队成员讨论修改和补充,基本原则:对同一概念采用相同的名词表达,减少同一模型的重复封装.

缩写

驼峰

描述

id

Id

url

Url

brandId

BrandId

汽车的品牌id

其他

1.引用第三方库时,第一时间在混淆文件中加上相应配置,并加上少量描述.不得最后添加混淆配置,节约调试时间.

2.创建的java文件上方最少注明作者和创建时间等简要信息,这个可以通过设置androidstudio模板减少工作量.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 关于主线程中自动建立的Looper的思考:主线程中Looper中的轮询死循环为何没有阻塞主线程

    Android中UI线程会自动给我们建立一个looper,但是looper中的loop方法是个死循环.为什么我们在UI线程中写的代码为何都能顺利执行?为什么没有...

    夏洛克的猫
  • git 实用命令

    注:使用difftool最好配置好可视化的比较工具,本人常用beyondcompare

    夏洛克的猫
  • 点击空白处隐藏软键盘

    在点击Editext的时候安卓会弹出软键盘,在我们输入完后不点击软键盘的”完成”键的时候,软键盘有时候会一直停留在”界面”,甚至跳转到另一个”界面”上.这样体验...

    夏洛克的猫
  • 第五章:排序检索数据

    表名:products 字段:product_id、product_name、product_price、vend_id(供应商) 根据数据库设计理论,如...

    用户1134788
  • 42.python 进程间通信Queue/Pipe

    1.在前一篇文章 python进程Process与线程threading区别 中讲到线程threading共享内存地址,进程与进程Peocess之间相互独立,互...

    猿说编程[Python和C]
  • WebDriver多线程并发

    要想多线程并发的运行WebDriver,必须同时满足2个条件,首先你的测试程序是多线程,其次需要用到Selenium Server。下载位置如下图:

    流柯
  • 人群分析--Beyond Counting: Comparisons of Density Maps for Crowd Analysis Tasks

    Beyond Counting: Comparisons of Density Maps for Crowd Analysis Tasks - Counting...

    用户1148525
  • 【15】引导设计,踩不完的坑(一)

    从安卓半路出家到游戏开发已经差不多两年了,想到这两年来做游戏引导时踩过的坑,加上网上很难找到从概念到配表再带代码逻辑的引导系列文章,笔者决定利用工作之余写一个小...

    代码咖啡
  • css文字居中 原

     注意上面的dt里面包含div,否则下面的样式vertical-align:middle;无效,因为dt是浮动的,在里面包含一个div就可以解决vertical...

    tianyawhl
  • mock测试及jacoco覆盖率

    单元测试是保证项目代码质量的有力武器,但是有些业务场景,依赖的第三方没有测试环境,这时候该怎么做Unit Test呢,总不能直接生产环境硬来吧?

    菩提树下的杨过

扫码关注云+社区

领取腾讯云代金券