Android开发推荐
在互联网迅速发展的今天,程序员真的有点烂大街了,最近频繁听到朋友都工作了,又去转行做开发的,去培训机构培训然后出来长时间找不到工作的。各种跨专业、工作后转型。互联网行业竞争越来越激烈的今天,高效的快速开发,稳固的基础才是从中取胜的关键。今天向Android开发者推荐一些开发的插件及其一些开发的技巧,只是个人的一些愚见,希望对你有所帮助。
代码的规范
代码的规范对于一个程序员的长远发展是相当重要的,android的代码规范其实和java是基本上一样的,这里推荐阿里巴巴java开发手册,阿里还在不断更新完善,感谢阿里为业内人士做的巨大贡献,这一小步,影响很大。如果所有人都按照这个规范,当你接手别人的项目的时候还在为这个代码块是干什么的,项目的迭代去抓耳挠腮吗???
Android高效开发工具推荐
Android Studio 自动生成布局代码插件LayoutCreator
说到这里,很多人应该都会比较熟悉JakeWharton大神贡献的butterknife,类似的依赖注入还有androidannotations、Dagger 2,但是用这些真的好吗???其实是很影响性能的,这里以butterknife的源码来分析
ButterKnife.bind过程
源码看进去
再来看看另外一个方法
|
|
看完源码ButterKnife对性能有一定的影响,并且引入了更多的类和方法,增加了安装包的大小。但是,对开发效率的提升也是显而易见的,尤其是配合AS插件的使用。如何取舍,完全是由作为开发者的你来决定了。其他的几个注入的第三方库类似的,所以在这里为了不影响性能,又避免写findViewById,因此推荐LayoutCreator
安装
方式一. 下载项目中的jar包,通过本地disk方式导入
方式二. 在Android Studio的插件中心搜索LayoutCreator下载安装
用法截图
Android Code Generator根据布局文件快速生成对应的Activity,Fragment,Adapter,Menu。
有了上面的LayoutCreator神器,再加上这个神器,估计差不多省去了很多coding的时间了,是不是感觉终于有时间腾出来谈个女朋友了呀!!!祝没有女朋友的攻城狮们早日找到女朋友。。。
安装
方式一. 下载项目中的jar包,通过本地disk方式导入
方式二. Preferences/Settings->Plugins->Browse repositories… 然后在搜索框输入Android code Generator。
用法截图
插件GsonFormat快速实现JavaBean
还在为返回JSONObject格式的字符串而一个一个对着写参数吗???GsonFormat一个根据JSONObject格式的字符串,自动生成实体类参数。 以后写实体类就是秒秒钟的事!!!
安装
方式一. 下载GsonFormat.jar包,通过本地disk方式导入
方式二. Android studio File->Settings..->Plugins–>Browse repositores..搜索GsonFormat,安装插件,重启android studio
用法截图
其他插件推荐
安装方式都有两种,可以参考上面进行安装
设计师给我们提供好了各种资源,每个按钮都要写一个selector是不是很麻烦?这么这个插件就为解决这个问题而生,你只需要做的是告诉设计师们按照规范命名就好了,其他一键搞定。
强烈推荐,帮助你在开发阶段方便的检测出内存泄露的问题,使用起来更简单方便。
强大的让所有人都认识
Android Parcelable code generator
在类中插入实现了Parcelable接口的代码。
Android Material Design Icon Generator
将Material Design的图标导入到程序中。
这是一个非常强大的图片导入插件。它导入Android图标与Material图标的Drawable ,批量导入Drawable ,多源导入Drawable(即导入某张图片各种dpi对应的图片)
Android studio的插件还有很多很多,选择一些常用的,别装太多插件哦,要是你想要什么功能的插件可留言,我为你推荐
常用开源库
Android是开源的,因此也诞生了一批又一批的开源大牛,然后这些大牛写了牛逼的开源库,让我们今天的工作更简单,在这里想大家介绍一些常用的开源库
网络请求
okhttp
okhttp相关延伸:Fast-Android-Networking、okhttputils、NoHttp
retrofit 这是一个很高深的网络请求,基于okhttp
现在主流的是这两个,还有volley、xutil等就不在介绍了
数据解析
照片加载
数据库
刷新控件
参考刷新加载控件
事件总线
其实为个人不建议使用事件总线,因为代码逻辑不清楚,后期迭代维护麻烦;观察者独有的,观察者可能会造成接口的膨胀
圆角
图表
ImageVie手势操作
照片选择器
loading框
自定义对话框
媒体播放器
- 视频
- 音频
- 直播
其他推荐
AndroidSwipeLayout别人讨厌各种仿ios什么效果,程序员可以写着玩玩没问题。仿iOS各种左右滑效果
circular-progress-button带进度显示的Button,让操作更炫酷
ToggleButton状态切换的 Button,类似 iOS,用 View 实现
AndPermission权限管理
AndroidUtilCode工具类大集合
代码撰写注意点
xml布局
注意事项
避免黄色警告
过时方法不要用
include的使用
merge的使用
viewstub的使用
避免布局嵌套过深;简单布局linearlayout,复杂布局relativelayout;有些效果多考虑自定义view是否能实现,别用view叠加实现
style的使用,减少代码量
weight的合理使用
margain和padding合理比较进行选择使用
最新的布局方式ConstaintLayout的使用
避免不必要的渲染,可借助第三方工具
java代码
注意事项
为了提高UE,需考虑缓存、数据存储优化、算法优化、JNI、逻辑优化、需求优化(后面会详细述说优化相关)
代码结果清晰,多方法,避免一个方法执行很多行代码
避免警告;多做异常处理;判断条件多考虑
资源管理
注意事项
AndroidStudio的lint清除无用的资源
注意第三方引入的资源删除时需注意(典型:某盟)
重点推荐:多coding,多看底层,知其然知其所以然