轻量级kotlin + Mvp + Rxjava + Retrofit框架

轻量级kotlin + Mvp + Rxjava + Retrofit框架轻量级kotlin + Mvp + Rxjava + Retrofit框架

大家好,又见面了,我是你们的朋友全栈君。

适合团队的框架才是好的框架

1.项目简介

本项目是基于kotlin + Mvp + Rxjava + Retrofit 封装的轻量级模板项目。项目没有过多冗余的依赖,
适用于快速开发以及新手练手。

2.目录结构

├── .gradle
├── .idea
├── app.main.java.package
│   ├── api                 配置请求地址
│   ├── base                base基类封装
│   ├── glide               图片加载框架
│   ├── net                 网络请求框架配置
│   ├── rx                  rxjava配置
│   ├── mvp
│   │    └── contract       view和presenter实现方法接口
│   │    └── model          数据加载层
│   │    └── presenter      逻辑处理层(数据加载页面显示)
│   ├── ui
│   │    └── activity       activity
│   │    └── adapter        适配器
│   │    └── fragment       fragment
│   ├── utils               工具类
│   ├── view                view控件
│   ├── Constants.kt        全局常量
│   ├── Extensions.kt       扩展函数
│   ├── MyApplication.kt    Application
├── build
├── gradle
├── build.gradle
├── settings.gradle

3.图解

图片描述

4.技术选型

MvpArms   KotlinMvpTemplate  
  Mvp+Rxjava+Retrofit+Dagger+组件化     Kotlin+Mvp+Rxjava+Retrofit  
  使用方便,还有一键生成工具,冗余代码过多,不适合快速开发    使用方便,适合快速开发以及新手    
  框架成熟     可根据需求定制    
 Java    Kotlin      
为什么和MvpArms做对比昵? 这个简单框架只是一个基础框架,其实没有和别的框架做比较的必要性,
但是之前用过一段时间MvpArms,也从中学到了很多东西,但是并不是所有公司项目都是大项目,可能会面临
快速开发的需求,所有MvpArms有些功能并不是很适合。适合团队的框架才是好的框架

5.技术要点

主要使用的第三方开源框架有:

6.后续更新

  • 加入Dagger2,过多冗余代码用标签代替
  • 开放一键生成contract – model – presenter 工具

7.简单效果图

图片描述

项目功能较为简单,只是一个简单的图片展示,目前项目封装了以下点位:

  • 网络请求RetrofitManager封装
  • 网络请求 加载 – 失败 – 成功 MultipleStatusView是一个和好用的工具
  • Base基类 activity – fragment – adapter
  • glide封装
  • rxjava封装
  • 各种工具类封装
  • shape以及gradient各种图形封装
  • 动画封装

8.特别感谢

9.项目地址

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107283.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 搞懂JavaScript全局变量与局部变量,看这篇文章就够了[通俗易懂]

    搞懂JavaScript全局变量与局部变量,看这篇文章就够了[通俗易懂]<scripttype=”text/javascript”>vara=”Hello”;functiontest(){vara;console.log(a);a=”World”;console.log(a);}//undefined//Worldvarb=”Hello”;fun…

    2022年4月26日
  • lseek函数

    lseek函数转自:https://baike.baidu.com/item/lseek/6385407?fr=aladdin相关函数dup,open,fseek表头文件#include#include定义函数off_tlseek(intfilde,off_toffset,intwhence);

    2022年6月29日
  • 分子生物学词汇(P~R)[通俗易懂]

    分子生物学词汇(P~R)[通俗易懂]                Pelement P因子[果蝇的可动遗传因子,会造成杂种不育,可用作外源基因的载体]                Pnucleotide P核苷酸[见于免疫球蛋白及T细胞受体等基因,为重排中根据模板信息所插入]                pacemaker 起搏点,起搏器                pacemakerenzyme 定步酶   

    2022年7月27日
  • setrequestproperty参数_setrequestproperty「建议收藏」

    setrequestproperty参数_setrequestproperty「建议收藏」场景:j2mesetRequestProperty解决办法j2mesetRequestPropertyhttpConnection里的setRequestProperty怎么用啊,我想通过手机客户端链接到服务器,并且在客户端输入关键字查询信息,在服务器那边返回查询结果给客户端——解决方案——————–加上客户端希望使用无格式的文本内容类型和GET方法请求应…

    2022年9月11日
  • boost lockfree queue-boost无锁队列「建议收藏」

    boost lockfree queue-boost无锁队列「建议收藏」例子如下:#include<iostream>#include<boost/lockfree/queue.hpp>intmain(){ boost::lockfree::queue<int,boost::lockfree::fixed_sized<false>>queue(128); for(inti=0;i<10000;i++) queue.push(i); while(!queue.empty())

    2022年7月19日
  • QCustomPlot使用

    QCustomPlot使用一、官网下载QCustomPlot官网下载从官网下载qcustomplot.h和qcustomplot.cpp二、加入工程通过添加现有文件将qcustomplot.h、qcustomplot.cpp加入工程,并在pro文件中加入printsupport三、使用

    2022年10月17日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号