If you already have programming experience with Scala and want to understand its advanced features, this two-day course is for you. It is designed to help developers fully understand topics such as advanced object-functional programming, the power of Scala's type system, implicits, etc. The course also covers how to leverage these features to create well-designed libraries or DSL's utilizing proven best practices.
Prerequisites: A basic knowledge of Scala as covered in the "Fast Track to Scala" course with at least two months practical experience in developing with Scala. Students should bring their own laptop with Java 6 or higher installed.
After having participated in this course you should
- understand all aspects of the object-functional approach
- know and be able to apply advanced features of Scala's type system
- fully understand implicits and type classes
- be confident to create libraries and DSLs with Scala
- Short recap of important basics
- Object-functional programming in depth
- Mastering the type system
- Explicitly implicit
- Internal DSLs
- Custom Scala collections