Scala Advanced, Part 2 - Best Practices, Async, Serializing

Idioms and Patterns, Dependency Injection, XML, JSON, Custom Extractors and Asynchronous Programming with Futures

Ratings: 4.63 / 5.00




Description

The Escalate Software Scala Advanced course is intended for experienced Scala developers looking to improve their skills, particularly for library and API design and development. It covers topics needed to be effective in producing high quality, correct, powerful and flexible Scala libraries that are still easy to use by others.

Part 2 provides advice on best practices and patterns drawn from many years of real-world experience in Scala programming. In addition, strategies for compile-time verified dependency injection are covered, then XML and JSON serialization and deserialization, the use of custom extractors for pattern matching, and finally the very popular and important topic of asynchronous programming using Scala Futures:


  • Dependency Injection

  • Idioms and Best Practice advice

  • Patterns - Gang of Four

  • Scala specific patterns

  • XML literals and features

  • JSON libraries and type-classes

  • Custom extractors in pattern matching

  • Futures

  • Future functions and combinators

  • Patterns with Futures

It is recommended that you complete Scala Advanced part 1 before taking this part. While not strictly necessary, we may assume knowledge from part 1 in some of the explanations that could be hard to follow unless you know the material.

Part 3 (following this) builds on the information in these first two parts of the advanced course and moves into more advanced functional programming topics, along with performance optimization and more.

What You Will Learn!

  • Be aware of the latest best practices, patterns and idioms in Scala programming
  • Save and load data into Scala, taking full advantage of the Scala type system to obtain rich, useful types
  • Use Scala Futures to program asynchronously and reactively, and implement more parallelization and performance in your code

Who Should Attend!

  • Scala developers looking to improve their skills, write libraries and APIs for others, and learn patterns and best practices
  • Developers looking to work in an asynchronous way with Futures
  • Scala programmers using JSON and/or XML (or other data serialization)