Would you like to unleash the full power of Scala by learning Scala's advanced features? Find out how to how to apply these and create well designed libraries or DSLs using proven practices? Join this 2-day Advanced Scala course and learn advanced functional programming with Scala as well as details of the type system, implicits, internal DSLs, Custom Scala Collections and more.
If you already have programming experience with Scala and want to understand its advanced features, this 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.
Learn how to:
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 about creating libraries and DSLs with Scala
Object-functional programming in depth
- Tail recursion
- Partial functions
Mastering the type system
- Co- and contravariance
- Type bounds
- Path dependent and structural types
- Implicit conversion, classes and parameters
- Type class pattern
- Context bounds
- Custom control structures with by-name parameters
- Building internal DSLs
Custom Scala collections
- Building custom collections
If you are a developer with at least 3 months Scala programming experience and you would like to learn various advanced features of the Scala programming language and how to apply these to create well designed libraries or DSLs using proven practices, this Advanced Scala is for you!
Students taking this course should have:
- Full understanding of all concepts taught in Fast Track to Scala
- At least 2 months of full-time hands-on development with Scala
Bring your own hardware
You are requested to bring your own laptop for this Advanced Scala course, with Java 6 installed. A full installation guide for the course software will be provided with your course joining instructions.
If you are unable to bring a laptop for the course, please contact the Skills Matter Team on +44 20 7183 9040, or email the our team and we'll help you with an alternative solution.