利用本周午休的碎片时间模仿one app写的一个kotlin项目,每天更新优质文章、影评、音乐及妹子图片,数据api来自github上的抓包项目及gank福利。由于时间及水平问题~~比较简陋
- github地址在这~
- 主要使用框架或插件:
mvp
kotlin
retrofit2
rxjava
glide
- mvp通过泛型的方式,将model、view、presenter从建类文件的时候就抽离开来(参考简化自mosby);
网络请求、图片加载还是采用主流的retrofit2&rxjava&glide;

abstract class BaseActivity<V:MvpView,P:MvpPresenter<V>> : MvpActivity<V, P>()
-
接触kotlin才10多天,用的不是很熟练和正确,很多地方写得比较僵硬。不过用了kotlin就可以告别findViewById,lambda的简洁,避免setter、getter,避免nullpoint,函数拓展等等场景真得比较赞。其他的优势还在慢慢摸索中,个人觉得纯java开发还是有思路清晰、易于维护的优点,所以没必要那么着急将kotlin应用于项目。
-
使用截图:





最后感谢Api、gank.io的api,部分图片资源来自one,仅作学习使用
网友评论
POJO类可以使用data class.
可以直接使用一个sealed class或者一个文件来直接定义。 kotlin function可以作为单独文件 不需要包装在类里。
MVP有点简略。 P层代码直接请求网络数据,没有分离。