Android开发规范

我自恋的把这个开发规范命名为玉走刀口:玉石经过刀口才能变成美玉,代码也是如此

Android开发规范

打包规范

  1. 版本号:时间戳(精确到分钟)
    • 举例:201607011230
  2. 版本名:大版本.中版本.小版本.测试版本(注:应用中集成开发者选项,因此不再有正式版和测试版)
    • 举例:1.2.3.201607011230_channel
    • 举例:1.2.4.201607011230_channel
  3. 确认:todo
  4. 确认:混淆测试通过
  5. 确认:Switch开关:开发者模式默认初始化
  6. 确认:线上小版本为偶数,线下小版本为奇数。
  7. 确认:更新文档
  8. 确认:所有渠道包打开

SVN/GIT规范

  1. 先更新再提交
  2. 模块化提交
  3. 不提交编译不通过
  4. 不提交本地生成
  5. 慎用锁定功能
  6. 标注格式:【需求号-需求标题】-FUN/BUG/VER-子需求标题-详细描述
    • 举例:【0001-账号体系】-FUN-登录-接口调试成功
    • 举例:【0001-账号体系】-VER-1.1.0发版
  7. 不提交测试数据

命名

  • Java变量:驼峰标记法
  • 控件变量:匈牙利标记法(控件变量名跟控件id相同)
  • 布局文件:一个功能模块的的前缀一定要相同
  • 通用布局:可以以lib或者common开头
  • 图片:按照【组件效果颜色形状功能】顺序来
    • 点击反转色:组件selector颜色A_颜色B_形状_功能
    • 点击加深色:组件selector默认形状功能
    • 背景色:bg_颜色_形状
    • selector:根据情况处理 press/select/focus/enable/checkable/ 等情况

长度

  • 图片大小是8的倍数:1616 2424 3232 4848 6464 7272 9696 128128
  • 请移步:demo for dimens.xml

代码

  • 数字默认值0或者-1,字符串默认值""
  • GSON异常处理
  • 简单易懂的异常处理
  • 复杂产品逻辑,尽量在简单易懂的原则下,用if...else...分支,不提倡精巧代码
  • for...和foreach...斟酌使用
  • 常用TODO备忘://TODO temp|add|update|delete|overwrite|future|debug|test
  • 一个方法尽量控制在40-60行以内,因为这是我们人眼能扫到的最大面积,以及一张屏幕适应的面积。这一眼扫去就好像是电脑的最快一级缓存
  • 方法内不同模块用空行分割

颜色

一个设计规范并且标准的应用,会是一个基本统一的色系。

色彩知识小课堂

  1. 三基色:红、绿、蓝(RGB)
  2. 三原色
    • 光学(加法)三原色:红、绿、蓝(RGB)
    • 颜料(减法)三原色:黄、品红、青
  3. 中间色:凡是处在两个相对的色彩关系中间的色,统称为中间色
  4. 互补色:
    • 光学:以适当的比例混合而能产生白光时
    • 颜料:在混合后会变成褐色或灰色
  5. 12色环:
    • 光学12色环(色相环):以红、绿、蓝(RGB)为基础的光学互补色


      Android开发规范_第1张图片
      12
    • 伊登12色环(色相环):以红、黄、蓝为基础的颜料互补色


      Android开发规范_第2张图片
      12
    • 24色相环:以红、绿、蓝为基础的颜料互补色


      Android开发规范_第3张图片
      24

Android色彩规范

由于颜色太多,因此,我们只使用应用中的色系。因此这里要求UI设计一定要规范。我们约定如下

  • 所有颜色值使用8位十六进制表示(前2位代表透明度,后6位代表RGB)
  • 基本颜色范围:透明、黑、白、灰、红、橙、黄、绿、蓝、紫
  • 灰色5种范围
  • 红、橙、黄、绿、蓝、紫 每一个颜色三种
  • 可动态添加应用需要的颜色(如棕色,粉色,靛色)
  • 基本色值根据自己应用的颜色进行更改
  • 应用色值全部使用基本色值(没有则自定义,如棕色,粉色,靛色)
  • 基本色值一旦根据应用色系确定以后,就不再改变

请移步:demo for color.xml

未完待续(欢迎补充)...

你可能感兴趣的:(Android开发规范)