Yoh2の日記: 人のコードに反感を抱く 2
例えばこんなの。
Fuga = Hoge->calcFuga();
とせずに
Hoge->calcFuga(); // ここで、メンバ変数m_fugaに値設定。戻り型はvoid。
Fuga fuga = Hoge->getFuga(); // m_fugaを返す
でもって、m_fugaはこの二つのメンバ関数以外には使われず。
あるいはこんなの。
class Foo{ // Barではなく。
...
public:
// クラスBar(Fooではなく)の状態を表す変数。
int state_of_bar;
...
};
Foo g_foo;
...
void Bar::do_something()
{
...
g_foo.state_of_bar = 何か;
...
}
void Bar::do_another_thing()
{
...
if(g_foo.state_of_bar == さらに何か){
...
}
}
はたまたこんなの。
// Hage.h:
class Hage{
public:
// メンバ関数のみ
...
};
-------------------------------
// Hage.c:
static int var1;
static char *var2;
...
Hage::Hage()
{
// var1などの初期化
var1 = 10;
...
}
...
なかなか理解できないので、裏紙にメモし、ノートにまとめるといった作業をしていたら、一週間でノート1冊潰しそうな勢い。
ウン。ケイケンヲツメバ、キットハンカンヲイダクドコロカスバラシサニキガツクニチガイナイデスヨ。
コウイウこーどヲスグリカイデキルヨウニ、ソシテジブンデモカケルヨウニショウジンシヨウ。ソンナフウニナリタクナイトオモウノハキノマヨイニスギナインダ……
# ああ、荒むなぁ
逃げちゃダメだ…逃げちゃダメだ…逃げちゃダメだ――!! (スコア:1)
そもそもオブジェクト指向のコードは得意でないし
(必要感じないから)
だけど、コレはアリエネーw
Re:逃げちゃダメだ…逃げちゃダメだ…逃げちゃダメだ――!! (スコア:1)
が、何より恐ろしいことは、 *さほど問題なくしっかり動いてしまっている* ということ。
それこそアリエネー><
巧妙に潜伏したバグは心霊現象と区別が付かない。