Kotlin 系列写作要求

这是我基于扔物线学堂(也就是 HenCoder Plus 团队)内部要求里面改的,去掉了我对我的讲师的一些不适合针对作者的过分要求以及一些和「教学」相关的内容。

作者基础素质要求

  • Kotlin 官方文档的相关部分(也就是你写文章的那部分)已经看明白。

分阶段输出原则

如果你没有好的写作原则,就先按我的「分阶段输出原则」:每次以最小的输出量,给对方一个完整的世界,并且时刻充分考虑到对方的知识边界(另外,因为要考虑到对方的知识边界,所以要先确立清楚,你的目标对象是谁,即所谓的「用户画像」。

Kotlin 完整分享的阶段划分

上手

目标:让读者「最低成本开始 Kotlin 开发」。

注意:凡是和「上手 Kotlin」不相关的,全都不讲。例如介绍 when 关键字,只讲「它是 Kotlin 里面的 switch,它的用法如何如何」,不要提「when 可以有返回值」或者「when 除了可以包含 statement 还可以包含 expression」这种东西。

具体:

  • 读者有能力创建支持 Kotlin 的新项目,也有能力在用 Java 开发的 Android 项目中启用 Kotlin 的支持;
  • 所有 Kotlin 对于 Java 不兼容的写法,读者知道用 Kotlin 应该怎么写(比如 Java 声明变量是 int num 的方式,这样写 Kotlin 不支持,只能写成 val num: Int 的方式);
  • 读者有能力实现必要的 Kotlin 和 Java 交互。

这阶段可以接受读者在读完之后处于「可以使用 Kotlin 或 Kotlin + Java 开发,但开发效率和代码简洁度与可读性还不如用 Java 的时候高」的水平。

进阶和通透

目标:让读者可以感受和享受到 Kotlin 的便捷性和功能性。

注意:重点是便捷性和功能性,而不是「高级特性」;如果讲了高级特性,要讲出来它的实用场景,而不是只甩给读者「看看,Kotlin 酷吧」就结束。

具体:

  • 前两阶段中「没讲完」的部分,讲完(例如上手阶段关于 when,只需要说明 Kotlin 中不用 switch 而是用 when,并把格式的区别讲出来就够了,到了这一阶段再去讲 when 可以包含 statement 也包含 expression);
  • 前两阶段中没讲到的 Kotlin 的额外优点。