Android代码命名规范

目录

  • 目录
  • 1、为什么 规范 Android 代码命名?
  • 2、Android需要命名的代码(对象)有哪些?
  • 3、具体命名规范
    • 3.1、包
    • 3.2、类
    • 3.3、变量
    • 3.4、方法
    • 3.5、参数名
    • 3.6、资源
      • 3.6.1、布局文件资源
      • 3.6.2、图片资源
      • 3.6.3、参数值资源
      • 3.6.4、动画资源
    • 3.7、额外
  • 4、附录:常见使用单词缩写表

目录

在这里插入图片描述

1、为什么 规范 Android 代码命名?

  • 增强代码的可读性
  • 增强代码的可维护性

正由于上述两个作用,从而使得 开发效率 & 维护效率 得到大幅度的提高。

2、Android需要命名的代码(对象)有哪些?

在这里插入图片描述

3、具体命名规范

下面,我将对 Android 代码对象中的命名规范进行详细讲解

注:由于 Android 主要用 Java 实现,所以Android规范会涵盖部分Java规范

3.1、包

基础规则:小写、单词间连续无间隔、反域名法(分为4级,具体如下图)

说明
模板 : com.x.y.z
com = 1级包名 = 固定com
x = 2级包名 = 公司/个人
y = 3级包名 = 应用名
z = 4级包名 = 功能模块名
示例
com.davis.wechat.login

第4级包名会随着功能的不同而不同。下面我列举出一些常见 & 需要规范的4级功能包名:

常见 & 规范的 第四级包名
(基础规则:小写、单词间连续无间隔、反域名法)
功能模块命名规则功能模块命名规则
Activitycom.x.y.activity基础共享com.x.y.base
Service服务com.x.y.serviceAdapter类(适配器)com.x.y.adapter
广播服务com.x.y.receiver数据库操作com.x.y.db
模型类com.x.y.model公共工具方法com.x.y.util
自定义Viewcom.x.y.viewJavaBeancom.x.y.bean

3.2、类

在这里插入图片描述

3.3、变量

基础规则:

  • 类型 = 名词 / 名词短语;
  • 形式 = 驼峰形式中的 小骆驼拼写法(LowerCamelCase)。

即名称中的第1个词的首字母小写,后面每个词的首字母大写,如androidStudioTool

在具体命名变量时,会根据该变量的类型不同而 附加额外的命名规则。具体如下图:
在这里插入图片描述

3.4、方法

基础规则:

  • 类型 = 动词 / 动词短语;
  • 形式 = 驼峰形式中的 小骆驼拼写法(LowerCamelCase)。

即名称中的第1个词的首字母小写,后面每个词的首字母大写,如androidStudioTool

在具体命名 方法名时,会根据该方法名的作用不同而 附加额外的命名规则。具体如下图:
在这里插入图片描述

3.5、参数名

基础规则:

  • 驼峰形式中的小骆驼拼写法(LowerCamelCase)

即名称中的第1个词的首字母小写,后面每个词的首字母大写,如androidStudioTool

附加命名规则: 功能名,如userName

3.6、资源

Android的资源包括:
在这里插入图片描述
在这里插入图片描述
下面,我将对每种Android资源的命名规则进行详细讲解:

3.6.1、布局文件资源

在这里插入图片描述在这里插入图片描述

3.6.2、图片资源

在这里插入图片描述

3.6.3、参数值资源

在这里插入图片描述

3.6.4、动画资源

在这里插入图片描述

3.7、额外

除了上述的命名规范以外,Android 中还有一些全局通用的命名规范:
在这里插入图片描述

4、附录:常见使用单词缩写表

使用单词缩写的原则:只使用约定俗成的单词缩写

严禁自由缩写单词

具体如下图:
在这里插入图片描述


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/446909.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Idea中搭建Resin运行环境(Mac)

一、背景 idea中搭建Resin运行环境,可以在idea中通过点击Run按钮直接调试应用。 二、Resin下载地址 下载地址:https://caucho.com/products/resin/download/gpl#download 我下载的是tar.gz的,通过tar -zxvf命令解压到自己mac的任意目录下…

Java牛客专项练习2020.12.10

TreeSet subset()方法: subset(from,true,to,true),返回从from元素到to元素的一个集合,true判断是否包含边境元素 Java与C Java与C都有三个特征: 封装,继承,多态 抽象类与接口 1.抽象类可以有构造方法,但不能new;接口没有构造方法 2.抽象类中可以有普通成员变量int x等,接…

Idea中搭建Wildfly(JBoss)运行环境(Mac)

目录一、简介二、下载Wildfly(JBoss)三、配置Idea四、调试一、简介 首先说一下在linux环境,只需要将war包上传到 wildfly-8.2.0.Final/standalone/deployments 目录,然后到 wildfly-8.2.0.Final/bin 目录下 ./standalone.sh&…

一个简单JavaAgent的实现

一、什么是javaagent javaagent是一个JVM“插件”,一种专门精心制作的.jar文件,它能够利用JVM提供的Instrumentation API。 1.1、概要 Java Agent由三部分组成:代理类、代理类元信息和JVM加载.jar和代理的机制,整体内容如下图所…

Openai的openai新版本调用方式

