我新建Android工程需要的开源项目
网络框架 retrofit 结合okhttp
Retrofit 很有创意的一款开源网络框架,让用户自定义接口,并使用其提供的注解,对接口进行解析和调用,是Square旗下的产品之一;动态代理和反射。其实 Retrofit无非就是让用户创建接口,使用自己指定的规则进行网络访问,把接口传入Retrofit,接口上附着的规则由Retrofit进行层层解析后,再进行实际的网络调用。Retrofit所做的事情就是帮助用户简化了大量的网络访问代码,用户只需写少量代码就能得到想要的结果。
开源地址:https://github.com/square/retrofit
学习地址: http://zijianwang.xyz/blog/Android-Dev-The-simple-user-of-Retrofit-Http-Client/
事件总线框架 eventBus Otto事件总线框架
原理解析 主要功能是帮助我们来降低多个类之间的耦合度的(解耦),都需要注册和反注册
eventBus:
1、找到被注册者中所有的订阅方法。
2、依次遍历订阅方法,找到EventBus中eventType对应的订阅列表,然后根据当前订阅者和订阅方法创建一个新的订阅加入到订阅列表
3、找到EvnetBus中subscriber订阅的事件列表,将eventType加入到这个事件列表。
开源地址:https://github.com/greenrobot/EventBus
学习地址:http://blog.csdn.net/harvic880925/article/details/40660137
otto:
@Subscribe 订阅事件,也就是事件的处理者,它有且仅有一个参数YourEvent,每一个Subscribe对应处理一个YourEvent。Event用于连接(匹配)post和订阅。
@Produce 产生事件,改方法在对象被register后即被调用(–使用情况比较特殊的),该方法必须有一个非空的返回值,参数必须为空。 bus.post(new YourEvent(…)),发送一个事件,等待@Subcribe处理
开源地址:https://github.com/square/otto
应用模式 mvp mvc mvvm
根据项目大小选择模式,大型项目推荐使用mvp模式,便于维护不解释,小型的应用用mvp会增加更多的时间,所以可以选择mvc,至于Android的mvvm大家可以先去了解,有兴趣可以做一做。
响应式编程框架RxJava
采用观察者设计模式,这个新鲜的东西强大又好用,至于教程大家可以看看这个
学习地址:http://gank.io/post/560e15be2dca930e00da1083写得很详细
数据存储Realm
Realm,为移动设备而生,替代SQLite和Core Data。为你省下数周的时间和数千行的代码,帮你创造出更棒的用户体验。
下拉刷新控件
谁能想到,下拉刷新本来用原生的就很好,然而你们的ui设计会让你如愿吗?
推荐一个下拉刷新控件:https://github.com/Aspsine/SwipeToLoadLayout
这些东西,构建一个基础应用已经够了,当然可以根据自己的爱好来换,我只是一个搬运工,不过,我推荐这些,都是我用在实际项目中的东西,好用才推荐!