| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 移动开发 -> Android 架构设计(五):命名规范与层级规范 -> 正文阅读 |
|
[移动开发]Android 架构设计(五):命名规范与层级规范 |
同系列传送门: Android 架构设计(一):设计模式分析_深海呐的博客-CSDN博客_安卓开发框架设计模式 Android 架构设计(二):分包和文件结构_深海呐的博客-CSDN博客 Android 架构设计(三):技术选型_深海呐的博客-CSDN博客_android 技术选型 Android 架构设计(四):组件化?_深海呐的博客-CSDN博客 命名规范:程序包: com.xxx.xxx主要强调其唯一性,一般使用公司域名/简写+APP简写,全小写。 比如:
业务包: xxx一般为全小写的单个单词,主要强调其业务范围,业务类型或者功能 比如:
类:XxxXxx一般使用大驼峰命名法。主要强调该类的作用与所属类型 比如:
方法:xxxXxx一般使用小驼峰命名法。主要强调具体功能与动作 比如:
变量:mXxx & xxxXxx一般使用小驼峰命名法。主要强调见名知义 ? ?全局变量 : ????????通常在前面加一个“m”,比如:
? ?局部变量 ????????通常为实例的小写,比如:
常量:XXX_XXX 一般使用全大写字母,并使用下划线隔开每一个单词 比如:
命名规范的通用禁止:关于命名规范的通用禁止,深海总结了以下三点: 1.非特殊情况,禁止使用拼音和数字; 错误示范:变量yongHuData(用户数据)? ?类Activity1? ? 变量x1 x2? x3? 特殊情况举例:包名com.taobao.taobao? ?部分包名用了拼音确实正常情况,这和公司的简写有关,也和部分大项目的立项命名有关。还有部分变量或者类用了拼音是正常情况,比如某某三方SDK的实例变量,或者公司项目立项类型的命名,XXXUtils,XXXActivity,这里的XXX代表公司项目简写,可能是拼音,也可能是特殊含义的字母。 2.见名知义,禁止过度简写,禁止长度过长; 错误示范: ????????过度简写:StringBuilder sb = new StringBuilder() ? ? ? ? 长度过长:StringBuilder userDiskFileWriterStringBuilder = new StringBuilder() 3.方法名和变量名禁止首字母大写,便于区分类和变量的区别 错误示范:StringBuilder UserStringBuilder= new StringBuilder()? 层级规范:类层级: ????????所有类必须放在规定的包下面。 ????????比如:activity包下只允许放XxxActivity类,utils包下只允许放XxxUtils类 代码层级: ? ? ? ? 类中的代码不可以职责混乱和交叉。 ? ? ? ??比如:某Activity类代码中参杂了很多工具方法,这些方法本来要放在工具类中。这种错误导致别的类使用该方法时无法复用,更加错上加错的行为是别的类用到时去copy方法。 更加细节的层级问题深海有专门总结程序设计的六大基本原则,请移步: 结语: 关于架构设计的总结,深海目前先总结到这里,以后会不会再写《架构设计(六)》《架构设计(七)》呢?其实我没有想好,因为这里面的东西太多了,自己知道的却很少,但是深海愿意不断的学习和不断的进取,希望能够跟大家分享更多的想法。 如果您感觉深海写的不错的话,请给文章点个赞吧,感谢各位的支持! |
|
移动开发 最新文章 |
Vue3装载axios和element-ui |
android adb cmd |
【xcode】Xcode常用快捷键与技巧 |
Android开发中的线程池使用 |
Java 和 Android 的 Base64 |
Android 测试文字编码格式 |
微信小程序支付 |
安卓权限记录 |
知乎之自动养号 |
【Android Jetpack】DataStore |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 1:29:07- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |