【软件开发规范六】《Android开发编码规范》

简介: Android开发编码规范

目录

一.工程包命名

二.类文件命名

三. 图片等资源文件命名

四.程序中变量 常量命名


一.工程包命名

工程包名

com. 公司名称简写.应用名称简写(拼音或者英文).activity  放工程的主Activity 以及BaseActivity

com. 公司名称简写.应用名称简写(拼音或者英文).activity.list  在activity下面建一个文件夹list放所有的ListActivity  

com. 公司名称简写.应用名称简写(拼音或者英文).adapter 放和主activity对应的adapter 以及通用adapter

com. 公司名称简写.应用名称简写(拼音或者英文).adapter.item 放和listAcitivity对应的Adapter

com. 公司名称简写.应用名称简写(拼音或者英文).bean  放javabean类

com. 公司名称简写.应用名称简写(拼音或者英文).util  放各种工具类  (图片,字符,时间,dalog 等)

com. 公司名称简写.应用名称简写(拼音或者英文).net  放和服务器交互的类

com. 公司名称简写.应用名称简写(拼音或者英文).view 放 自定义view的类

com. 公司名称简写.应用名称简写(拼音或者英文).db  放 本地数据库操作相关的类


当然 上面的公司名称可以换成别的 ,尽量用简写或者英文  比如qq:  就可以写成 com.tencent.qq.activity,大家明白这个意思就好。


二.类文件命名

1. activity

activity 我习惯分为两种考虑, 一种是列表数据的, 第二种是普通的activity 。这么分有个好处就是找这个类的时候方便。当你看到这个界面时列表数据的时候 直接搜索listActivity就能过滤掉一大部分,然后再筛选会简单很多。这个大家从上面我定义的包名中就看出来了。

所以 activity的命名是 : 功能简写+Activity

     功能简写+ListActivity

登录:LoginActivity

用户列表:UserListActivity


2. layout xml

全部小写,用_隔开     xml命名 分为几种

主Activity用到的xml : activity_activity名称简写.xml       activity_login.xml

include的xml:include_功能简写.xml             include_top_search.xml

adapter中用到的xml:item_adapter名称简写.xml   item_user_list.xml

dialog用到的xml:dialog_功能简写.xml                dialog_show_tips.xml

自定义view用的xml  :view_view名称简写.xmlview_header.xml  这个就是共用的view  也可以用common_view名称简写.xml替换


附加:xml中 控件id命名

模块名称_view的逻辑名称_view缩写

用户名EditText :   login_username_et

登录确认Button:       login_confirm_btn

LayoutView   lv

RelativeView rv

EditText et

TextView tv

Button btn

ImageButton imgBtn

ImageView iv

CheckBox   cbx

RadioButton rbtn

其他的类似  不一一列举  这些都不是规定死的 ,大家自己定义,前提能区分开不同的控件并且能让别人看懂。


3.工具类等

工具类功能简写+Util     : DialogUtil.java   、  TextUtil.java

三. 图片等资源文件命名

背景图片: bg_功能_说明  bg_login_commit

图标图片: icon_功能_说明  icon_tab_set

功能也可以换为 acvitiy名称简写

共用的图片 前面都加 common

四.程序中变量 常量命名

在说这个之前要给大家补充一下  标识符命名。就是变量和常量名字

我一般就用两种:

1 驼峰(Camel)命名法:又称小驼峰命名法,除首单词外,其余所有单词的第一个字母大写。

   protected TextView mWatchCountInfoTv;

   protected TextView mNicknameTv;

   protected TextView mLocationTv;

   protected TextView mVideoTopicTv;

   protected TextView mVideoTitleTv;

2.下划线命名法:单词与单词间用下划线做间隔。

   private static final int MSG_SHOW_GIFT = 20;

   private static final int MSG_SHOW_EXPRESSION = 21;

   private static final int MSG_SHOW_RED_PACK = 22;

   private static final int MSG_SHOW_JOIN_USER = 23;


