Android项目代码编写规范

包命名规范

包(packages):采用反域名命名规则,全部使用小写字母。一级包名为com,二级包名为xxx(可以是公司域名或者个人命名),三级包名根据应用进行命名,四级包名为模块名或层级名。

  com.xxx.应用名称写.activity页面用到的Activity类(activities层级用户界面)
  com.xxx.应用名称缩写.fragment页面用到的Fragment类
  com.xxx.应用名称缩写.base页面中每个Activity类共享的可以写成一个BaseActivity类(基础共享的类)
  com.xxx.应用名称缩写.adapter页面各种的Adapter类(适配器的类)
  com.xxx.应用名称缩写.utils此包中包含:公共工具方法类(包含日期、网络、存储、日志等工具类)
  com.xxx.应用名称缩写.bean实体类
  com.xxx.应用名称缩写.db数据库操作
 com.xxx.应用名称写.view(或者.ui)自定义的View类等
com.xxx.应用名称缩写.serviceService服务
com.xxx.应用名称缩写.broadcast
Broadcast服务

类命名规范

类(classes):名词,采用大驼峰命名法,尽量避免缩写,除非该缩写是众所周知的,比如HTML,URL,如果类名称包含单词缩写,则单词缩写的每个字母均应大写。

Application类Application为后缀标识XXXApplication
Activity类Activity为后缀标识登录界面  LoginActivity
解析类Handler为后缀标识 
公共方法类Utils或Manager为后缀标识

线程池管理类:ThreadPoolManager

日志工具类:LogUtils

Service类以Service为后缀标识播放服务:PlayService
BroadcastReceiver类以Broadcast为后缀标识

时间通知:

TimeBroadcast

ContentProvider类以Provider为后缀标识单词内容提供者:DictProvider
直接写的共享基础类以Base为前缀

BaseActivity,

BaseFragment

数据库类以DBHelper后缀标识UserSQLiteDBHelper
   

变量命名规范

变量(variables)采用小驼峰命名法。类中控件名称必须与xml布局id保持一致。

公开的常量:定义为静态final,名称全部大写。

如: public staticfinal String ALIPAY_APPID=”gdsfsf45sfswtsfsg”;

静态变量:名称以s开头 eg:

private static long userId= 0;

非静态的私有变量、protected的变量

以m开头,

如:private User mUser;


接口命名规范

接口(interface):命名规则与类一样采用大驼峰命名法,多以able或ible结尾,

           eg:

interface Runable;

  interface Accessible;


方法命名规范

方法(methods):动词或动名词,采用小驼峰命名法,

          eg:

                onCreate(),

run();

initXX()初始化相关方法,使用init为前缀标识,如初始化布局initView()
isXX()checkXX()方法返回值为boolean型的请使用is或check为前缀标识
getXX()返回某个值的方法,使用get为前缀标识
processXX()对数据进行处理的方法,尽量使用process为前缀标识
displayXX()弹出提示框和提示信息,使用display为前缀标识
saveXX()与保存数据相关的,使用save为前缀标识
resetXX()对数据重组的,使用reset前缀标识
clearXX()清除数据相关的
removeXX()清除数据相关的
drawXXX()绘制数据或效果相关的,使用draw前缀标识

布局文件命名规范

 全部小写,采用下划线命名法

1).contentview命名, Activity默认布局,以去掉后缀的Activity类进行命名。不加后缀:

功能模块.xml

eg:

login.xml、main.xml、settings.xml

       或者:activity_功能模块.xml

eg:

activity_login.xml、activity_main.xml

2).Dialog命名:dialog_描述.xml

eg:

dialog_tip.xml

3).PopupWindow命名:ppw_描述.xml

       eg:

ppw_info.xml

4). 列表项命名listitem_描述.xml

eg:listitem_city.xml

5).包含项:include_模块.xml

eg:include_head.xml、include_bottom.xml

6).adapter的子布局:功能模块_item.xml

eg:main_item.xml、


资源id命名规范

 命名模式为:view缩写_模块名称_view的逻辑名称

view的缩写详情如下:

常用

