书里面讲的比较常见,单个人也是有不同的观点;

因为android绝大部分使用java开发的,因此java相关规范适用于android:

Google Style:

英文地址:http://google-styleguide.googlecode.com/svn/trunk/javaguide.html

中文翻译:http://www.blogjava.net/zh-weir/archive/2014/02/08/409608.html

然后说下我在android开发中的命名规范和编码规范:

先分享一个我经常参考的规范:

http://blog.csdn.net/vipzjyno1/article/details/23542617

http://blog.csdn.net/wwj_748/article/details/42347283

内容基本类似

activity命名规范:页面名称+Activity;

adapter命名规范:页面名称+Adapter;

Entity命名规范:书里面是模块或者页面名称+Entity,但是我个人习惯是接口名称作为前缀+Result(这个如果有意见,可以在评论区里面进行探讨)。

资源文件命名:

页面布局文件:和书里面不一样,我是以activity或者frament文件命名语句倒叙来命名,比如LoginActivity,laout文件会命名为activity_login.xml;

ListView的item文件以item来开头,以列表名称结尾,和书里面保持一致。

drawable文件命名规范:按下背景切换的用selector结尾;

书里面比较优秀的观点:

只有一个页面使用的文件,以页面名称作为前缀;

如果一个文件一个模块多个文件使用,以模块作为前缀;

如果多个模块使用,则以common来最为前缀。

常用控件缩写:

同如下网页里面分享的

http://blog.csdn.net/vipzjyno1/article/details/23542617

关于layout中的id命名和初始化视图控件变量的时候的命名,我和书里面保持一致,都是和layout里面的命名保持一致,有利于拷贝,粘贴。

关于颜色命名,我认为以颜色名称命名不怎么好,我的方式是color_dc181c = "#dc181c"这种形式。

关于尺寸的命名也是一样,我的命名是dimen_45dp = "45dp"这种。

android里面代码风格的统一,除了如果的规范外,可以通过模板模式,在基类对规范的风格进行统一,通过抽象方法来控制,比如initView()和initDate(),组件单击事件这种抽象的方法封装在基类里面,每个队员写代码的时候,必须继承自你的基础代码,然后在统一的代码块里面进行编写。

layout文件里面不要常量数据封装到string.xml文件里面去,不建议在布局文件里面处理。

布局预览可以通过tool来进行控制:

<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Second"
tools:visibility="visible" />

类似也有tools:text = "android"这种方式。

Adapter绑定数据一律arrayList,这点表示同意。

网络操作或者图片缓存建议使用成熟的库进行处理,而不是自造轮子处理。

建议使用application的context,而不是使用activity的context,因为容易内存泄露的。

使用常量代替枚举。

最后推荐两个规范和方式bug的工具,androidstudio的format统一code的风格checkstyle,findbugs。

