0Pricing
Scala for Backend Engineering & Functional Programming icon

Scala for Backend Engineering & Functional Programming

SCALABackendEnterpriseCloudDatabaseSystems

掌握 Scala 用于强大的后端开发,深入函数式编程范式以构建可扩展和可维护的应用程序。

🤖 AI 驱动📚 39 门课程👥 10万+ 学习者⭐ 4.9 分
课程概览

Scala 后端工程和函数式编程

Scala 在 JVM 上运行,在单一的静态类型语言中结合了面向对象编程和函数式编程。它为 Twitter、LinkedIn 和 Databricks 等公司的数据基础设施提供支持——通过 Apache Spark、Akka 和 Play 等框架。本轨道涵盖 Scala 从语法和类型系统到生产级后端开发、并发和高级函数式模式的全部内容。

你将学到什么

你将从 Scala 的语法、REPL、值、类型和模式匹配开始,然后进入 case 类、代数数据类型和 Option/Either/Try 错误处理模型。从那里你将学习高阶函数、尾递归、for 推导式和 streams 的惰性求值。中级主题包括 implicits、type classes、泛型、使用 Circe 进行 JSON 处理、使用 http4s 构建 REST API、使用 Futures 进行异步编程和使用 Play Framework 进行完整的后端开发。高级课程涵盖 Cats 和 IO Monad、ZIO、函数式领域建模、使用 Doobie 进行数据库访问、使用 Akka Streams 构建数据管道、使用 Akka Actors 构建分布式系统以及微服务部署。本轨道以 Scala 元编程、宏和性能调优结束。

学习路径

四十门课程从 A1 进展到 C2。A1 和 A2 课程建立语言基础:语法、集合、字符串、元组和模式匹配。B1 课程构建函数式编程流利度——递归、折叠、惰性列表、traits、不可变性和 SBT 构建工具。B2 进入生态系统:type classes、Circe、Play、Spark、Scala 3 特性和异步编程。C1 模块处理生产级关注点——Cats IO、ZIO、Akka Actors、Akka Streams、Doobie 和云微服务。本轨道以 C2 的 Scala 元编程和宏和 Scala 性能调优和优化结束。

工作原理

每门课程都分为短小、实践性的课时,你在内置代码编辑器中完成,并获得实时反馈。当你遇到困难时,AI 导师可随时提供帮助,课程进度设计使得每个概念都直接建立在前一个概念之上——无需跳转到外部资源。

开始学习 →

你的学习方式

🎯
互动课程
实时反馈的动手编程练习
🤖
AI 导师
遇到困难时立即获得 AI 帮助
💻
内置编辑器
直接在浏览器中编写并运行代码
🏆
证书
完成课程后获得证书
课程

39 门课程

Scala for Backend Engineering & Functional Programming 学习路径中的所有课程。

01

Scala 语法与 REPL

A14 节课

Scala 语法与 REPL:使用 REPL、val、var 与类型等

02

Scala 值、变量与类型

A14 节课PRO

掌握基础构件:val、var 以及 Scala 类型系统的基础知识。

03

Scala 基础:开启您的学习之旅

A13 节课PRO

本迷你课程介绍 Scala 的核心语法和基本概念,为函数式编程和面向对象编程奠定坚实基础。学习编写第一个 Scala 程序并了解 Scala 生态系统。

04

Scala 模式匹配

A24 节课PRO

Scala 模式匹配:match 表达式、匹配类型和值等

05

Scala case 类与 ADT

A24 节课PRO

Scala case 类与 ADT:case 类、密封特征等

06

Scala Option、Some 与 None

A24 节课PRO

Scala Option、Some 与 None:避免使用 null、对 Option 使用 map 和 flatMap 等

07

Scala 集合操作

A24 节课PRO

Scala 集合操作:List、Vector、Set、Map、转换等

08

Scala 字符串与插值

A24 节课PRO

使用 Scala 强大的字符串功能处理文本。

09

Scala 元组与范围

A24 节课PRO

简洁地组合值并生成序列。

10

Scala for 推导式

B14 节课PRO

Scala for 推导式:对 for 进行脱糖、使用 if 进行过滤等

11

Scala 高阶函数

B14 节课PRO

Scala 高阶函数:将函数作为值、柯里化等

12

Scala Either 与 Try

B14 节课PRO

Scala Either 与 Try:使用 Either 表示错误、Try、Success、Failure 等

13

Scala 尾递归

B14 节课PRO

Scala 尾递归:递归基础、tailrec 注解等

14

使用 ScalaTest 测试 Scala

B14 节课PRO

使用 ScalaTest 测试 Scala:ScalaTest 风格、匹配器等

15

Scala 递归与折叠

B14 节课PRO

使用递归解决问题,并通过折叠操作缩减集合。

16

Scala 流与惰性列表

B14 节课PRO

使用 LazyList 处理可能无限的序列。

17

面向对象的 Scala:类与特质

B12 节课PRO

深入学习 Scala 的面向对象特性,包括类、对象和特质。本课程涵盖继承、多态以及用于数据建模的案例类等核心概念。

18