最近大家有没有发现Openai的openai已经更新到1.6.1了,而且API的调用方式发生了巨大的变化,下面来看看openai新的调用方式吧。 欢迎关注公众号 module ‘openai’ has no attribute ChatCompletion. 提示openai的版本过低。(pip install -U openai) 1. Chat API from openai…

计算机系统基础 计算机系统的基本组成与基本功能

基础知识点 1.1946年第一台通用电子计算机ENIAC诞生 2.冯.诺依曼结构: 组成:输入设备,输出设备,存储器,运算器,控制器 3.现代计算机结构模型: 组成 CPU中央处理器 PC程序计数器 IR指令寄存器 ALU算数逻辑部件 GPRs通用寄存器组 MAR存储器地址寄存器 MDR存储器数据寄存器 知…

Android UI卡顿监控

一、背景 应用的使用流畅度,是衡量用户体验的重要标准之一。Android 由于机型配置和系统的不同,项目复杂App场景丰富,代码多人参与迭代历史较久,代码可能会存在很多UI线程耗时的操作,实际测试时候也会偶尔发现某些业务…

物理 质点运动学

常用公式 重点 1.求轨道方程:消去时间t 2.dr---->位置矢量大小的增量 3.求方向:tanax/y 4.求位置也就是求位移rxiyj即可 习题解析 1.求运动时一定要求出加速度,变速与匀速就是看a 2.求位移时必须看X0是不是为0,如果不为0,求位移与路程时都要减去x0 3. 记住等号两边统一…

使用CLion的时候,对于cmake的使用

问题概述 使用CLion的时候,一个大的项目会有一个总的CMakeLists.txt,这个是控制整个项目的编译环境,但是针对测试的代码会有自己的单独的CMakeLists.txt,这个单独的cmake文件是控制自己的程序所需要的环境即使是编译单独的测试程…

Android NDK之静态/动态注册Native方法

一、简介 关于NDK有两种方法注册:静态注册和动态注册。 静态注册: 就是直接在Java文件里写个native方法 然后再c/c文件中实现这个方法就行了;动态注册: 就是为了不要写很长的方法名,用JNI_OnLoad方法实现预注册&…

概率论 条件概率 全概率 贝叶斯公式

常用知识点 条件概率 1.P(B|A)1表示A发生的情况下B必然发生 A属于B 2.可列可加性 P(BUC|A)P(B|A)P(C|A) 3.P(B|A)的样本空间为A,A与B都发生了 大题解答思路 1.首先设取出一件商品为次品为事件A 2.写B1:甲生产,B2:乙生产 PB1…PB2… P(A|B1)…P(A|B2)… 3.写PAPB1*P(A|B1)……

C语言学习:%d、2d、02d、.2d的区别

%d:为普通的输出。 %2d:按宽度为2输出,右对齐方式输出。若不够两位,左边补空格。 %02d:同样宽度为2,右对齐方式。位数不够,左边补0。 %.2d:从执行效果来看,与%02d一样…

计算机系统基础 数据的表示和存储

数制和编码 1.信息的二进制编码 2.进制转换必须要知道: 1)使用哪一个进制(二,八…) 2)定点数还是浮点数(关于小数点的问题) 3)编码问题----原码,补码,反码,移码 3.进制转换 1)R进制转十进制(按权展开) ----R进制 ----八进制与十六进制 ----R转换为十进制 2)十进制转换为R…

物理 常见力与牛顿三定律

常用知识点 动量 dmvdmvdvm p-mv- f-dp-/dtma- 开普勒第三定律 r1^3__k只与恒星质量有关 T^2 总结 1.电梯匀速就相当于在地面,加速或减速就会有一个a 2.当合外力为0时,物体保持静止或匀速直线运动 3.力是改变物体运动状态的原因 4.重力在地球两极最大,赤道最小,随纬度…

Java命令:jmap — 打印指定进程的共享对象内存映射或堆内存细节

文章目录一、前言二、命令介绍三、使用实例1、jmap -heap [pid]2、jmap -histo[:live] [pid]3、jmap -histo[:live] [pid] |grep "[关键字1]\|[关键字2]"4、jmap -dump:live,formatb,filea.log [pid]四、总结一、前言 jdk安装后会自带一些小工具,jmap命令…

概率论 一维随机变量

随机变量 离散型随机变量:有限个或无限可列个 连续型随机变量 分布函数F(X) 范围是[a,b) 包含能取到a以及a之前的值的概率相加 分布律(概率分布) 1.所有概率相加为1 2.WX-1,计算出每一个对应的W,然后如果有相同的W就合并其概率,最后一一对应P(x)即可 概率密度函数(密度) …

JAVA牛客专项练习2020.12.31

1.使用迭代器的remove方法,可以边遍历边删除元素 2.线程 启动线程 new thread().start() new thread(new runnable()).start() 普通方法&#xf…

安卓牛客专项练习2020.12.31

1.窗口dialog或半透明 2.Pracelable性能比serializable高

安卓系统体系架构

1.大体:共有四层,系统应用层,JAVA API层,安卓系统运行层,Linux内核层 具体: 系统应用层(System Apps) Java API 框架层(Java API Framework) Android系统运行层(包括Andr…