| 著作一覧 |
コードでスパゲッティというのも想像できるけど、やっぱり継承のスパゲッティだろうなぁ。
テンプレートメソッドパターンを失敗したようなやつ。特に、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();
}
}
えーと、おれは何を調べていたんだっけ?
ジェズイットを見習え |