函数式编程核心:不可变性

B13 节课PRO

通过将函数视为一等公民,转向函数式范式。本课程强调不可变性、高阶函数和纯函数,帮助您编写可预测且稳健的代码。

19

Scala 项目的 SBT 构建工具

B13 节课PRO

熟练掌握 SBT(Scala 构建工具),即 Scala 项目的标准构建工具。本课程涵盖项目设置、依赖管理,以及复杂应用的多项目构建。

20

Scala 集合与错误处理

B13 节课PRO

探索 Scala 丰富的集合库和以函数式方式处理数据的方法。学习使用 `Option`、`Try` 和 `Either` 优雅地处理错误,构建更加稳健的应用程序。

21

Scala 隐式参数、given 与 using

B24 节课PRO

Scala 隐式参数、given 与 using:隐式参数、Scala 3 的 given/using 等

22

Scala 类型类

B24 节课PRO

Scala 类型类:类型类模式、定义实例等

23

使用 Circe 处理 Scala JSON

B24 节课PRO

以类型安全的函数式方式编码和解码 JSON。

24

Scala 类型系统与泛型精通

B23 节课PRO

深入探索 Scala 强大的类型系统,包括型变、类型类和高级泛型。学习如何利用这些特性编写高度 выраз性且类型安全的代码。

25

使用 Play Framework 进行后端开发

B23 节课PRO

使用 Play Framework 构建高性能、可扩展的 Web 应用和 RESTful API。本课程涵盖 Play 的核心概念、路由、控制器和数据库集成。

26

使用 Apache Spark 进行 Scala 编程

B24 节课PRO

使用 Apache Spark 进行 Scala 编程:RDD 与 DataFrames、转换与操作等

27

Scala 3 新特性

B24 节课PRO

Scala 3 新特性:重要缩进、Scala 3 中的枚举等

28

使用 Futures 进行异步编程

B23 节课PRO

使用 `Futures` 和 `Promises` 掌握 Scala 中的并发编程。本课程教您如何执行非阻塞操作,并有效组合异步计算。

29

使用 http4s 构建 Scala REST API

B24 节课PRO

使用 http4s 构建纯函数式 HTTP 服务。

30

高级函数式编程模式与 FP 库

C13 节课PRO

通过探索单子、函子和应用函子等高级概念,加深您对函数式编程的理解。本课程还将介绍 Scala 中广受欢迎的 FP 库。

31

Scala Cats 与 IO 单子

C14 节课PRO

Scala Cats 与 IO 单子:Cats 类型类、IO 单子等

32

Scala ZIO 基础

C14 节课PRO

Scala ZIO 基础:ZIO 效应、组合 ZIO 等

33

Scala 函数式领域建模

C14 节课PRO

Scala 函数式领域建模:使用 ADT 建模、智能构造器等

34

使用 Scala 开发微服务与云部署

C13 节课PRO

学习设计、构建和部署基于 Scala 的微服务。本课程涵盖使用 Docker 进行容器化,以及将服务部署到云平台的策略。

35

使用 Akka Actors 构建并发系统

C13 节课PRO

探索使用 Akka 实现的 Actor 模型。这是一套用于构建高并发、分布式且具备容错能力的应用程序的强大工具包。学习通过消息驱动的并发机制设计和实现稳健的系统。

36

使用 Doobie 访问 Scala 数据库

C14 节课PRO

使用函数式 Doobie 库操作 SQL 数据库。

37

使用 Scala Akka Streams 处理数据管道

C14 节课PRO

使用 Akka Streams 结合背压处理流式数据。

38

Scala 元编程与宏

C24 节课PRO

Scala 元编程与宏:内联方法、宏基础等

39

Scala 性能调优与优化

C23 节课PRO

掌握分析性能、优化和调试 Scala 应用的技能,以实现最高性能。本课程涵盖内存管理、并发优化和最佳实践。

常见问题

常见问题解答

Scala for Backend Engineering & Functional Programming 课程免费吗?

免费。你可以免费开始 Scala for Backend Engineering & Functional Programming 课程并完成它的所有互动课程。可选的 PRO 订阅解锁高级 AI 工具和可分享的证书。

学习 SCALA 需要有先前的经验吗?

不需要。课程从基础开始,逐步进阶到更高难度的主题,所以即使你没有任何 SCALA 基础也可以开始。

我在 CoddyKit 上怎样学习 SCALA?

学以致用。简洁的互动课程将清晰的讲解与实时动手编程练习结合,24/7 AI 导师在你遇到困难时提供个性化帮助。

完成 Scala for Backend Engineering & Functional Programming 后能获得证书吗?

可以。PRO 学员可以参加考试,获得 Scala for Backend Engineering & Functional Programming 课程的可分享的完成证书,其中包含可验证的代码。

我能在手机上学习 SCALA 吗?

可以。CoddyKit 支持网页版和原生 iOS、Android 应用,你可以在任何设备上学习 SCALA,进度会自动同步。

立即开始 Scala for Backend Engineering & Functional Programming

加入数千名学习者,通过 AI 驱动的课程掌握编程。

免费开始 →浏览所有课程