网站被墙 做301跳转,那个网站ppt做的比较好,免费做图素材网站有哪些,房地产开发网站建设过去的 2016 年#xff0c;开源社区异常活跃#xff0c;很多个人与公司争相开源自己的项目#xff0c;让人眼花缭乱#xff0c;然而有些项目只是昙花一现#xff0c;有些项目却持久创造价值#xff0c;为开发者提供了极大的便利#xff0c;这些终究由时间来判断。今天开源社区异常活跃很多个人与公司争相开源自己的项目让人眼花缭乱然而有些项目只是昙花一现有些项目却持久创造价值为开发者提供了极大的便利这些终究由时间来判断。今天我就来整理一篇我个人认为的 2016 年对 Android 开发有巨大帮助的甚至改变了 Android 开发方式的开源库但是仅限个人认为不具有任何权威性。 1. RxJava 地址https://github.com/ReactiveX/RxJava 2016 年 Android 界最火的莫过于 RxJava 了如果你还不知道 RxJava你所在公司或者你所在的项目还没有使用 RxJava那真的是有点 out 了RxJava 不仅大大简化了代码甚至可以说改变了我们的开发方式。 RxJava 是一种函数式、响应式的异步操作库它让你的代码更加简洁真正的让你的代码写到爽由于 RxJava 用过的都说好基于此GitHub 上衍生了一堆比如 RxAndroid、RxBus、RxPermission 等之类的开源库足以说明它的影响力。 关于 RxJava 的文章网上一大堆它的使用方法与好处我就不多说了请自行去搜索了解总之身为 Android 开发者到现在你还不知道 RxJava简直了 2. Retrofit 地址https://github.com/square/retrofit 如果有人问我Android 界最好用的网络请求库是什么在之前可能会有人回答 android-async-http、Volley、OkHttp准确说OkHttp 是一个 http 请求客户端 之类的但是 16 年过后我会告诉你 Retrofit 是最好用的网络请求库。 Retrofit 完全 RESTful 风格的 api 网络请求库解耦更彻底源码设计超多的设计模式值得大家学习另外扩展性非常好支持各种配置来满足你的需求最最重要的是如果你的项目使用了 RxJava那么 Retrofit 可以完美结合我只能说 Prefect再次验证了那句话Square 出品必属精品 3. EventBus 地址https://github.com/greenrobot/EventBus 试想这么一个场景在 A 页面打开 B 页面然后 B 页面打开了 C 页面C 页面又打开了 D 页面而且还需要传递参数在 D 页面修改了一些信息然后这些信息更新之后A、B、C 页面很可能都需要对应的进行数据更新碰到这种需求该怎么处理 有人说用 startActivityForResult()你可以试下有多么难处理还有人想到用广播这个当然可以因为广播是全局的主要进行注册都可以通知到每一个页面但是我很不喜欢用广播每次用广播都要走那一套流程很麻烦而且很重。 而如果你知道 Eventbus那么一切都非常的简单。 EventBus 是一个事件管理平台以事件驱动的方式来简化事件传递逻辑可以把它想象成轻量级的 BroadcastReceiver不过EventBus 并不是 16 年才开始进入大众视野的很早就开源了只是这个库太实用了时至今日它仍然很火使用起来非常方便。 值得注意的是EventBus 固然好用但是不要过度使用因为一旦你的代码大量使用 EventBus会致使代码可读性稍差而且出了问题不太好定位。所以建议只在特定的场景使用切莫贪杯 4. Glide、Fresco 图片加载可能跟网络请求一样基本是所有 App 开发必备的功能选择一款成熟稳定的图片加载库重要性不言而喻目前主流的图片加载有 Picasso、Glide、FrescoGlide 是 Google 员工基于 Picasso 基础上进行开发的所以自然各方面比 Picasso 更有优势而且支持 Gif所以推荐大家优先选择 Glide 库官方地址 https://github.com/bumptech/glide 如果你的项目需要大量使用图片比如是类似 Instagram 一类的图片社交 App 那么推荐使用 Fresco。Fresco 是 Facebook 作品关于内存的占用优化更好但是同时包也更大门槛也更高初级工程师不建议使用。官方地址 https://github.com/facebook/fresco 这两款图片加载库基本算是在 16 年使用最多被认可最高的两个图片加载库了。 5. LeakCanary 地址https://github.com/square/leakcanary 开发者最关心的除了完成功能外其次就是会不会造成内存泄露了其实检测内存泄露在 Java 领域有很多种方法与工具但是针对 Android 都不够方便而良心公司 Square 开源了一款针对 Android 平台的内存泄露检测工具 LeakCanary集成简单使用方便平时测试的过程中就自动记录了内存泄露的位置甚至帮你定位到代码级别强烈推荐。 ## 6. ButterKnife 地址https://github.com/JakeWharton/butterknife 我想应该没有人没听过这个库了吧ButterKnife 是 Android 之神 JakeWharton 的大作已经开源了很长时间然而在 2016 年它的使用热度依然不减它可以让你避免无休止的 findViewById() 代码具体用法我就不多说了使用起来比较简单。 7. Realm 地址https://realm.io/ 说到 Realm 不得不提到一个 ORM 的概念。何为 ORM 呢ORM 是 Object Relation Mapping 的缩写翻译过来就是对象关系映射。这是相对于数据库的我们知道 Android 中使用的数据库是 SQLite而且 Android SDK 自带操作数据库的接口而实际我们在使用的过程往往需要把查询的数据转换到一个 Java Object也就是所谓的 Model比如一般是这样 操作起来是不是很麻烦而且可读性超差而有了 ORM 我们写代码可能会是类似这样 查询数据是这样 是不是非常方便代码写起来更像是面向对象而不是一个个的裸写 SQL 了这就是所谓的 ORM。 而 Android 界的 ORM 框架有很多比如 GreeDao、SugarORM、ActiveAndroid 等等但是我推荐大家的 ORM 框架以上都不是是叫做 Realm。 Realm 是一种面向移动端的新型轻量数据库而且是开源的跟 SQLite 完全不一样性能上秒杀 SQLite支持 Java、Android、iOS 各平台我们在实际项目中采用过体验下来各方面都很不错所以推荐大家尝试下 Realm。 8. Dagger 2 地址https://github.com/google/dagger 依赖注入的概念估计大家都听过不理解的不妨搜索了解下Android 领域比较著名的依赖注入库莫过于 Dagger 了基于注解使用起来异常方便。 Dagger 起初是 Square 开源的后来 Google 在此技术上进行了改进与优化去除了反射编译时进行依赖注入性能上有大幅提升取名 Dagger 2Square 之前开源的 Dagger 已不建议使用。其实之前大家对 Dagger 的关注程度没有那么高一般都是属于中、高级工程师才会关注使用但是 16 年 Android 的架构被提上日程各种 MVP、MVVM、Clean 架构等讨论的较多而 Dagger 作为承载这些架构重要的一环被越来越多的开发者使用所以 16 年我们看到 Dagger 的身影越来越多所以Dagger 被我列为 16 年还算是比较火比较实用的 Top 10 Android Library。 9. android-architecture 地址https://github.com/googlesamples/android-architecture 上面说了16 年 Android 架构被越来越多的开发者关注国内外关于架构的探讨比较活跃大家熟知的 MVC、MVP、MVVM、Clean 等就在大家争执哪个更好Android 开发到底该怎样架构的时候Google 开源了一个 Android 架构的官方指导涉及 mvp、mvp-loaders、databinding、mvp-clean、mvp-dagger、mvp-contentproviders、mvp-rxjava 等分别在各自指定的分支下有非常大的参考意义可以算是 Android 界的一大步。 10. awesome-android-ui 地址https://github.com/wasabeef/awesome-android-ui Android 开发中除了我们以上用到的各种实用库之外我们往往还会涉及到各种 UI 效果的实现对于移动开发界面开发其中是很重要的一环而 16 年针对 Android 开发有人开源整理了这么一个库里面网罗了所有你见过的、没见过的各种 UI 效果涉及 Material、Layout、Button、List、ViewPager、Dialog、Menu、Parallax、Progress 等等而且有相对应的截图、gif 展示以后应对设计师各种效果的时候有很大的参考帮助作用。 以上就是我总结的我个人认为的在 2016 年的 Android 开发中比较实用的、对你的开发有很大帮助的一些 Android Library除了对你们的开发效率有提升之外还能够了解其原理阅读其优秀源码参考其代码设计是绝佳的一份学习资料希望每个人在 2017 年都能在技术上取得很大进步转载于:https://www.cnblogs.com/zhang-cb/p/6297239.html