Kotlin
却把清梅嗅
Android开发者,爱好写作,曾多次作为嘉宾受邀参加GDG (Google Developer Groups)线下活动进行分享。
展开
-
反思|Android 列表分页组件Paging的设计与实现:架构设计与原理解析
本文是Android Jetpack Paging系列的第二篇文章;强烈建议 读者将本系列作为学习Paging 阅读优先级最高的文章,如果读者对Paging还没有系统性的认识,请参考:反思|Android 列表分页组件Paging的设计与实现:系统概述前言Paging是一个非常优秀的分页组件,与其它热门的分页相关库不同的是,Paging更偏向注重服务于 业务 而非 UI 。——我们都知道...原创 2019-12-01 23:39:36 · 1351 阅读 · 0 评论 -
Android官方架构组件Paging-Ex:列表状态的响应式管理
概述Paging是Google在2018年I/O大会上推出的适用于Android原生开发的分页库,随着越来越多的开发者着手使用Paging,越来越多的问题暴露出来,最直接的一个问题是:如何管理列表额外的状态?这样的需求随处可见,比如 侧滑删除、为评论点赞 等等:本文将阐述:如何管理Paging分页列表的 状态,为何这样设计,以及设计的过程。列表的状态问题和市面上其它热门的分页库相比...原创 2019-05-23 23:52:53 · 1472 阅读 · 3 评论 -
Android官方架构组件Paging-Ex:为分页列表添加Header和Footer
争取打造 Android Jetpack 讲解的最好的博客系列:Android官方架构组件Lifecycle:生命周期组件详解&原理分析Android官方架构组件ViewModel:从前世今生到追本溯源Android官方架构组件LiveData: 观察者模式领域二三事Android官方架构组件Paging:分页库的设计美学Android官方架构组件Paging-Ex:为分页列...原创 2019-04-07 21:39:33 · 13301 阅读 · 7 评论 -
[译]Object的局限性——Kotlin中的带参单例模式
原文:Kotlin singletons with argument——object has its limits作者:Christophe Beyls译者:却把清梅嗅在Kotlin中,单例模式被用于替换该编程语言中不存在的static成员和字段。 你通过简单地声明object以创建一个单例:object SomeSingleton与类不同,object 不允许有任何构造函数,如...翻译 2019-02-13 00:22:24 · 3722 阅读 · 1 评论 -
Android官方架构组件DataBinding-Ex: 双向绑定篇
争取打造 Android Jetpack 讲解的最好的博客系列:Android官方架构组件Lifecycle:生命周期组件详解&原理分析Android官方架构组件ViewModel:从前世今生到追本溯源Android官方架构组件LiveData: 观察者模式领域二三事Android官方架构组件Paging:分页库的设计美学Android官方架构组件Navigation:大巧不...原创 2019-01-15 23:48:55 · 7903 阅读 · 3 评论 -
Android官方架构组件LiveData: 观察者模式领域二三事
本文是 《Android Jetpack 官方架构组件》 系列的最后一篇文章,和一些朋友的观点不同的是,我认为它是 最重要 的核心组件,因为 LiveData本身很简单,但其代表却正是 MVVM 模式最重要的思想,即 数据驱动视图(也有叫观察者模式、响应式等)——这也是摆脱 顺序性编程思维 的重要一步。本文默认读者已经学习了 Lifecycle , 欢迎关注笔者的Jetpack系列:争取打...原创 2018-12-28 00:40:00 · 3859 阅读 · 3 评论 -
Android官方架构组件Paging:分页库的设计美学
应该是 Android Jetpack 讲解的最好的博客系列: Android官方架构组件Paging:分页库的设计美学 Android官方架构组件Navigation:大巧不工的Fragment管理框架 Android官方架构组件Lifecycle:生命周期组件详解&原理分析 前言我是一个崇尚 开源 的Android开发者,在过去的一段时间里,...原创 2018-06-24 03:05:35 · 29856 阅读 · 19 评论 -
使用MVVM尝试开发Github客户端及对编程的一些思考
本文中我将尝试分享我个人 搭建个人MVVM项目 的过程中的一些心得和踩坑经历,以及在这过程中目前对 编程本质 的一些个人理解和感悟,特此分享以期讨论及学习进步。缘由最近在尝试搭建自己理解的 MVVM模式 的应用程序,在这近一个月中,我思考了很多,也参考了若干Github上MVVM项目源码,并从中获益匪浅。我根据所得搭建了一个MVVM开发模式的Github客户端,并托管在了自己的github上...原创 2018-11-09 00:37:32 · 3194 阅读 · 7 评论 -
Android Camera 系列(三)Camera API 详解
概述Camera 可能是接下来个人想深入学习的课题,准备新起一个系列,从个人的角度总结阐述自己对于 Android Camera 的研究过程,希望也能够对其他想学习 Camera 的同学一些帮助。本小节内容为 Android Camera 官方文档 的精要翻译,原文请参考:Android Camera: Camera API正文Android Framework 包括对设备上可用...原创 2018-10-15 19:39:08 · 4857 阅读 · 0 评论 -
Android Camera 系列(二)控制Camera
Camera系列文章首发于 我的慕课网,欢迎关注。概述Camera 可能是接下来个人想深入学习的课题,准备新起一个系列,从个人的角度总结阐述自己对于 Android Camera 的研究过程,希望也能够对其他想学习 Camera 的同学一些帮助。本小节内容为 Android Camera 官方文档 的精要翻译,原文请参考:Android Camera: Control the ca...原创 2018-10-14 23:33:37 · 2611 阅读 · 0 评论 -
Android Camera 系列(一)拍照和录制视频
原文地址:1.Camera: Take photos2.Camera: Record videos一、拍照本课程将阐述如何通过委托Android设备上的其他相机应用程序进行拍照 (如果您更愿意构建自己的相机功能,请参阅 控制相机 )。请求相机功能如果您的应用程序的基本功能涉及到 拍照,请将其在Google Play上的可见性限制为具有相机的设备。 以声明您的应用程序依赖于摄像头,请...原创 2018-10-13 16:36:45 · 7512 阅读 · 1 评论 -
不要打破链式调用!一个极低成本的RxJava全局Error处理方案
RxJava与CallbackHell在正式铺展开本文内容之前,我们先思考一个问题:你认为 RxJava 真的好用吗,它好用在哪?CallbackHell,中文翻译为 回调地狱,在以往没有依赖RxJava + Retrofit进行网络请求的代码中,这种代码并不少见(比如AsyncTask),我曾有幸见识并维护了各种3层4层AsyncTask回调嵌套的项目——后来我一直拒绝阅读Async...原创 2018-09-23 17:38:53 · 7146 阅读 · 10 评论 -
Android开发从Dagger2迁移至Kodein的感受
原文:From Dagger2 to Kodein: A small experiment 作者:Allan Yoshio Hasegawa 译者:却把清梅嗅译者说我是却把清梅嗅,一个普通的Android开发者。去年,我写了一系列关于Android开发者依赖注入框架 Dagger2 及 dagger.android 的博客: Android 神兵利器Da...翻译 2018-08-21 15:53:47 · 2043 阅读 · 0 评论 -
告别Dagger2,Android的Kotlin项目中使用Kodein进行依赖注入
前言:依赖注入浅谈Dagger2的困境对于依赖注入(Dependency Injection,简称DI)来讲,它并非是一个新鲜的词汇,实际上,它很早就被提出并且应用在了企业级的web应用开发当中,比如Spring。在Android开发领域内,毫无疑问,Google大名鼎鼎的 Dagger2 是依赖注入框架的首选工具库,它非常优秀,Github上数以万计的star是最强力的佐证,...原创 2018-08-31 16:38:34 · 4302 阅读 · 3 评论 -
全副武装!AndroidUI自动化测试在RxImagePicker中的实践历程
如果您不是很了解Android的自动化测试,或者还不了解UI自动化测试对于Android开发者的意义,请参考笔者的文章《解放双手,Android开发应该尝试的UI自动化测试(将于近期发布)》。概述我是却把清梅嗅,一个普通的Android开发者,除了日常工作之外,我还喜欢在我的Github上开源分享自己写的一些小工具。其中我个人比较满意的是RxImagePicker,它是我花...原创 2018-07-31 00:05:33 · 1474 阅读 · 2 评论 -
Android用DSL实现复杂RecyclerView的思路分析
阅读本文需要您对 DSL, Kotlin, DataBinding 有一定的了解,阅读时长约 8分钟。ReactiveX之毒响应式编程是一种面向数据流和变化传播的编程范式。随着自己知识领域的逐渐深入,我越来越依赖 RxJava。在Java语言中,通过lambda和方法引用,配合RxJava额外提供的函数式接口,链式调用的代码写起来既优美又有逼格。RxJava的毒性令人欲罢不...原创 2018-07-14 02:54:49 · 1133 阅读 · 0 评论 -
Kotlin中用DSL代替建造者模式
原文:Kotlin-ifying a Builder Pattern 原文地址:https://medium.com/google-developers/kotlin-ifying-a-builder-pattern-e5540c91bdbe 原文作者:Doug Sigelbaum 翻译:却把清梅嗅在Java语言中,当一个对象的实例化需要多个参数时,建造者模式(Bui...翻译 2018-07-12 13:34:51 · 2043 阅读 · 2 评论