Scala Type Classes and Parameterization

by Vikash Sharma

This course enables developers to understand and to introduce abstraction into Scala code using parameterized and abstract types, variance, and type bounds to write abstract code. It will also cover typeclasses to achieve ad hoc polymorphism.

What you'll learn

Writing software gets easier when types drive your software development, and utilizing static typing can ensure an easier way to write concise and type-safe code. In this course, Scala Type Classes and Parameterization, you’ll learn to use Scala's extensive generic programming constructs to write type-safe, abstract, and concise code. First, you’ll develop an understanding of what code abstraction and type-safety really means in software development. Next, you’ll discover parameterization in Scala and how they are implemented using parameterized and abstract types, along with how to implement generic methods. Then, you'll learn about the concepts of type bounds and variance. Finally, you’ll explore implicits in Scala and use them in writing typeclasses. When you’re finished with this course, you’ll have the skills and knowledge of Scala's extensive static type system needed to write abstract as well as easy to understand code.

About the author

Vikash Sharma is a developer, trainer and open source technology evangelist. He has invested a large amount of time learning and implementing Scala code and authored video course for Scala. He has authored a beginner's book on Scala named Learning Scala Programming. He works as a developer at SAP Labs.

Ready to upskill? Get started