LayoutLayoutllt
RelativeLayoutrlt
  
  
  
  
  
  
  
  







  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 模块命名、数据库表命名、域模型命名、各分层的类/方法命名、页面的命名; 模块命名: a. 包命名:com.project_name.module_name.action/service/dao/ws; service的实现都置于com.project_name.module_name.service.impl下; b. 接口命名遵守XxxxService,接口实现遵守XxxxServiceImpl; 2. 包的设计、页面的层次结构设计(jsp/css/js等文件的结构); 3. log、异常(声明式异常)的约定设计; 4. 链接、按钮、表单提交的统一方式;通用式Ajax调用与页面跳转统一模型; 5. 响应一个请求的分层结构约定,列举几个示例(常规调用、Ajax调用、WebService调用、提供WebService暴露、硬件设备接口调用); 6. 验证代码质量的约定,如JUnit、EMMA、FindBugs、CheckStyle、PMD的使用;Hudson持续集成需注意的; 7. 压力测试、防内存泄漏测试; 基础CSS:标签的各种状态的样式;表格单双行的样式; 开发一个Action请求的响应: 前置条件:该Action涉及的Entity及EntityName.hbm.xml已经准备好。 步骤: a. 前端页面触发Action的请求; 统一采用全路径请求,URL格式: 1> basePath/web/moduleName/*_ *.action {1}  EntityName,{2}  ActionMethodName 2> basePath/web/moduleName/gotoXxx.action (无需调用Service,直接跳转) 包括jQuery的Ajax方式和非Ajax方式; 包括表单提交; 参数设值的方式: 1> URL参数: basePath/web/moduleName/*_*.action?entity.propertyName=paramValue&paramName=paramValue 2> 或 另外,对于表单的提交,前后台都必须做数据校验,SWDF已提供了此能力,进行简单的配置即可,前台直接提供类似以下代码即可,点此查看前端校验详细规则说明。 前端校验示例; 后台数据校验,点此查看校验详细说明. b. 配置struts-moduleName.xml; 直接跳转示例; 调用Service示例; c. 开发对应的{EntityName}Action类; 该类必须继承com.hikvision.swdf.xx.BaseAction,该Action类有一个关键属性entity,即泛型Entity类的一个实体,该属性默认填充好了请求提交过来的entity对应参数(即entity.propertyName); d. 开发Service接口和Service接口实现,并在Action中通过set方法注入该Service; 接口文件:UserService 接口实现:UserServiceImpl 注入Service e. 开发DAO,DAO继承com.hikvision.xxx.HibernateBaseDAO; 示例 f. 配置applicationContext-*.xml; 配置DAO bean、Service Bean、Action Bean及注入的配置; g. 测试; 备注: 1. Action建议统一遵守通配符的约定,basePath/web/moduleName/*_ *.action {1}  EntityName,{2}  ActionMethodName 2. 统一命名规则:接口类似UserService,接口实现类型UserServiceImpl;(IUserService和UserServiceImpl) 开发一个Action调用关联应用提供的WebService 前置条件:该WebService?WSDL可正常获取 步骤: a. 配置applicationContext-wsclient.xml; Spring管理第三方WebService实例bean Jaxws-client配置代码 b. 生成第三方WebService接口文件;(提供系统自动生成) 自动生成代码 c. 页面调用Action请求,Action中注入WebService实例bean; Action对应方法直接调用第三方WebService的相关方法; d. 测试; 备注: 1. 步骤b,接口文件必须同包名同类名置于src目录下; 开发一个Action调用关联应用开放的HTTP请求 步骤: 1. 页面调用Action请求; 2. Action类相应方法使用封装好的HttpClient相关工具类,准备好HTTP请求的相关参数header参数和body参数并以xml的方式提交HTTP请求; 3. 解析该HTTP请求返回值(XML或JSON); 4. 响应结果; 5. 测试; 备注: 开发一个需要对第三方应用发布的WebService 步骤: a. 开发WebService接口,@WebService进行注解该接口; b. 开发WebService接口实现类,@WebService注解该实现类,并制定endpointInterface; c. 配置applicationContext-ws.xml d. 测试 备注: 开发一个需要对第三方应用发布的RESTful Service 步骤: a. 开发RS接口,提供如下Annotation; b. 开发RS接口实现,并提供如下Annotation; c. 配置applicationContext-rs.xml 备注: 所有Annotation的涵义解释如下:
Android Studio代码规范是一组规则和准则,旨在统一和优化Android应用程序的代码质量、可读性和可维护性。以下是一些常见的Android Studio代码规范: 1. 命名规范:变量、方法和类应使用有意义的名称,遵循驼峰命名法。类名应该以大写字母开头,变量和方法名应以小写字母开头。 2. 缩进和空格:使用四个空格进行缩进,并确保代码块的可读性。避免使用制表符进行缩进。 3. 注释规范:对重要的代码段添加适当的注释,解释代码的功能、用途和注意事项。注释应该清晰、简洁并易于理解。 4. 类和方法规范:类和方法应该只关注单一责任,并且尽量保持简洁。避免过长的方法和类,可以考虑进行拆分或重构。 5. 布局文件规范:遵循一致的布局文件命名规则,并使用层次结构清晰的XML布局。避免使用过多的嵌套布局,以提高性能。 6. 资源文件规范:遵循命名约定来命名资源文件,例如使用小写字母、下划线和有意义的名称。确保资源文件正确地放置在对应的目录中。 7. 异常处理规范:正确处理异常并提供适当的错误信息。避免捕获异常后不做任何处理或打印简单的错误日志。 8. 导包规范:只导入需要使用的类,避免使用通配符导入所有类。这样可以提高代码的可读性和维护性。 9. 测试规范编写单元测试来验证代码的正确性,并确保测试覆盖率达到一定的标准。测试代码应该与生产代码分离,并保持可读性和可维护性。 这些只是一些常见的Android Studio代码规范,实际中可能会有更多的规范要求,具体规范可以根据团队或项目的需求来定制。在项目中遵循一致的代码规范可以提高代码质量和团队合作效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值