浅谈Android编码规范
来源:互联网 发布:深圳咫尺网络 编辑:程序博客网 时间:2024/06/04 01:18
到今天为止,我参加工作也差不多快三年时间了,中间看别人的代码也看过不少。有的时候真的能被气死。。。但是工作需要,你不看还不行,只能硬着头皮去看。由此及彼想想,自己刚参加工作那会儿写的代码,估计也能气死活人吧,哈哈...今天我一个朋友找我帮忙,他们公司的Android开发年后没有回来上班,但是项目又紧,现去招人肯定是来不及了,就喊我过去给帮忙,争取修改修改能先拿给客人体验再说。然后我就过去了,然后就没有然后了,2017年的第一个周末就泡汤了,本来想着就一个小BUG,过去给他改改就差不多了,撑死个把小时。但是...我错了,错的离谱,光是看那个哥们儿的代码我就看了一上午,中间是各种死去活来,生不如死,恨不得手撕了他...因此,今晚我说成啥也要总结下关于代码规范的问题,依此成为一个文档,希望能帮助更多的人去规范自己,当然了,方便你我他的前提还是规范自己本人。
修饰符的顺序
1.修饰符的顺序:类和成员的修饰符如果有多个的话,一定要按照JAVA语言的规范去定义排序。
public protected priate abstract static final transient volatile synchronized native strictfp
2.switch语句:除了要注意代码缩进以外,还要注意两个case之间如果不需要break语句时,一定要加上注释,方便维护者理解。同时结尾一定要加上default语句
3.代码缩进:一定要根据逻辑,代码块儿做好代码的缩进
4.行字符数的限制,由于显示器的不同,一般情况下我们设置行字符数限制为100最好
5.多使用花括号:我实在不明白为什么会有人在if语句后面不加花括号,是为了彰显自己的NB么?虽然编译可以通过,但是你知不知道这样会让维护者很抓狂的.所以我建议在if,else,for,do,while的语句使用时一定要结合花括号去使用。
命名约定
这个已经是老生长谈了,但是在这里不说还不行,总是有人为了图省事就给你定义一个i、j、k,如果说你仅仅是在for里面去用了我也就不说了,今天在那哥们儿代码里面尼玛定义的一个全局变量i,什么鬼?我宁可你用拼音给我定义 。
类名定义要遵循大驼峰命名法,就是每个单词的首字母要大写,比如:MyClass、LoginAtivity。
方法名和变量名要遵循小驼峰命名法,就是第一个单词的首字符要小写,后面的每个单词的首字母大写,比如:myFristLoginSign、downloadDataDetai
常量定义时要全部大写,单词之间用下划线隔开,比如:static final String MY_SERVER_URL_TEST = "http://192.168.119.30"
Android布局命名
布局文件命名规则一般使用“前缀_逻辑名"的方式,单词全部用小写,比如:
Activity的布局文件:activity_login、activity_regist、...activity_xxx
Fragment的布局文件:fragment_home、fragment_personal、...fragment_xxx
自定义控件的布局文件:view_detail、view_xxx
对话框的布局文件:dialog_xxx
列表(listview、recyclerview)的item布局文件:item_xxx
资源文件命名
资源文件的命名一般遵守”前缀_模块名_逻辑名称“的格式定义,单词全部用小写,比如:
按钮:btn_xxx.png
图标:ic_xxx.png
背景图片:bg_xxx.png
间隔线:divider_xxx.png
起名的重要性
不管是在定义类的时候还是在定义方法名或者变量名的时候,一定要起一个让人一眼看到就明白是什么意思的名字,别整那些稀奇古怪的字符串来滥竽充数,比如:
主界面:MainActiviy
主fragment:HomeFragment
下载服务:DownloadSerVicec
变量:day,number,time,等等有意义的单词
言简意赅,让别人看的时候没有一点的滞涩感。
好了,说那么多,也不是说吐槽别人呢,谁都是从那时候过来的,我这也算是给自己敲个警钟吧,希望自己以后能严格要求自己。
- 浅谈Android编码规范
- 浅谈字符编码规范
- 浅谈Javascript编码规范
- android 编码规范,命名规范
- android编码规范
- Java/Android编码规范
- Android编码规范
- Android 编码规范
- Android编码规范
- Android编程编码规范
- Android 开发编码规范
- Android编码规范
- Android编码规范
- Android编码规范
- Android开发编码规范
- Android 编码规范
- Android编码规范
- Android编码规范
- 增强for循环
- 【CodeForces 729C】【二分+贪心】Road to Cinema 题解
- Java并发编程系列(七)---- 线程池的使用
- 移动开发必知必会的六大数据统计平台(入门篇)
- 文章标题
- 浅谈Android编码规范
- html5shiv
- Android Fragment回退栈的使用
- 简单理解smarty原理
- MPAndroidChart 3.X 自定义柱形图
- java中 static,final,transient,volatile关键字的作用
- 算法训练 图形显示
- Microservice架构模式简介
- Tensorflow安装与helloWolrd——windows下docker安装tensorflow利用Jupyter编程