基于Kotlin的Spring Boot微服务实战
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

序言

近年来,Java增加了函数式编程的特性,如类型推断、Lambda表达式、Stream流等,后端开发逐渐采用了一些函数式编程语言,如Scala、Kotlin。函数式编程以其简捷性、不变性、空指针处理友好等特点深受后端开发人员的青睐。

笔者之前使用Scala做过后端开发,感慨Scala的门槛较高,入门困难,而且生态资源相对匮乏,开发过程比较痛苦。后来,使用Java进行后端开发,依托Spring Boot强大的生态,可以方便地使用消息队列、数据库、缓存、大数据相关中间件。但是Java比较笨重,冗余的代码、空指针异常、线程安全等问题常常困扰着笔者。随着Kotlin在移动端开发的普及,它也逐步走入后端开发者的视野。Kotlin是JVM体系的语言,和Java有着良好的互操作性,上手较容易,且可以使用Java强大的生态,其还具有函数式编程的优点。另外,Spring Initializr提供了对Java、Kotlin语言的支持。

Kotlin是JetBrains公司开发的,目前流行的IntelliJ IDEA软件也是该公司开发的。IDEA对Kotlin支持较好,可以将Java代码转换为Kotlin代码。IDEA还支持Java、Kotlin混合编程,历史代码使用Java编写,新的代码可以尝试使用Kotlin编写。

基于以上考虑,笔者开始研究使用Kotlin、Spring Boot做后端开发,取得了不错的效果。市面上介绍使用Kotlin进行后端开发的图书比较少,笔者在大量实践的基础上,萌生了写一本书的想法,希望和更多的Java开发人员分享Kotlin在后端开发中的实践经验。

本书共10章,第1章介绍如何搭建Kotlin的开发环境,第2章介绍函数式编程,第3章简单介绍Kotlin的语法,第4章介绍Kotlin在常用中间件中的应用,第5章介绍Kotlin如何应用于微服务注册中心,第6章介绍Kotlin如何应用于微服务配置中心,第7章介绍Kotlin如何应用于微服务网关,第8章介绍Kotlin如何应用于Spring Cloud Alibaba,第9章介绍Kotlin集成服务监控和服务链路监控的相关知识,第10章介绍如何用Kotlin编写博客应用。本书提供了大量的实例,相关源码可以从GitHub下载运行。

袁康
2020年5月26日于上海