从 Java 到 Kotlin,从 Web 到 AI,一位 Spring 布道师的十五年见证


故事的开始:2010 年的春天

Josh Long 站在台上,台下是来自全球的 Kotlin 开发者。他是 Spring 团队的第一位开发者倡导者,从 2010 年就开始这份工作了。

十五年过去了,他见证了 Spring 社区的每一次蜕变。

“那时候,大家做的基本都是 Web 应用。现在?微服务、分布式系统、批处理、集成、安全,还有 AI。”

** galaxy 变大了,社区也变大了。**


Kotlin 的加入:一场双向奔赴

2015 年左右,Spring 团队和 Kotlin 团队开始合作。这段关系,用 Josh 的话说,是"真正的荣幸"。

一个经典案例:all-open 插件

Kotlin 的类默认是 final 的,但 Spring 和 Hibernate 这类框架需要子类化。

// 没有 all-open 插件
open class UserService {  // 必须手动加 open
    @Transactional
    fun createUser() { }
}

// 有 all-open 插件
class UserService {  // 自动开放,无需修改
    @Transactional
    fun createUser() { }
}

开发者什么都不用改——去 start.spring.io,已经配置好了。

“是成千上万个这样的小改动,让语言真正为开发者着想。想到这种团队合作,我感到温暖、感激、快乐。”


Kotlin vs Java:为什么 Kotlin 更优雅?

Josh 毫不掩饰对 Kotlin 的喜爱:

“Kotlin 是我们有史以来最好的语言支持方案。”

DSL 的差距

Spring 有很多 DSL(领域特定语言),Java 版本已经很好了,但 Kotlin 版本更优雅。

// Spring Security Kotlin DSL
security {
    authorizeRequests {
        authorize("/admin", hasRole("ADMIN"))
        authorize(anyRequest, authenticated)
    }
    formLogin { }
}

同样的功能,Kotlin 代码更简洁、更直观。

Spring 团队甚至用 Kotlin 重写了部分 Spring 框架代码。BeanRegistrar API、Spring Cloud Gateway、函数式 HTTP 路由……Kotlin DSL 无处不在。

“我们 essentially 做了两次工作——一次 Java,一次 Kotlin。因为我们要让 Kotlin 版本感觉自然、地道。”


JVM 的黄金时代

Josh 对 JVM 的未来充满信心:

“如果 15 年前告诉我,我们会用 5 行 Kotlin 代码写 Spring 应用,还能和 AI 模型对话,我会笑出声。那听起来不可能。”

但现在,这是日常。

JVM 的优势

维度 过去 现在
开发效率 Java 冗长 Kotlin 简洁如脚本
运行性能 JVM 启动慢 高度优化,接近原生
生态系统 企业级应用 AI、云原生、微服务

“现在,用 Kotlin 写的程序可以像脚本语言一样简洁,同时性能接近原生语言。我们生活在一个神奇的时代。”


AI 时代:JVM 被低估的机会

谈到 AI,Josh 有一个重要观点:

“人们对 AI 有误解。99% 的开发者不是训练模型,而是把模型集成到业务应用中。”

这是一个集成问题,而集成是 JVM 的强项。

Spring AI 的性能优势

最近有一个基准测试,比较了 Model Context Protocol 在不同语言中的实现:

┌─────────────────────────────────────────┐
│  MCP 性能对比                            │
├─────────────────────────────────────────┤
│  🥇 JVM (Spring Boot + Spring AI)       │
│  🥈 Go                                  │
│  🥉 Python                              │
│  4   TypeScript                         │
└─────────────────────────────────────────┘

JVM 性能第一。

为什么 AI 项目会失败?

MIT 有一项研究:90% 的 AI 集成会失败

原因很简单:很多团队用 Python 单独构建 AI 工作流,与现有系统脱节。

“如果你用 Spring AI 和 Kotlin 扩展现有服务,体验会好得多。业务逻辑本来就在 JVM 上,为什么要分开?”


给开发者的建议

对 Kotlin 开发者

“用 Spring 不一定要用 Java。Kotlin 是最自然的选择。”

对 Spring 开发者

“试试 Kotlin。它是唯一被直接集成到 Spring Framework 代码库中的语言。”

对观望者

“从来没有比现在更好的时代成为 JVM 开发者或 Spring 开发者。”


尾声:下一个十五年

演讲结束时,Josh 分享了他的期待:

┌─────────────────────────────────────────┐
│  2010 → 2025                            │
│  Web 应用 → AI 驱动系统                  │
│  Java 为主 → Kotlin 第一公民             │
│  单体架构 → 云原生微服务                 │
├─────────────────────────────────────────┤
│  2025 → 2040                            │
│  ?                                     │
└─────────────────────────────────────────┘

变化是唯一的不变。

但有一点可以确定:Spring 和 Kotlin 的合作会继续深化,JVM 生态会在 AI 时代找到新的位置。

“这不是我们能不能在 JVM 上做 AI 的问题。在很多情况下,JVM 就是更好。”


🚀 十五年见证,从 Java 到 Kotlin,从 Web 到 AI。最好的时代,才刚刚开始。


Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