下面的这些关于Kotlin的一些技术进阶大纲,希望对小伙伴们有一定的帮助。
一、数据类型
- Boolean数据类型
- Number数据类型
- 拆箱装箱与Char数据类型
- 基础数据类型转换与字符串
- 类和对象
- 空类型和智能类型转换
- 包(package)
- 区间(Range)
- 数组(Array)
二、程序结构
- 常量与变量(val,var)
- 函数(function)
- Lambda表达式
- 类成员(成员方法、成员变量)
- 基本运算符
- 表达式(中缀表达式,分支表达式,when表达式等)
- 循环语句(for循环,while循环,continue,break)
- 异常捕获(try,catch,finally)
- 具名参数,变长参数,默认参数
三、面向对象
- 面向对象-抽象类与接口(abstract,interface)
- 子承父业-继承
- 类及其成员的可见性(private,protected,internal,public)
- object
- 伴生对象与静态成员
- 方法重载与默认参数
- 扩展成员
- 属性代理
- 数据类(allOpen,noArg插件,再见,javaBean)
- 内部类(this@Outter,this@Inner)
- 枚举(enum)
- 密封类(sealed Class)
四、高阶函数
- 高阶函数的基本概念
- 常见高阶函数(forEach,map,flatmap,fold,reduce,filter,takeWhile,let,apply,with,use)
- 尾递归优化 (tailrec)
- 闭包(函数式编程的福音)
- 函数复合(f(g(x)),infix)
- 柯里化(Currying)-函数调用链
- 偏函数
五、Lambdas编程
- lambdas简介
- lambdas和集合
- lambda表达式
- 访问作用域中的变量
- 成员引用
- 集合的函数式API之filter和map
- all、any、count和find
- groupBy
- flatMap和flatten
- 序列
- 使用Java函数式接口
- 把lambda作为参数传给Java方法
- 显式地把lambda转换为函数式接口
- 带接收者的lambda之with函数
- 带接收者的lambda之apply函数
六、领域特定语言 DSL
- DSL 的基本概念
- Gradle Kotlin 脚本编写
七、协程 Coroutine
- 协程的基本概念
- 协程的原理剖析
- Kotlinx.coroutine框架介绍
八、反射语法与库
- Kotlin中使用 Java 反射
- Kotlin中使用 Kotlin 反射
九、泛型,型变,星投影
- 泛型的基本语法
- 泛型的实现机制
- 型变
- 星投影
十、Kotlin与Android
- Anko配置及使用
- anko-commons
- anko-layout
- anko-coroutines库
- anko-sqlite库
-
Kotter Knife -
RxKotlin及RxAndroid配置 -
Kotlin Retrofit -
Kotlin Android Extensions
学习福利
【Android 详细知识点思维脑图(技能树)】
其实Android开发的知识点就那么多,面试问来问去还是那么点东西。所以面试没有其他的诀窍,只看你对这些知识点准备的充分程度。so,出去面试时先看看自己复习到了哪个阶段就好。
虽然 Android 没有前几年火热了,已经过去了会四大组件就能找到高薪职位的时代了。这只能说明 Android 中级以下的岗位饱和了,现在高级工程师还是比较缺少的,很多高级职位给的薪资真的特别高(钱多也不一定能找到合适的),所以努力让自己成为高级工程师才是最重要的。
这里附上上述的面试题相关的几十套字节跳动,京东,小米,腾讯、头条、阿里、美团等公司19年的面试题。把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节。
由于篇幅有限,这里以图片的形式给大家展示一小部分。
网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。希望这份系统化的技术体系对大家有一个方向参考。
**本文已被[CODING开源项目:《Android学习笔记总结+移动架构视频+大厂面试真题+项目实战源码》](
)
收录**
最后自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此也是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
|