- 博客(166)
- 资源 (24)
- 收藏
- 关注
翻译 [译]带你揭开Kotlin中属性代理和懒加载语法糖衣
翻译说明:原标题: How Kotlin’s delegated properties and lazy-initialization work原文地址: https://medium.com/til-kotlin/how-kotlins-delegated-properties-and-lazy-initialization-work-552cbad8be60原文作者: Chang W. ...
2019-05-15 23:46:28 2353
原创 教你如何完全解析Kotlin中的注解
简述: 从这篇文章将继续开始探索Kotlin中的一些高级的内容,之前有着重探讨了Kotlin的泛型以及泛型型变等内容。现在我们一起来看下Kotlin中的注解。Kotlin中的注解是100%与Java注解兼容的,有很多相同的地方,但是也有一些不同的地方。一起来瞅瞅吧~一、注解的本质注解实际上就是一种代码标签,它作用的对象是代码。它可以给特定的注解代码标注一些额外的信息。然而这些信息可以选择不同保...
2019-04-24 17:19:10 6481 2
原创 每周一数据结构之链表(Kotlin描述)
一、链表的定义链表是一种递归的数据结构,是一种线性结构,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer),简单来说链表并不像数组那样将数组存储在一个连续的内存地址空间里,它们可以不是连续的因为他们每个节点保存着下一个节点的引用(地址)二、链表的类型单链表1、定义单链表(又称单向链表)是链表中的一种,其特点是链表的链接方向是单向的,对链表的访问要...
2019-04-15 00:21:59 1702
翻译 [译] Kotlin中关于Companion Object的那些事
翻译说明:原标题: A few facts about Companion objects原文地址: https://blog.kotlin-academy.com/a-few-facts-about-companion-objects-37e18429b725](https://blog.kotlin-academy.com/a-few-facts-about-companion-objec...
2019-04-11 00:01:26 16529 2
原创 当Kotlin完美邂逅设计模式之单例模式(一)
简述: 从这篇文章开始,我将带领大家一起来探讨一下Kotlin眼中的设计模式。说下为什么想着要开始这么一个系列文章。主要基于下面几点原因:1、设计模式一直是开发者看懂Android源码的一个很大障碍。所以想要理解和运用源码中一些设计思想和技巧,首先看懂源码是第一步,而看懂源码,又得需要设计模式和数据结构算法(我的每周一算法和数据结构文章系列也开始了)作为基础,否则看起来云里雾里,只能死记硬背别...
2019-04-08 00:39:04 5685 1
原创 每周一算法之二分查找(Kotlin描述)
简述: 从这篇文章起就会开启另一个系列就是上篇文章中提到的每周学习一个基本算法,会结合LeetCode上题目来做分析。解题的语言一般是Kotlin或Java. 如果涉及到一些有关Kotlin的知识点也会做一些介绍。如果平时就养成学习数据结构算法以及刷题的习惯,不管今后你是面试(愿从此再也不是面试造火箭平时拧螺丝了)或在实际上工作中都会对你有很大帮助。这也是这个系列文章的目的。一、时间复杂度最坏...
2019-04-04 15:19:47 1716 1
原创 教你如何完全解析Kotlin中的类型系统
简述: 已经很久没有更新文章,这大概是2019年第二篇文章了,有很多小伙伴们都在公众号留言说是不是断更了、是不是跑路了。在这里统一回复下我还好,并没有跑路哈,只是在思考接下来文章主要方向在哪? 如何在提升自己的同时可以帮助他人,以及这段时间也在不断认清自己和了解自己,发现自己哪里不足以及如何及时地查漏补缺。下面进入正题:Kotlin类型系统其中涉及到一个很重要的概念就是大家常说的可空性以及为什...
2019-04-03 01:00:36 1551
原创 如何让你的回调更具Kotlin风味
简述: 这应该是2019年的第一篇文章了,临近过年回家一个月需求是真的很多,正如康少说的那样,一年的需求几乎都在最后一两月写完了。所以写文章也搁置了很久,当然再忙每天都会刷掘金。很久就一直在使用Kotlin写项目,说实话到目前为止Kotlin用的是越来越顺手了(心里只能用美滋滋来形容了)。当然这次依然讲的是Kotlin,说下我这次需求开发中自己一些思考和实践。其中让自己感受最深的就是: “Don’...
2019-01-29 20:35:57 20728
翻译 [译]记一次Kotlin官方文档翻译的PR(内联类)
简述: 这几天突然没更新文章了,可能有的小伙伴认为寒冬将至,是不是认为我跑路了(哈哈,确实不是哈,这几天感冒挺厉害的,再加上前几天连续熬夜写文章,感觉快扛不住了,所以暂时休息停更了一周。这不这篇内联类官网文档的翻译,已经拖了很多天,今天总算给中文社区的大佬提了PR)。翻译说明:原标题: inline-class原文地址: Kotlin官网译文地址: Kotlin中文站-内联类内联类...
2018-12-22 00:30:40 1942
翻译 [译]Effective Kotlin系列之考虑使用原始类型的数组优化性能(五)
翻译说明:原标题: Effective Kotlin: Consider Arrays with primitives for performance critical processing原文地址: https://blog.kotlin-academy.com/effective-kotlin-use-sequence-for-bigger-collections-with-more-th...
2018-12-14 00:13:37 1975
翻译 [译]Effective Kotlin系列之使用Sequence来优化集合的操作(四)
简述: 今天迎来了Effective Kotlin系列的第四篇文章: 使用Sequence序列来优化大集合的频繁操作.关于Sequence这个主题应该大家都不陌生,我写过几篇有关它的文章,可以说得上很详细了。如果你对它的使用不太熟悉,欢迎查看下面几篇有关文章:浅谈Kotlin中的Sequences源码解析[译]Kotlin中是应该使用序列(Sequences)还是集合(Lists)?[译]...
2018-12-13 00:42:23 2205 1
翻译 (译)Effective Kotlin系列之探索高阶函数中inline修饰符(三)
简述: 不知道是否有小伙伴还记得我们之前的Effective Kotlin翻译系列,之前一直忙于赶时髦研究Kotlin 1.3中的新特性。把此系列耽搁了,赶完时髦了还是得踏实探究本质和基础,从今天开始我们将继续探索Effective Kotlin系列,今天是Effective Kotlin第三讲。翻译说明:原标题: Effective Kotlin: Consider inline modif...
2018-12-11 00:31:34 1513
翻译 [译]Kotlin中内联类的自动装箱和高性能探索(二)
翻译说明:原标题: Inline Classes and Autoboxing in Kotlin原文地址: https://typealias.com/guides/inline-classes-and-autoboxing/原文作者: Dave Leeds在上一篇文章中,我们知道了Kotlin的实验阶段的新特性内联类是如何让我们"创建需要的数据类型但是不会损失我们需要的性能"。我们了解...
2018-12-08 21:51:51 1198
翻译 [译]Kotlin中内联类(inline class)完全解析(一)
翻译说明:原标题: An Introduction to Inline Classes in Kotlin原文地址: https://typealias.com/guides/introduction-to-inline-classes/#why-inline-classes-can-perform-better原文作者: Dave Leeds无论你是编写执行在云端的大规模数据流程程序还是...
2018-12-06 22:02:09 4085 2
原创 Jetbrains开发者日见闻(三)之Kotlin1.3新特性有哪些?
简述:上接上篇文章,我们深入分析了Kotlin1.3版本中的Contract契约的内容,那么这篇文章将会继续把Kotlin1.3新特性研究完毕。这篇文章还有个非常重要的点就是inline class 内联类。关于内联类的知识除了这篇文章会有介绍,后面马上会翻译几篇有关Kotlin中的内联类相关内容。只有一个目的彻底搞定Kotlin中的内联类。那我们一起来看下本次提纲:一、inline cla...
2018-12-05 16:01:18 1709
原创 JetBrains开发者日见闻(二)之Kotlin1.3的新特性(Contract契约与协程篇)
简述:上接上篇文章,今天我们来讲点Kotlin 1.3版本中比较时髦的东西,那么,今天就开始第二篇,看过一些大佬写关于Kotlin 1.3版本新特性的文章,基本上都是翻译了Kotlin Blog的官网博客。今天我不打算这么讲,既然今天的主题是时髦那就讲点有意思的东西。就像JetBrains开发者日上布道师Hali在讲Kotlin1.3新特性的时候完全就不用PPT的,拿起代码就是干。一起来看下今天...
2018-12-04 01:12:46 4941 1
原创 JetBrains开发者日见闻(一)之Kotlin/Native 尝鲜篇
简述:今天我们来讲点Kotlin中比较时髦的东西,有的人可能会说:“不像你之前的风格啊,之前的文章不是一直在死扣语法以及语法糖背后秘密。当你还在死扣泛型语法的时候,别人的文章早就说了Kotlin/Native和Kotlin1.3的新特性”。瞬间感觉自己out了,今天我们就说说这些时髦的东西,也许你能看到一些和别人不一样的东西哦。前段时间你们的熊猫小哥哥(也就是我),由于对Kotlin过度热爱,...
2018-12-02 23:56:01 5901
原创 教你如何攻克Kotlin中泛型型变的难点(应用篇)
简述: 这是泛型型变最后一篇文章了,也是泛型介绍的最后一篇文章。顺便再扯点别的,上周去北京参加了JetBrains 2018开发者日,主要是参加Kotlin专场。个人感觉收获还是挺多的,bennyHuo和彦伟老师精彩演讲确实传递很多干货啊,当然还有Hali布道师大佬带来了的Kotlin1.3版本的新特性以及Google中国技术推广负责人钟辉老师带来的Coroutines在Android开发中的应用...
2018-11-26 01:08:11 4184 4
原创 教你如何攻克Kotlin中泛型型变的难点(下篇)
简述:前几天我们一起为Kotlin中的泛型型变做了一个很好的铺垫,深入分析下类型和类,子类型和子类之间的关系、什么是子类型化关系以及型变存在的意义。那么今天将会讲点更刺激的东西,也就是Kotlin泛型型变中最为难理解的地方,那就是Kotlin中的协变、逆变、不变。虽然很难理解,但是有了上篇文章基础教你如何攻克Kotlin中泛型型变的难点(上篇)理解起来还是相对比较轻松。如果你是初学者不建议直接看...
2018-11-14 09:12:03 1698 3
原创 教你如何攻克Kotlin中泛型型变的难点(上篇)
Kotlin系列文章,欢迎查看:原创系列:Kotlin的独门秘籍Reified实化类型参数(下篇)有关Kotlin属性代理你需要知道的一切浅谈Kotlin中的Sequences源码解析浅谈Kotlin中集合和函数式API完全解析-上篇浅谈Kotlin语法篇之lambda编译成字节码过程完全解析浅谈Kotlin语法篇之Lambda表达式完全解析浅谈Kotlin语法篇之扩展函数...
2018-11-08 22:25:43 3225 2
原创 Kotlin的独门秘籍Reified实化类型参数(下篇)
Kotlin系列文章,欢迎查看:原创系列:有关Kotlin属性代理你需要知道的一切浅谈Kotlin中的Sequences源码解析浅谈Kotlin中集合和函数式API完全解析-上篇浅谈Kotlin语法篇之lambda编译成字节码过程完全解析浅谈Kotlin语法篇之Lambda表达式完全解析浅谈Kotlin语法篇之扩展函数浅谈Kotlin语法篇之顶层函数、中缀调用、解构声明浅谈...
2018-10-29 15:51:47 6131 4
翻译 [译]Kotlin的独门秘籍Reified实化类型参数(上篇)
翻译说明:原标题: Getting Real with Kotlin’s Reified Type Parameters原文地址: https://typealias.com/guides/getting-real-with-reified-type-parameters/原文作者: Dave Leeds之前的Kotlin系列文章,欢迎查看:翻译系列:[译]Kotlin泛型中何时...
2018-10-26 00:38:10 1894 1
翻译 [译]在Kotlin中何时该用类型形参约束?
翻译说明:原标题: When (and when not) to Use Type Parameter Constraints in Kotlin原文地址: https://typealias.com/guides/when-to-use-type-parameter-constraints/原文作者: Dave Leeds之前的Kotlin文章,欢迎查看:翻译系列:[译] 一个...
2018-10-18 00:49:50 2070 2
翻译 [译] 一个简单方式教你记住Kotlin的形参和实参
翻译说明:原标题: Parameters and Arguments: An Easy Way to Remember the Difference原文地址: https://typealias.com/guides/parameters-arguments/原文作者: Dave Leeds简述(俗称扯皮):最近在深入研究Kotlin中的泛型语法,发现它和Java中的泛型有着很大不同,在...
2018-10-17 00:13:31 2103
原创 Kotlin的属性代理你真的理解了吗
简述:今天继续Kotlin原创系列的第十一讲,一起来揭开Kotlin属性代理的漂亮外衣。属性代理可以说是Kotlin独有的强大的功能之一,特别是对于框架开发的小伙伴来说非常有用,因为会经常涉及到更改存储和修改属性的方式操作,例如Kotlin中的SQL框架Exposed源码就大量使用了属性代理。相信你已经在代码也使用了诸如Delegates.observable()、Delegates.notNu...
2018-09-20 22:13:21 2105 1
翻译 (译)Effective Kotlin系列之遇到多个构造器参数要考虑使用Builder(二)
翻译说明:原标题: Effective Java in Kotlin, item 2: Consider a builder when faced with many constructor parameters原文地址: https://blog.kotlin-academy.com/effective-java-in-kotlin-item-2-consider-a-builder-w...
2018-08-27 23:56:57 994 1
翻译 (译)Effective Kotlin系列之考虑使用静态工厂方法替代构造器(一)
翻译说明:原标题: Effective Java in Kotlin, item 1: Consider static factory methods instead of constructors原文地址: https://blog.kotlin-academy.com/effective-java-in-kotlin-item-1-consider-static-factory-met...
2018-08-21 23:27:28 1269
原创 用Kotlin撸一个图片压缩插件-实战篇(三)
简述: 由于个人原因,已经有很长一段时间没有写过文章,有句话是那么说的只要开始就不会太晚,所以我们开始《用Kotlin撸一个图片压缩插件》系列文章最后一篇实战篇。实际上我已经把源码发布到了GitHub,代码很简单。有了前两篇文章的基础,这篇文章将会使用Kotlin从零开始带你撸个图片压缩插件。一、开发前期准备工作1、访问TinyPng官网注册TinyPng开发者账号,拿到TinyPn...
2018-08-19 00:56:16 1326
原创 用Kotlin撸一个图片压缩插件-插件基础篇(二)
简述: 前两天写了篇用Kotlin撸一个图片压缩插件-导学篇,现在迎来了插件基础篇,没错这篇文章就是教你如何一步一步从零开始写一个插件,包括插件项目构建,运行,调试到最后的上线发布整个流程。如果你是插件零基础的小白,那么这篇文章适合你,而且这篇文章也是下面实战篇的基础.插播一条消息(有人提需求了)ImageSlimming图片压缩插件开发完成后,马上就把它推荐给团队内部人员使用,在周会...
2018-07-02 00:47:44 1359
原创 用Kotlin撸一个图片压缩插件ImageSlimming-导学篇(一)
简述: 很久没有发布Kotlin的实战相关的内容,这段时间在折腾Intellij IDEA的插件开发,折腾出了几个小插件,因为最近公司业务分离,原来堆在基础业务那边模块,都以模块的形式抽离出来,独立仓库管理。那么就是各种打包,jenkins打包配置模块特别麻烦,所以想着是否可以开发一个AndroidStudio插件,我可以写代码和构建发布包同时进行,想想都美滋滋,所以才去研究了下插件的开发。摸清插...
2018-06-29 00:32:44 1321
翻译 [译]Kotlin中的龟(List)兔(Sequence)赛跑
翻译说明:原标题: Kotlin : Slow List and Lazy Sequence原文地址: https://medium.com/@elye.project/kotlin-slow-list-and-lazy-sequence-61691fc974c5原文作者: Elye自从Kotlin可以兼容Java7上后,很高兴的是我们可以轻松地在List上使用各种集合操作符并且可...
2018-06-19 23:08:19 1237 2
原创 Kotlin系列之序列(Sequences)源码完全解析
简述: 好久没有发布原创文章,一如既往,今天开始Kotlin浅谈系列的第十讲,一起来探索Kotlin中的序列。序列(Sequences)实际上是对应Java8中的Stream的翻版。从之前博客可以了解到Kotlin定义了很多操作集合的API,没错这些函数照样适用于序列(Sequences),而且序列操作在性能方面优于集合操作.而且通过之前函数式API的源码中可以看出它们会创建很多中间集合,每个操作...
2018-06-05 22:04:50 8527
翻译 [译]Kotlin中是应该使用序列(Sequences)还是集合(Lists)?
翻译说明:原标题: Sequences — a Pragmatic Approach原文地址: https://proandroiddev.com/sequences-a-pragmatic-approach-9d4296086a9d原文作者: Tomek Polański序列(Sequences) 是一个很棒的工具,它有一些不同于Android开发人员习惯的处理数据集合的方法。在...
2018-06-04 00:15:29 2692 1
翻译 [译]有关Kotlin类型别名(typealias)你需要知道的一切
翻译说明:原标题: All About Type Aliases in Kotlin原文地址: https://typealias.com/guides/all-about-type-aliases/原文作者: Dave Leeds你是否经历过像下面的对话?希望你在现实生活中没有像这样的对话,但是这样情景可能会出现在你的代码中。例如,看下这个代码:interfa...
2018-05-24 22:01:41 7598
翻译 [译]掌握Kotlin中的标准库函数: run、with、let、also和apply
翻译说明:原标题: Mastering Kotlin standard functions: run, with, let, also and apply原文地址: https://medium.com/@elye.project/mastering-kotlin-standard-functions-run-with-let-also-and-apply-9cd334b0ef84原文...
2018-05-21 00:53:22 2280
翻译 [译]如何在你的Kotlin代码中移除所有的!!(非空断言)
翻译说明:原标题: How to remove all !! from your Kotlin code原文地址: https://android.jlelse.eu/how-to-remove-all-from-your-kotlin-code-87dc2c9767fb原文作者: David Vávra空安全特性是Kotlin语言最好语法特性之一。它让你在语言层面来考虑可空性,以...
2018-05-18 00:32:44 3308 1
翻译 (译) 在Kotlin中是应该定义函数还是定义属性?
翻译说明:原标题: Kotlin: should I define Function or Property?原文地址: https://blog.kotlin-academy.com/kotlin-should-i-define-function-or-property-6786951da909原文作者: Igor Wojda最近,我对属性和函数用法方面感到困惑。这是一个很好...
2018-05-16 23:50:13 1042
原创 Kotlin系列之集合和函数式API完全解析-上篇
简述: 今天带来的是Kotlin浅谈系列的第八讲,这讲我们一起来聊聊Kotlin这门语言对函数式编程的支持。我们都知道在kotlin这门语言中函数荣升成为了一等公民,所以在支持函数式编程的方面,Kotlin这门语言也是非常给力的,并且在Kotlin中语法也尽量推荐接近函数式编程的风格。学过以及了解过函数式编程的小伙伴都知道函数式编程最吸引人的地方,莫过于它拥有丰富的函数式操作符,可以使用一种全新的...
2018-05-11 01:38:24 2470
原创 Kotlin系列之Lambda编译成字节码过程完全解析
简述: 今天带来的是Kotlin浅谈系列第七弹,上篇博客我们聊到关于Kotlin中的lambda表达式的一些语法规则和基本使用。然而我们并没有聊到Kotlin的lambda表达式的本质是什么?我们都知道使用Kotlin来开发Android,最终都会编译成字节码文件.class,然后字节码文件run到JVM上,最后整个应用跑起来。1、为什么需要去对lambda表达式字节码分析?(why)2、...
2018-04-28 21:34:28 2145 1
原创 Kotlin实战篇之自定义View图片圆角简单应用(一)
简述: 关注我的Kotlin浅谈系列文章的小伙伴就知道关于Kotlin语法篇的内容已经发布了一些。然后就会有小伙伴问了一直都在讲语法是否来一波实战了,毕竟一切一切的学习都是为了解决实际问题的,所以准备来一波Kotlin实战篇,主要是用Kotlin来实现一些常见的功能和需求。实现同一个功能相比Java实现你也许会更钟爱于使用kotlin。1、为什么要用Kotlin去实现Android中的自定义...
2018-04-27 00:12:08 3819
android中手机联系人字母索引表
2016-07-24
解决Android中ListView和ScrollView嵌套冲突
2016-05-26
android中图片图形变换特效处理Demo
2016-05-17
android中图片色彩特效处理Demo
2016-05-15
高仿百度地图中的公交地图线路查询
2016-04-24
高仿百度地图APP
2016-03-21
学生成绩管理系统
2014-06-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人