The Cake Pattern is a hugely popular way of constructing Scala applications based on mixed-in code components.
So what’s wrong?
- global namespace; name collisions; broken locality of knowledge
- prefer composition over inheritance
- testing the wrong things - blurred responsibilities
- refactoring - harder
- more perm-gen space, more classloading
- cannot have final classes (unless sealed)