对于开发项目时间不长的人来说,规范是很重要的,总结几点:
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后
applicationapplication应该自己定义一个,用来做程序启动时候初始化操作,比如语言切换,百度地图初始化等,另外使用自定义的application它默认就是单例模式,可以方便的在任何需要的地方获取application中的属性值.
如:public class XXAppliXXcation extends Application
3:Activity基类
我们在创建一个activity时候,一定要用到基类,别继承系统的Activity,因为很多使用Activity中一般都会执行onCreate--->initlastPagerData()--->initView()---->initData()-----addEvent(),这时候如果我们定义一个BaseActivity,让自己创建的activity继承这个基类就不用每次去写这些方法,为我们开发节省了时间,BaseActivity的好处还有在做界面切换动画的时候,这个时候你只需要在baseActivity的finish中写进入退出动画,而不需要在自己每个activity中写overridePendingTransition();有些网络请求需要弹出dialog,如果写在baseActivity中,就可以直接调用了,总的来说就是减少代码量,节约时间.
4:方法中的规范
(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.
网友评论