型どうこうで考えるべきは依存関係なんだが

静的型言語はすぐに依存関係ができる
そのためにやれ継承だのインタフェースだのデザパタだのとごちゃごちゃ考えなきゃならん

しかもデザパタで実現できる疎結合は完全じゃないからね