智享教程网
白蓝主题五 · 清爽阅读
首页  > 日常经验

Kotlin能做什么?聊聊这门语言的实际用处

很多人第一次听说Kotlin,是因为它被谷歌宣布为Android开发的首选语言。但除了写App,Kotlin到底还能干点啥?其实它的用途比你想象中更广。

安卓开发:上手快,代码少

现在大多数新出的安卓应用,尤其是国内主流App的更新版本,都在逐步转向Kotlin。原因很简单——同样的功能,Kotlin写起来比Java简洁得多。比如判空处理,不用再写一堆if (obj != null),一个?.操作符就搞定。

val name = user?.profile?.name ?: "未知用户"

这种安全调用和默认值赋值一体化的语法,写起来顺手,读起来也清楚。团队协作时,别人一看就懂,出错概率也小了不少。

后端服务:用Spring Boot也能写

别以为Kotlin只能跑在手机上。拿它写后端接口一样靠谱。Spring Boot从2.x开始就对Kotlin支持得很好。你可以用Kotlin写Controller、Service,甚至配合协程处理高并发请求。

@RestController
class HelloController {
    @GetMapping("/hi")
    fun sayHi() = mapOf("msg" to "Hello from Kotlin!")
}

部署之后,跟Java写的后端服务没啥区别,JVM该有的性能一点没少,代码却清爽很多。

Web前端:编译成JavaScript也不是不行

Kotlin还有一个冷门但实用的功能:能编译成JavaScript。虽然不常见,但在一些需要和现有JS项目混用的场景下,可以用Kotlin写前端逻辑,再打包进页面。

比如你有个数据处理的小模块,逻辑复杂又容易出错,用Kotlin写完,编译成js文件引入页面,类型检查帮你挡住不少低级错误。

服务器脚本:偶尔客串Shell的活

有些人拿Kotlin写小型运维脚本。借助Kotlin/CLI或者直接用kscript工具,写个定时备份、日志分析之类的小工具很顺手。毕竟语法灵活,集合操作一行搞定,比写bash清晰多了。

// 过滤出大文件
dir.listFiles().filter { it.length() > 1_000_000 }.forEach { println(it.name) }

多平台项目:一套逻辑,多个终端

如果你同时维护安卓、iOS和网页,Kotlin Multiplatform能让你把核心逻辑(比如网络请求、数据解析)写一遍,然后分别给不同平台调用。虽然还没法完全替代原生UI,但省掉重复造轮子的时间是实打实的。

比如你做个记账App,计算部分用Kotlin写好,安卓和iOS都能直接用,改算法也不用两边同步改。