Scala Type Classes and Parameterization
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.