Scala 高级,第一部分 – Scala 类型系统

Scala Advanced, Part 1 – The Scala Type System

可变状态、Scala 类型系统深度、隐式

学习内容

  • 使用完整的 Scala 类型系统正确实现通用的可重用库和 API,供其他 Scala 开发人员轻松使用。

要求

  • 在开始高级课程之前,建议具备相当于完成 Escalate Software 的 Scala 应用课程的 Scala 语言的日常工作知识
  • 您需要按照设置说明为笔记本电脑设置支持 Scala、SBT 和支持 Scala 的 IntelliJ IDEA
  • 具有其他静态类型语言(例如 Java 或 C#)的经验会有所帮助,但不是必需的。

描述

Scala Advanced,第 1 部分

Escalate Software Scala Advanced 课程面向希望提高技能的经验丰富的 Scala 开发人员,尤其是库和 API 的设计和开发。它涵盖了有效生成高质量、正确、强大和灵活的 Scala 库所需的主题,这些库仍然易于其他人使用。

第 1 部分提供了 Scala 类型系统的深入和透彻的知识,这是任何库开发的重要前提。我们首先了解 Scala 中可变共享状态的危险和安全使用,包括属性和缓存。从那里,我们深入研究 Scala 类型系统,包括:

  • 泛 型

  • 协方差和逆方差

  • 上限和下限

  • 类型推理

  • 类型参数和类型成员

  • 路径依赖类型

  • 优化类型

  • 结构类型

  • 递归类型

  • F 界多态性

然后,最后两个模块继续介绍辅助 Implicits 类型系统,该系统增强了常规的 Scala 类型系统,包括:

  • 简单隐式参数

  • 类型类

  • 隐式类、对象和方法

  • 类型类组合

  • 隐式约束

  • =:= 和 <:<

  • 隐式类和类型标记

  • 隐式转换

  • 扩展 AnyVal

以及更多。

完成本课程后,您将了解 Scala 类型系统,从而构建自己设计良好的 API、推理类型抽象和演算、应用隐式约束并增强语言规则等等。

第 2 部分和第 3 部分(单独提供)涵盖最佳实践、惯用语、模式、高级函数式编程、异步编程、解析器运算器、宏、性能分析和优化等主题。这些部分依赖于本高级第 1 部分课程中提供的信息。

本课程适合谁:

  • Scala 库和 API 开发人员,或希望提高知识和技能的 Scala 开发人员
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。