Please log in to watch this conference skillscast.
Scala syntax is succinct, clean and easy to read, however some of the library signatures that support this are more complicated than one might expect. Type-classes use sophisticated signatures to enable clean client code. This talk is aimed at novice or intermediate Scala developers wanting to learn more about this powerful technique. We will explore what they are and how they can simplify code. We introduce the concept by examining some of the Scala collections’ library method signatures. In particular we will be looking at Ordering[T] and CanBuildFrom[-From, -Elem, +To].
Then we will explore how to solve the common problem of custom data serialisation. Initially we will present some commonly adopted approaches including the Adapter Pattern, showing their pitfalls. Then, we will show how type-classes simplify the design and result in better extensibility and and API usability.
Finally we will discover how users don’t need to understand type-classes to make use of these libraries.
YOU MAY ALSO LIKE:
- Modern development with Java (in London on 15th - 17th July 2019)
- Lightbend Scala Language - Professional (in London on 9th - 10th September 2019)
- Haskell eXchange 2019 (in London on 10th - 11th October 2019)
- Scala eXchange London 2019 (in London on 12th - 13th December 2019)
- Keynote by Dick Wall on Why API Design Matters, and Why Yours Sucks! (and mine sucks too!) (in London on 24th June 2019)
- London Java Community June (in London on 25th June 2019)
- The Elements of Tagless Final Style (SkillsCast recorded in May 2019)
- Scala 2.13 and Beyond! (SkillsCast recorded in April 2019)
All you don't need to know about typeclasses
Julien is a Software Engineer at Workday who has fallen in love with Scala back in 2010. Like many other computer engineers who have started their career around the beginning of the new millennium, he comes from a Java background but has quickly embraced the modular nature of Scala and he now tends to consider himself an FP advocate.