关于
Scala课堂是Twitter启动的一系列讲座,用来帮助有经验的工程师成为高效的Scala 程序员。Scala是一种相对较新的语言,但借鉴了许多熟悉的概念。因此,课程中的讲座假设听众知道这些概念,并展示了如何在Scala中使用它们。我们发现这是一个让新工程师能够快速上手的有效方法。网站里的是伴随这些讲座的书面材料,这些文字材料本身也是很有用的。
方法
我们认为最有意义的教学方式是,不要把Scala看做是改进的Java,而是把它作为一门新的语言。所以这里不会介绍Java的使用经验,而将聚焦在解释器和“对象-函数式”的风格,以及我们的编程风格。特别强调了可维护性,清晰的表达,和利用类型系统的优势。
大部分课程除了Scala的交互命令行之外不需要其他软件。我们鼓励读者按顺序学习,并且不仅限于此。让这些课程作为您探索Scala的起点吧!
另外
通过这些链接您可以了解更多:
- Effective Scala Twitter的Scala最佳实践。对理解Twitter的代码风格非常有用。
- Scala 官网文档 包含教程,手册,API参考,书籍等...
- Scala API文档
课程
-
基础
- 值,函数,类,方法,继承,try-catch-finally。面向表达式编程 基础知识(续)
- 样本类,对象,包,应用,更新,函数即对象(统一访问原则),模式匹配。 集合
- 列表,映射,功能组合(map, foreach, filter, zip, folds) 模式匹配与函数组合
- 更多函数!偏函数,更多模式匹配 类型和多态基础
- 基本类型和类型多态性,类型推断,变性,边界,量化 高级类型
- 高级类型,视界,更高级多态性类型,递归类型,结构类型 简单构建工具
- 关于SBT——标准的Scala构建工具 更多的集合
- Scala Collections库指南 使用specs测试
- Scala 并发编程
- Runnable, Callable, 线程, Futures Java + Scala
- Java跨平台交互:在Java中使用Scala Finagle介绍
- Finagle原语:Future, Service, Filter, Builder Searchbird
- 利用Finagle构建一个分布式搜索引擎