Summary

In this chapter, we went through traits and mixin compositions in Scala. By now, you should have a good understanding of what these are and what can be achieved using them. We also went through the examples of the different uses of traits and what to watch out for when using them. We presented the limitations of using traits for multiple inheritance. Traits are an extremely powerful concept but they have their pitfalls as we saw in the multiple inheritance, so you should use them carefully. Linearization was covered in depth and you should be familiar with what to expect when using traits for multiple inheritance and why things work exactly the way they currently do.

Testing is an essential part of every good software project, and we also ...

Get Scala Design Patterns now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.