みなさん、こんばんは~
シニアAです![]()
いつもSE道場をお読みいただきありがとうございます![]()
前回は新人を残して出張に行くところまででした![]()
(続きをどうぞ)
『ええ~、出張ですか
ちょっと無理ですよ
』
『そこを何とか
』
『だけど5月29日納期の仕事があって・・・』
『先方はどうしてもSEに来てほしいと言っているんだ
』
『しかも新人がこれからコーディングなのに・・・』
『お願い
この通りだ
』
『そんなに言われても困ります
』
『君しかいないんだ! 頼むよ
』
出た
この殺し文句。前編でも言ってた。
この会社の上の人はみんな同じ殺し文句をつかうな![]()
こうして出張にいくことになり、翌週になって、わたしは帰ってきた![]()
出張中に考えていたのは、ハードウェア制御部分を共通関数化したから、共通関数の呼び出し部分のコーディングはさぞかし分かりやすいだろうということだ![]()
きっと問題なく出来ていると期待して、新人とコーディングレビューを始めた![]()
画面メニューの項目は全部で17ある![]()
そのうち13項目は共通関数を似たような形で呼び出している![]()
ここまでは良かったが、その先はとても分かりやすいとは思えない![]()
『これは、わかりにくいな。こんなに複雑怪奇になる訳はないんだが・・・』
『複雑複雑って、面白い言い回しですね
』
『君は自分で分かりにくいとは思わないのか
』
『そんなに複雑ではないと思いますよ。もっとよく見て下さい
』
『こことここは共通関数の呼び出し順がかなり入れ替わっちゃってるよ。なんでだ
』
『同じ順番でなくてもいいと思ったんで入れ替えちゃいました
』
『そもそも、呼び出しパターンが17通りもあったら、何でこれを関数化していないんだ
』
『やだな~、同じロジックの時だけ関数化するって習いましたよ
』
『それしか教えなかったか
』
『はい、だからこことことは同じロジックだったので、関数化してあります
』
『同じロジックだけ関数化してもたかが知れてる。これからは似て非なるロジックも関数化するんだ
』
言葉のあやというか、わかりやすくするために言った「同じロジック」を「似て非なるロジック」に置き換えておくべきだった![]()
![]()
後悔してもあとのまつり、いまから修正しても到底間に合わない![]()
この仕事は、似て非なるロジックを関数化できずに終わってしまった![]()
苦い経験だった![]()
プロジェクトが終わったとき祝杯を挙げたが、反省の多いプロジェクトだった。
(終わり)
次回のSE道場をお楽しみに・・・
SE道場では、プログラミングの極意や開発の苦労話等、様々な記事を投稿しています
是非ご覧ください![]()
1つ前の開発秘話は...
