《Kotlin for android Developers》中文翻译
以下内容为原创,欢迎转载,转载请注明
来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/4939080.html
之前一直在关注Kotlin和Android相关的开发,写过两篇关于Kotlin的文章,不了解Kotlin的可以看下:
- [Android]使用Kotlin+Anko开发Android(一):http://www.cnblogs.com/tiantianbyconan/p/4800656.html
- [Android]使用Kotlin开发Android(二):http://www.cnblogs.com/tiantianbyconan/p/4829007.html
后来在Kotlin官网上面看到了这本书《Kotlin for android developers》:
这本书发布在leanpub,前两周作者完成本书后,我就购买看了一遍,里面通过一个天气预报的App例子讲解了基本上Kotlin所有的语法和特性,解决了几个困扰我很久的问题。
后来打算把它翻译成中文版贡献给大家,已经翻译完成:
Gitbook在线阅读或下载:https://www.gitbook.com/book/wangjiegulu/kotlin-for-android-developers-zh/details
Github地址:https://github.com/wangjiegulu/kotlin-for-android-developers-zh
本人水平有限,大家遇到错别字、病句、翻译错误等问题可以在Github上提issues。不过请说明错误原因。
希望大家支持购买原版:https://leanpub.com/kotlin-for-android-developers
目录
- Introduction
- 写在前面
- 关于本书
- 这本书适合你吗?
- 关于作者
- 介绍
- 什么是Kotlin?
- 我们通过Kotlin得到什么
- 准备工作
- Android Studio
- 安装Kotlin插件
- 创建一个新的项目
- 在Android Studio中创建一个项目
- 配置Gradle
- 把MainActivity转换成Kotlin代码
- 测试是否一切就绪
- 类和函数
- 怎么定义一个类
- 类继承
- 函数
- 构造方法和函数参数
- 编写你的第一个类
- 创建一个layout
- The Recycler Adapter
- 变量和属性
- 基本类型
- 变量
- 属性
- Anko和扩展的函数
- Anko是什么?
- 开始使用Anko
- 扩展函数
- 从API中获取数据
- 执行一个请求
- 在主线程以外执行请求
- 数据类
- 额外的函数
- 复制一个数据类
- 映射对象到变量中
- 转换json到数据类
- 构建domain层
- 在UI中绘制数据
- 操作符重载
- 操作符表
- 例子
- 扩展函数中的操作符
- 使Forecast list可点击
- Lambdas
- 简化setOnClickListener()
- ForecastListAdapter的click listener
- 扩展语言
- 可见性修饰符
- 修饰符
- 构造器
- 重构代码
- Kotlin Android Extensions
- 怎么去使用Kotlin Android Extensions
- 重构我们的代码
- Application单例化和属性的Delegated
- Applicaton单例化
- 委托属性
- 标准委托
- 怎么去创建一个自定义的委托
- 重新实现Application单例化
- 创建一个SQLiteOpenHelper
- ManagedSqliteOpenHelper
- 定义表
- 实现SqliteOpenHelper
- 依赖注入
- 集合和函数操作符
- 总数操作符
- 过滤操作符
- 映射操作符
- 元素操作符
- 生产操作符
- 顺序操作符
- 从数据库中保存或查询数据
- 创建数据库model类
- 写入和查询数据库
- Kotlin中的null安全
- 可null类型怎么工作
- 可null性和Java库
- 创建业务逻辑来访问数据
- Flow control和ranges
- If表达式
- When表达式
- For循环
- While和do/while循环
- Ranges
- 创建一个详情界面
- 准备请求
- 提供一个新的activity
- 启动一个activity:reified函数
- 接口和委托
- 接口
- 委托
- 在我们的App中实现一个例子
- 范型
- 基础
- 变体
- 范型例子
- 设置界面
- 创建一个设置activity
- 访问Shared Preferences
- 范型preference委托
- 测试你的App
- Unit testing
- Instrumentation tests
- 其它的概念
- 内部类
- 枚举
- 密封(Sealed)类
- 异常(Exceptions)
- 结尾
《Kotlin for android Developers》中文翻译的更多相关文章
- 《Entity Framework 6 Recipes》中文翻译系列 目录篇 -持续更新
为了方便大家的阅读和学习,也是响应网友的建议,在这里为这个系列做一个目录.在目录开始这前,我先来回答之前遇到的几个问题. 1.为什么要学习EF? 这个问题很简单,项目需要.这不像学校,没人强迫你学习! ...
- Spark官方文档 - 中文翻译
Spark官方文档 - 中文翻译 Spark版本:1.6.0 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 引入Spark(Linki ...
- PS网页设计教程——30个优秀的PS网页设计教程的中文翻译教程
PS网页设计教程--30个优秀的PS网页设计教程的中文翻译教程 作为编码者,美工基础是偏弱的.我们可以参考一些成熟的网页PS教程,提高自身的设计能力.套用一句话,"熟读唐诗三百首,不会作 ...
- Spark SQL 官方文档-中文翻译
Spark SQL 官方文档-中文翻译 Spark版本:Spark 1.5.2 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 Data ...
- Learning Spark: Lightning-Fast Big Data Analysis 中文翻译
Learning Spark: Lightning-Fast Big Data Analysis 中文翻译行为纯属个人对于Spark的兴趣,仅供学习. 如果我的翻译行为侵犯您的版权,请您告知,我将停止 ...
- 苹果App Store审核指南中文翻译(2014.9.1更新)
转:http://www.cocoachina.com/appstore/20140901/9500.html CocoaChina对<苹果应用商店审核指南>中文翻译最近一次更新时间为20 ...
- (转)PK系列之六:该不该读中文翻译的专业书
本文引用地址:http://blog.sciencenet.cn/blog-2999994-956596.html 此文来自科学网王立新博客,转载请注明出处. 刘新建:这几天在读一本译著:投入产出分析 ...
- Umbraco官方技术文档 中文翻译
Umbraco 官方技术文档中文翻译 http://blog.csdn.net/u014183619/article/details/51919973 http://www.cnblogs.com/m ...
- 《Introduction to Tornado》中文翻译计划——第五章:异步Web服务
http://www.pythoner.com/294.html 本文为<Introduction to Tornado>中文翻译,将在https://github.com/alioth3 ...
随机推荐
- Android SlidingMenu 仿网易新闻客户端布局
前面两篇文章中的SlidingMenu都出现在左侧,今天来模仿一下网易新闻客户端左右两边都有SlidingMenu的效果,以下是网易新闻客户端效果: 不扯闲话了,直接进入正题吧 frame_conte ...
- 实例演示Android异步加载图片(转)
本文给大家演示异步加载图片的分析过程.让大家了解异步加载图片的好处,以及如何更新UI.首先给出main.xml布局文件:简单来说就是 LinearLayout 布局,其下放了2个TextView和5个 ...
- Windows GUI代码与Windows消息问题调试利器
Windows GUI代码与Windows消息问题调试利器 记得很久前有这么一种说法: 人类区别于动物的标准就是工具的使用.同样在软件开发这个行业里面,对于工具的使用也是高手和入门级选手的主要区别,高 ...
- hadoop中MapReduce多种join实现实例分析
转载自:http://zengzhaozheng.blog.51cto.com/8219051/1392961 1.在Reudce端进行连接. 在Reudce端进行连接是MapReduce框架进行表之 ...
- Azure Automation (2) 定期删除存储账号中的文件
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 本文是对笔者之前的文档Azure Backup (1) 将SQL ...
- 基于Mono.Cecil的静态注入
Aop注入有2种方式:动态注入和静态注入,其中动态注入有很多实现了 动态注入有几种方式: 利用Remoting的ContextBoundObject或MarshalByRefObject. 动态代理( ...
- Node魔法堂:NPM入了个门
一.前言 NPM作为Node的模块管理和发布工具,作用与Ruby的gem.Python的pypl或setuptools.PHP的pear和.Net的Nuget一样.在当前前端工程化极速狂奔的年代,即使 ...
- 【VBS】vbs指定编码保存文本文件(含xml、ini什么的)
本文还是折腾安装包期间衍生出来的产物. 我那安装包在安装期间有这个动作: - 让用户填写一些信息,待安装完成后把这些信息写入软件安装目录中的指定ini.xml文件中 上文说的是如何用vbs写ini,i ...
- MFC 阶段学习总结
由于项目需求,需要用到C++开发软件,所以开始学习C++,重点是MFC,因为是窗体应用,感觉win32的比较麻烦,还是MFC方便点.至于为什么要用C++呢, 由于C++应用不需要客户额外安装环境和加密 ...
- jquery层级原则器(匹配后代元素div)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...