
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
官方示例:todo-mvp-clean官方对 clean 的解读:the-clean-architecturemvp-clean 可以认为是 对 mvp 的再次分层。不过就我个人而言,我认为 clean 是一种清晰的思想;而 mvp 不是。对比mvp-clean与 mvp 的示例代码会发现,里面多了一个 usecase 的概念。use case 简单翻译可以认为是“用例”。用例是...
不同于 mvp , mvvm 与不使用框架的写法非常的类似,而且理解起来也相对简单很多。简单的说,就是 界面上需要展示的数据,不是直接写在 View/Fragment/Activity这些界面组件里面,也不是写在Service这些系统组件里面。是放在 ViewModel里面的。然后,并不是所有的数据操作相关的代码全部放在 ViewModel里面,比如数据库的增删改查,那是放在Dao里面的,但是..
属性委托的含义及作用
作为参数:fun main() {println("duck".filter { it in 'a'..'e' })println("hello world!".filter())}fun String.filter(process: ((Char) -> Boolean)? = { c -> c in 'a'..'z' }): String {...
首先来看一段代码:// kotlinclass Sum(val left: Expr, val right: Expr) : Exprfun eval(e: Expr): Int =when (e) {is Num -> {println("num: ${e.value}")...
不得不说,kotlin 里面提供了非常多的语法糖,尤其是 lambda这块。对于lambda,有普通的,还有带接收者的。看下面这段代码:fun main() {val str = buildString {append("Hello ")append("world !")}println("str = $str")...
Java 不会真的被Kotlin 取代了吧,看到这种代码真的感觉恶心。import android.content.Contextimport android.os.Bundleimport android.widget.Toastimport androidx.appcompat.app.AppCompatActivityimport androidx.recyclerview.wid...
按照定义,高阶函数就是以另一个函数作为参数或者返回值的函数。在Kotiin中, 函数可以用lambda或者函数引用来表示。因此,任何以 lambda 或者函数引用作为参数的函数,或者返回值为 lambda 或函数 引用的函数,或者两者都满足的函数都是高阶函数 。来看一段代码:fun main() {val added = compute(2, 3) { a, b -&g...
先看一段代码:fun main(args: Array<String>) {val sum = { a: Int, b: Int -> a + b }println(sum)println(sum(1, 2))println({ a: Int, b: Int -> a + b }(3, 4))println({ a...
kotlin 真的出来好久了,谷歌也是一直在不要命的宣传。不过覆盖率应该还是不到100%。我对于kotlin是一直有关注。几乎是谷歌谷歌开始大力宣传的时候,我就开始关注了。那时候已经有博客开始科普这门语言了。不过,我是尝试了几次,最终都放弃了。原因有二:第一,当时工作上用不上;第二:实在不喜欢这门语言。kotlin似乎是一个大杂烩,里面包含很多语言的特性。而且相对复杂。里面的关键字就特别多。...







