代码规范编程

对于开发项目时间不长的人来说,规范是很重要的,总结几点:

1:包名的建立


目录

这个就不是很规范,包名的建立大致可以从两个方向分类,

第一就是根据业务逻辑按模块分类,比如一个app中有四个模块,首页,商城,发现,个人中心,那么可以以模块来分类.

另一个就是我们平时使用的了,按照使用的属性来分类,比如网络层,视图层,工具类,实体bean,适配器等等,一个好的分类可以让目录结构更清晰.接手项目的人能够快速看懂.拿上诉的目录结构来说,GuidePagerAdapter就应该统一放到adapter包下,LoginActivity应该放在activity中,MD5工具类应该放在utils包下,后面的XXXActivity都应该放在activity目录下面.

2:Manifest.xml中规范

android:anyDensity="true"

android:largeScreens="true"

android:normalScreens="true"

android:resizeable="true"

android:smallScreens="true"/>

这个屏幕适配的支持个人感觉没啥用处,删掉也不影响什么


activity

定义多个activity的时候,一定要注释下这个activity是干嘛的.

<meta-data>和service标签尽量定义在activity后


application

application应该自己定义一个,用来做程序启动时候初始化操作,比如语言切换,百度地图初始化等,另外使用自定义的application它默认就是单例模式,可以方便的在任何需要的地方获取application中的属性值.

如:public class XXAppliXXcation extends Application

3:Activity基类


activity.class

我们在创建一个activity时候,一定要用到基类,别继承系统的Activity,因为很多使用Activity中一般都会执行onCreate--->initlastPagerData()--->initView()---->initData()-----addEvent(),这时候如果我们定义一个BaseActivity,让自己创建的activity继承这个基类就不用每次去写这些方法,为我们开发节省了时间,BaseActivity的好处还有在做界面切换动画的时候,这个时候你只需要在baseActivity的finish中写进入退出动画,而不需要在自己每个activity中写overridePendingTransition();有些网络请求需要弹出dialog,如果写在baseActivity中,就可以直接调用了,总的来说就是减少代码量,节约时间.

4:方法中的规范


code.jpg

(1)首先方法名的命名,不要用中文的拼音,这里需要更新的逻辑处理就用update或灵格斯上去搜索英文翻译.

(2)url这种网络请求的应该有一个公用类来存放,通常是Constans.然后这里调用Constans.url来获取.地址变动的时候也方便统一改动.

(3)网络请求,如果是需要使用网络请求的话,目前比较好的就xutils,okhttp,nohttp这里在application中封装好后就直接使用了,不推荐用上面的原生未经过封装的方法.

(4)Toast中代码中千万别用中文直接就提示出来,一定要在string.xml中定义好,不然别人一看就知道是个新手.Layout.xml视图中也应该在string.xml中定义好后引用.Toast可以抽一个公共方法,在baseActivity中定义好,然后自己activity就可以直接使用.

(5)能在局部变量中传值的千万不要定义成全局,这样逻辑一复杂就可能导致取值不对,还有一点要注意的就是在一个方法体中不要对某个值既get又set,这样也容易导致后面取值不对又很难发现是哪里设置错了.get,和set中的值都是在常量池中保存,如果application炸了,那么get到的值会包nullpointException.尽量少用get,set.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,192评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,088评论 19 139
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,872评论 0 17
  • 文 | linlis 自从做了简书,我对「人文和科技」这个命题产生了浓厚的兴趣,简书是一个互联网产品,本该属于「科...
    简书阅读 13,483评论 0 8
  • 看了一本书,生命中美好的小事
    彭小菜阅读 1,126评论 0 0

友情链接更多精彩内容