四种常见的命名法

比较Java和c#的命名规范的不同点

常量用大写

java方法首字母不大写,应该小写

函数行数限制

不要用拼音

参照物,Android源码

看源码工具,SourceInsight 和 Beyond Compare

import中同类的放在一起

Android 文档通过java.doc 实现

私有程序变量命名最前面加m

目录规范

系统目录规范,项目一级文档

  • Deployment
  • Requirement (需求相关的文档)
  • Designn
  • Planning
  • Help
  • Log
  • Source
  • Publish
  • Test

源代码命名规范

  • 目录即包(package)
  • 目录下所有类都属于此命名空间:一主类一文件
  • 目录层次递归
  • 一般系统命名空间目录尽量不要超过3层

代码命名规范

命名方法

  • 匈牙利命名法:strMyName,mMyName,int intMyName 用一个前缀来标志一些东西,常用于VB6

  • Pascal命名法:每个单词的首字母大写 MyName

  • Camel命名法:驼峰命名法 首字母小写,其他的首字母大写 java变量命名 myName

  • 下划线命名法:s_MyName,m_Name

私有成员变量 Pascal命名+前缀m
静态成员变量 Pascal命名+前缀s,在方法中则不加s
局部变量 Camel命名法,或者用下划线开头加Pascal方法
方法参数 Camel命名法,前缀用p
循环中的变量 可以用无意义的字母

注释:文件,类,方法,方法参数,变量,属性都要注释
文件和类的注释一定要包含如下元素:Name,Descrition,Version,Date,Author,Change,Copyright
遵循JavaDoc标准

编码逻辑规范

避免将多个类放在一个文件里面,除非是一次性使用的内部类
一个方法的代码长度最好不要超过35行
原则上,尽量不要手动修改机器产生的代码
Final String 取代直接String 同理int
不推荐在循环语句中,进行直接的return操作
不要用goto
处处要考虑异常
仅对需要对外公布采用public,其余的用private or internal
尽量不要提供public and protected 程序员变量,使用属性代替他们
不要在系统自动生成的函数直接写业务代码,最好自定义函数,然后调用
总是使用接口,推荐使用显示接口实现
在switch语句中总是要有default字句来显示信息

【Android学习】Android编码规范的更多相关文章

  1. android学习——android架构

    android架构:在了解全局的情况下进行细致化的分析才能更有效的学习android的运行原理,才能更深刻的理解android开发: 1.架构图直观 2.架构详解 2.1.Linux Kernel 2 ...

  2. android学习——Android Layout标签之-viewStub,requestFocus,merge,include

    定义Android Layout(XML)时,有四个比较特别的标签是非常重要的,其中有三个是与资源复用有关,分别是<viewStub/>, <requestFocus />, ...

  3. Android开发之——编码规范

    1. 前言 这份文档参考了 Google Java 编程风格规范和 Google 官方 Android 编码风格规范.该文档仅供参考,只要形成一个统一的风格,见量知其意就可. 2. 源文件基础 2.1 ...

  4. android学习——Android Studio下创建menu布局文件

    一.问题: android studio项目中没有看到menu文件夹: 在android studio项目中想要添加menu布局文件,一开始我的做法是:直接在res文件夹右键选择xml文件来添加,如下 ...

  5. Android学习----Android架构

    android分为四个层,从高层到低层分别是应用程序层.应用程序框架层.系统运行库层和linux核心层.蓝色的代表java程序,黄色的代码为运行JAVA程序而实现的虚拟机,绿色部分为C/C++语言编写 ...

  6. 002.[python学习]python编码规范pep8学习——PEP8第一部分代码布局

    关于PEP8的详细说明可以参考官方原文:http://legacy.python.org/dev/peps/pep-0008/ 我参考官方文档及其他文章,摘出相关内容而得此文章,具体参考其他文章见文中 ...

  7. openfire Android学习---android客户端聊天开发之登录 和 注销登录

    一切就绪,新建一个android测试工程: 上网权限配置,界面绘制啥的,这里就不说了. 首先 导入一个smark包.这个是用来维护长连接的,也可以是asmark.我用的是asmark 先普及一些基本知 ...

  8. android学习——android 常见的错误 和 解决方法

    1. Application does not specify an API level requirement! 解决方法:AndroidManifest.xml中 加入: <uses-sdk ...

  9. android学习——android项目的的目录结构

       然后我们看一下Helloword的程序目录: 我们可以看到 大致有的文件: 1. MainHelloWorld.java文件 2. R.java文件 3. android.jar文件 4. RE ...

  10. Android学习----Android Studio 技巧汇总

    关于快捷键 The File Structure Popup ctrl+f12此快捷键可以调出当前文件的大纲,并通过模糊匹配快速跳转至指定的方法.勾选上“show anonymous classes” ...

随机推荐

  1. BufferedInputStream与BufferedOutputStream

    BufferedInputStream是带缓冲区的输入流,默认缓冲区大小是8M,能够减少访问磁盘的次数,提高文件读取性能:BufferedOutputStream是带缓冲区的输出流,能够提高文件的写入 ...

  2. 使用内部变量,删除,替换,UNSET,等字符操作

    使用内部变量,删除,替换,UNSET,等字符操作 FREDDY=freddy   删除字符串前几2个字符: [root@localhost tmp]# echo ${FREDDY:2} eddy   ...

  3. saas服务提供商

    这段时间接触了不少行业的东西,这里谈几点肤浅的看法.从市场行情上讲,SaaS风口还在,不过热度明显向大数据.物联网.人工智能.区块链等转移. 做得比较好的有这些SaaS提供商,每个领域的都有那么几家的 ...

  4. 蓝桥杯 算法训练 ALGO-93 反置数

    算法训练 反置数   时间限制:1.0s   内存限制:512.0MB 问题描述 一个整数的“反置数”指的是把该整数的每一位数字的顺序颠倒过来所得到的另一个整数.如果一个整数的末尾是以0结尾,那么在它 ...

  5. python开发函数进阶:装饰器

    一,装饰器本质 闭包函数 功能:就是在不改变原函数调用方式的情况下,在这个函数前后加上扩展功能 作用:解耦,尽量的让代码分离,小功能之前的分离. 解耦目的,提高代码的重用性 二,设计模式 开放封闭原则 ...

  6. mongoDB的了解

    一.什么是mongoDB? 1.MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能. 2.MongoDB 旨在为WEB ...

  7. Aptana Studio 3 如何汉化,实现简体中文版

    这篇文章写了又一年多的时间了,哈哈,今天更新一次 此处修正的下面教程的[第五步]Babel Language Pack Update Site for Helioshttp://download.ec ...

  8. Closest Common Ancestors

    Write a program that takes as input a rooted tree and a list of pairs of vertices. For each pair (u, ...

  9. 继承ServletContextListener可以完成的事情

    1.定时任务: 定时任务是从某个固定的时间开始执行特定的程序,继承这个方法,可以实现刚启动项目的时候执行某特定的程序,完成给客户部署的时即可以看到某个页面的效果. 2.初始化系统常量等: 这样来完成系 ...

  10. AngularJS学习(一)

    参考文章:http://blog.csdn.net/dc_726/article/details/17010325 1.HelloWorld篇 1.1 环境 下载:angular-1.2.5min.j ...