1. 静态常量  

  名称都是 功能说明_类别   统一下划线命名法

   private static final int MSG_SHOW_GIFT = 20;

   private static final int MSG_SHOW_EXPRESSION = 21;

   private static final int MSG_SHOW_RED_PACK = 22;

   private static final int MSG_SHOW_JOIN_USER = 23;

2.变量

这个分为两种  全局变量 还是 局部变量

全局变量 以m开头,局部变量不用。

全局变量:

   protected VideoEntity mCurrentVideo;

   protected int mShareType;

   protected MyHandler mHandler;

   protected int mLikeCount;

   protected int mCommentCount;

局部变量:

  TextView tview = new TextView();

  Button button = new Button();


上面已经介绍过 xml中id命名的方法了

所以变量和那个规则基本一致: 功能逻辑名称简写+view 简写

   private ImageView mPhoneVerifyIv;

   private Button mConfirmBtn;

   private EditText mPhoneNumberEt;

   private TextView mSelectCountryNameTv;

   private TextView mSelectCountryCodeTv;

暂时先写这些,后面补上,我写的不是标准规范,大家都可以自己制定一套 适合自己团队用的规范。只要通俗易懂,让别人一眼看上去整个项目不乱就可以。

相关文章
|
1月前
|
移动开发 前端开发 Android开发
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
235 12
【02】建立各项目录和页面标准化产品-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
1月前
|
移动开发 JavaScript 应用服务中间件
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
203 5
【06】优化完善落地页样式内容-精度优化-vue加vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
1月前
|
移动开发 Rust JavaScript
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
512 4
【01】首页建立-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
|
2月前
|
开发工具 Android开发
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
478 11
X Android SDK file not found: adb.安卓开发常见问题-Android SDK 缺少 `adb`(Android Debug Bridge)-优雅草卓伊凡
|
1月前
|
移动开发 Android开发
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
【03】建立隐私关于等相关页面和内容-vue+vite开发实战-做一个非常漂亮的APP下载落地页-支持PC和H5自适应提供安卓苹果鸿蒙下载和网页端访问-优雅草卓伊凡
119 0
|
2月前
|
Java 开发工具 Maven
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
【01】完整的安卓二次商业实战-详细的初级步骤同步项目和gradle配置以及开发思路-优雅草伊凡
194 6
|
4月前
|
安全 数据库 Android开发
在Android开发中实现两个Intent跳转及数据交换的方法
总结上述内容,在Android开发中,Intent不仅是活动跳转的桥梁,也是两个活动之间进行数据交换的媒介。运用Intent传递数据时需注意数据类型、传输大小限制以及安全性问题的处理,以确保应用的健壯性和安全性。
354 11
|
4月前
|
移动开发 Java 编译器
Kotlin与Jetpack Compose:Android开发生态的演进与架构思考
本文从资深Android工程师视角深入分析Kotlin与Jetpack Compose在Android系统中的技术定位。Kotlin通过空安全、协程等特性解决了Java在移动开发中的痛点,成为Android官方首选语言。Jetpack Compose则引入声明式UI范式,通过重组机制实现高效UI更新。两者结合不仅提升开发效率,更为跨平台战略和现代架构模式提供技术基础,代表了Android开发生态的根本性演进。
176 0
|
8月前
|
JavaScript Linux 网络安全
Termux安卓终端美化与开发实战:从下载到插件优化,小白也能玩转Linux
Termux是一款安卓平台上的开源终端模拟器,支持apt包管理、SSH连接及Python/Node.js/C++开发环境搭建,被誉为“手机上的Linux系统”。其特点包括零ROOT权限、跨平台开发和强大扩展性。本文详细介绍其安装准备、基础与高级环境配置、必备插件推荐、常见问题解决方法以及延伸学习资源,帮助用户充分利用Termux进行开发与学习。适用于Android 7+设备,原创内容转载请注明来源。
1985 77
|
5月前
|
安全 Java Android开发
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡
264 0
为什么大厂要求安卓开发者掌握Kotlin和Jetpack?深度解析现代Android开发生态优雅草卓伊凡

热门文章

最新文章