著作一覧 |
コードでスパゲッティというのも想像できるけど、やっぱり継承のスパゲッティだろうなぁ。
テンプレートメソッドパターンを失敗したようなやつ。特に、publicクラス1ファイル縛りがガッツリと効いてくるのだが。
と書いたところで、IDEで「定義を参照」とかの機能を使うと別になんの問題もなく読めるのかも、と思ってみたり。
// Foo.java public class Foo extends FooBase { public void method() { a(); b(); c(); } protected void c() { d(); ... e(); } }ふむ、ってことはaはFooBaseだな。
// FooBase.java import a.b.c.*; import a.b.d.*; import a.b.e.*; public class FooBase extends BarExtended { public void method() { a(); b(); c(); } protected void c() { ... } }
おい、まじかよ。っていうか、どのパッケージ見ればいいんだ?
// BarExtended.java public class BarExtended extends Bar3 { public void b() { ... c(); } }
……
ls Bar*
……
// BarBase.java public class Bar3Base extends Bar2 { public void a() { c(); } }
えーと、おれは何を調べていたんだっけ?
ジェズイットを見習え |