継承だけで全てを表現しようとすると極端な話、クラスがきれいなツリー構造を保つ必要がある。これを保つために、無理な継承関係が生まれてしまうくらいであれば、いわゆる横断的関心事などをmixinに追い出すほうがラクだった。AngularJSAngularJSであればconcat複雑化の敵であるextendsの概念も無理に持ち込まなければ存在しないし、モジュール内部の評価もスクルリプト実行時に即時では行われない。そもそもDI自体がランタイムの依存管理みたいなものだ。優先的に済ませれば良い。