第四章 android 命名规范和编码规范的更多相关文章

  1. [旧][Android] 命名规范和编码规范

    备注 原发表于2016.05.07,资料已过时,仅作备份,谨慎参考 前言 本文适用范围:已参加项目开发的人 写这篇文章的目的是为方便地对代码进行管理,让整个团队的代码规范化.这里的部分规定可能和你在其 ...

  2. 第四章Android移植环境搭建

    第四章Android移植环境搭建 这一章主要学习如何搭建 Android 移植的环境.因为 Android 底层是基于 Linux 内核的,所以本章从交叉编译环境等嵌入式开发环境的搭建开始,介绍了 B ...

  3. 《从零开始学Swift》学习笔记(Day 56)——命名规范Swift编码规范之命名规范

    原创文章,欢迎转载.转载请注明:关东升的博客 程序代码中到处都是自己定义的名字,取一个有样并且符合规范的名字非常重要. 命名方法很多,但是比较有名的,广泛接受命名法有: 匈牙利命名,一般只是命名变量, ...

  4. Android 命名规范和编码规范

    简明概要  多写注释 一.关于命名规范 对于开发项目来说肯定是要有统一的规范,然而命名规范需要做到哪几点呢? 答: 首先,不能反人类. 再来就是,要望文而知其意. 下面就来说说具体该怎么去规范我们的代 ...

  5. web项目开发 之 前端规范 --- HTML编码规范

    此文严格按照W3C规范和部分实际项目可读性,浏览器加载,性能等众多属性权衡,做出平时前端编码规范文 档.供广大web工作者参考并实施,对维护和项目扩展升级都能省时省力. 转载请注明出处,JS前端实用开 ...

  6. C#命名规则和编码规范

    用Pascal规则来命名属性.方法.事件和类名. public class HelloWorld { public void SayHello(string name) { } } Pascal规则是 ...

  7. 【ALearning】第四章 Android Layout组件布局(一)

    在本章中,我们将Android学习组件布局.在前面的章节,我们也开始使用LinearLayout布局.然后我们在布局文件更加具体的学习和理解,会. Android的界面是有布局和组件协同完毕的,布局好 ...

  8. 【ALearning】第四章 Android Layout组件布局(二)

    前面我们分别介绍和学习了LinearLayout(线性布局).FrameLayout(单帧布局)和AbsoluteLayout(绝对布局).这次我们要进行RelativeLayout(相对布局)和Ta ...

  9. 建立标准编码规则(四)-C#编码规范分类及实现

    1 现实中的问题 在任何一个公司,每个程序员编写的习惯可能都是不一样的,大到命名空间,小到变量的名字.甚至,我们去github,里面的大牛每个开源的项目的命名规则可能都不一样. 我们通常会遇到下面的问 ...

随机推荐

  1. 基于PaaS和SaaS研发的商业云平台实战 转 (今后所有的IT行业会持续集成,往虚拟化方向更快更深的发展,商业化才是这些技术的最终目的)

    背景介绍 SaaS.PaaS.IaaS等云服务模式已经被大家普遍认可,在研发过程中借力一些PaaS和SaaS平台,能够提升产品的研发速度和功能稳定程度.本文将通过真实的商业平台案例-MaxWon研发实 ...

  2. 【.NET】Linq几样特点

    LinQ 是 .net framework 3.5的技术,对集合的查询和操作十分方便,结合LinQ Provider ,可以更方便操作XML和SQL(或Entity). LinQ有6样常用的特性: 自 ...

  3. LIst去重,重写方法,继承接口。

    调用: ]).ToList(); var dic = dataThis.Distinct( new repDic()).ToList();var repList = ""; for ...

  4. 2016 ACM/ICPC Asia Regional Qingdao Online 1002 Cure

    Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission( ...

  5. 相对协议-关于src里//开头的知识

    "相对协议",也就是链接以 // 开头,前面去掉了 http: 或 https: 字样, 这样做的好处是浏览器能够根据你的网站所采用的协议来自动加载 CDN 上托管的文件!

  6. RubyMine 2016.1 下载 附注册激活码 破解版方法

    注册破解方法: 在要求输入注册的界面选择激活码,然后粘贴以下注册码: 43B4A73YYJ-eyJsaWNlbnNlSWQiOiI0M0I0QTczWVlKIiwibGljZW5zZWVOYW1lIj ...

  7. QWebView 播放网络视频

    最近想看某站的VIP视频,但是网络上的软件用着都不怎么习惯,还有些要收费(收费还不如买VIP了..),所以自己研究做个网络播放器,使用的是QWebView. 1.设置WebView ui->we ...

  8. quagga源码分析--通用库thread

    quagga是开源路由器软件,提供的用户界面与思科,华为的路由器的人机接口几乎一致,非常有学习价值,尤其是开源的协议代码,简直亮瞎了我的小眼睛. quagga的介绍,我就不赘述了,有兴趣的可以找度娘或 ...

  9. magento获取一些值的方法函数

    1显示产品列表页(列表.PHTML).echo $this->getProductListHtml(); 2.得到你的Magento的页面的路径.  echo $this->getUrl( ...

  10. PAT乙级1002. 写出这个数 (20)

    读入一个自然数n,计算其各位数字之和,用汉语拼音写出和的每一位数字. 输入格式:每个测试输入包含1个测试用例,即给出自然数n的值.这里保证n小于10100. 输出格式:在一行内输出n的各位数字之和的每 ...