引き継いだプログラムソースが無駄に複雑でイラッとした話

引き継いだプログラムソースが無駄に複雑でイラッとした話

ソフトウェア開発における製造や保守フェーズにおいて、他人からプログラム一式をバトンタッチされたとき、当該プログラムソースが無駄に複雑に組まれており、イラッとした経験はプログラマなら誰しもが経験することではないだろうか。

ある程度暇な時期ならまだしも、多忙な時期であればソースを書いたプログラマ張本人に対して、憎悪の念すら抱いてしまう。そんな出来事を僕自身の経験をもとに話していこうと思う。

 

普通ならこう書くよねってあるよね

ある程度プログラミングができる人なら分かるとは思うが、○○の処理をしたいなら、普通は○○の関数を使って・・とか、共通部品の中のモジュールを利用して・・とか「普通ならこう書くよね」というセオリーのようなものがある。

もちろんプログラミングなんてものは自由な代物で、処理結果さえ間違いなければ、コーディング規約の範疇以外はどのようなソースを書いてもよい。だからどんなソースコードを書こうとも、特別何かに違反しているわけではないのだが、奇抜なソースコードに直面すると心中穏やかではなくなる。

 

あれはAccessでの開発だった

あれはAccessでの開発だった。チーム内の別エンジニアの稼働がかなり高くなっていたため、作成途中だったプログラムを引き継いで僕が担当することになった。

Accessでお客様のデータ管理のための補助ツールを作成するぐらいの規模なので、まったくもって大きなプログラムではない。そのためすぐ終わるだろうと、たかをくくっていたのだが、作りかけのプログラムソースを見て驚愕した。

自分が普段書くようなソースコード、いや、世間一般のプログラマが書くようなソースコードとは、明らかに異質なものだった。マイナーな関数を使用してるがゆえに複雑なロジックになっていたり、ソースの所々にはAccess特有のクエリ処理も挟まっているわけだが(それはよいとして)、そのクエリの使い方も「こんな使い方できるんだ!」と新しい発見が生まれるレベル。

速攻でGoogleで検索しても、あまり情報が出てこない。恐らくではあるが、前任者は高度なプログラムスキルを保有しており、その技術力を全力でぶつけているのだ。

 

ただそこで思う・・

「この処理のために、こんなことする必要ある!?」と。

 

世間一般のPGが思い描くようなセオリーに従うなら、もっと読みやすく、使用頻度の高い関数などを使用するものだが、そうした常識とは無縁のソースコードを前にして、きっといくばくかの時間白目をむいていたと思う。

仕事としてのコーディングという観点で評価するならば、上記のようなソースは崇高なプログラムでも何でも無く、ただ単に“無駄に複雑なだけ”のプログラムなのだ。すぐ近くの席で作業している前任者のことを、いまいいましくも思ったりした。

 

コメントも少ない

コメントも少なかった。やはりコメントを残すということは、プログラマ自身の頭の整理以上に、後任者への配慮として大事な行為だ。

「コメントなんて面倒だ」とコメントを残す行為をおろそかにするエンジニアは、大罪を犯していると言ってもよいだろう。コメントの重要性については、うちの会社のウェブサイトにて僕が書いた「ソース内にコメントを残しておくことの重要性について」という記事をしっかりと読んで理解ほしい。

チームで開発に取り組む以上は、必ずコメントを残しておくようにしよう。複雑なプログラムであればなおさらだ。

 

怒りが頂点に達した無駄な顔文字

話はこれでは終わらない。

難解なソースコードに腹立たしい思いもしたのだが、その怒りが頂点に達したのはその後だ(複雑なプログラムという話とは関係ないが、あえて伝えておこう)。

画面上のボタンをクリックすることで処理が流れ、処理が終了すると、ユーザーに処理終了を告げるメッセージボックスが表示される仕組みになっていたのだが、そのメッセージにまたイラッときてしまった。

画面上に表示されたメッセージには「終了しました( `・∀・)ノ」という文字列が並んだ。

何なんだその顔文字は!

その瞬間イラッとした気分が頂点に達し、恐らくいくばくかの時間白目をむいていただろう。

 

おわりに

いくら自身の技術力が高く、そうした技術を使ってみたいとしても、チームで管理するようなプログラムでその気持ちを発散させてはいけない。

もちろん高度なロジックが求められる処理であれば別だが、よくあるデータ処理プログラムに対して、そうした技術を駆使してしまえば、他エンジニアからして見るとそれはただの無駄に複雑なだけのプログラムでしかないのだ。

関数を使用するならできるだけメジャーなものを使うべきだし、できるだけ理解しやすいソースコードを書くことに努めてほしい。

仕事のことカテゴリの最新記事