VueKotlin 轻量框架

2019-06-03  本文已影响0人  wangyongyue

VueKotlin 简单,高效,迅速。借鉴前端框架Vue API,面向协议编程,MVVM模式,对Activity和View达到完全的复用和解耦。

项目地址:https://github.com/wangyongyue/VueKotlin.git
demo地址:https://github.com/wangyongyue/VueKotlinDemo.git

module使用:
gradle:Project
allprojects {
repositories {
maven { url 'https://jitpack.io' }

}

}
gradle:app
dependencies {

implementation 'com.github.wangyongyue:vuekotlin:1.0.2'

}

面向协议编程,MVVM模式有许多优秀的博文,大家可以去看看。

先说一下VueKotlin 核心机制,就是view的代理人(Vue),view绑定代理人告诉代理人只做一件事情。

比如TextView指定Vue加载text

let textVue = Vue()

textView.v_text(vue: textVue)

textVue.v_text { () -> String? in

return ”wyy“

}

我们还是从这两个方面入手了解一下VueKotlin

1.VueKotlin是什么?

2.VueKotlin有什么厉害的地方?

说明第一个问题:VueKotlin是什么?

简单说一下概念:完全以数据为主导,以数据流的方式完成Activity的调用和View的加载渲染。面向接口编程,指定代理对象,完成解耦和复用。

如何做呢?举个例子

先指定几个角色

战地(Activity)

班(view/text...)

团 (layout.xml)

军 (Model)

司令(http)

司令员下达作战指令和作战计划,规定作战意图和区域(战地)。

军长接受理解作战计划并把作战细分为团级别作战方案,指定某团完成该方案。

团长接受理解作战计划并把作战细分为班级别作战方案,指定某班完成该方案。

作战方案完成部署,下发作战协议(interface),军,团,班,必须遵守该协议完成作战内容,并及时报告战况。

说明第二个问题:VueKotlin有什么厉害的地方?

还是通过上个例子继续说明

作战指令细分为作战计划,保证整改作战意图不被拦截和泄露。

作战计划有单个作战单位执行操作,复杂度低,作战单位依据计划调整,保证执行效率和目标完成度高。

作战指挥通过作战单位反馈实时战况,及时调整计划和更换作战单位,及时应变。

这些说完可能有点迷糊,和编程有关系吗?

在这里举例只是想说明一个概念,改变以往只是强调页面(view)的逻辑思想,搞清楚编程需要做的是什么?

开发一个项目开始我们总是先看有多少页面,需要什么样的功能,然后分类view和Activity。然后想要对view的复用,复用的Activity/Fragment通常太多的if...else...,之后越写越多,越来越闹心。

一年了老板看腻了,喊UI来换套页面吧,

UI说好嘞。

我擦,程序呀996呀,那么多个页面啊,大手术啊,还不如从头写一套UI来的快啊。

大佬来了一句重构吧。我的天啊

怎么办?想辞职?那个公司不苦逼?

项目中如果Activity和View,占据代码总量的大多数,这时要好好想想了,到底为什么?

Activity里面就一个recyclerView的,写了多少个?

textView写那么多不觉得烦吗?

为什么?没用复用,复用了没办法解耦。

如果你有样的烦恼,那VueKotlin是一副良药,效果超级好。

上一篇下一篇

猜你喜欢

热点阅读