カレンダー

2020/07
   
1011
12131415161718
19202122232425
262728293031 
       

広告

Twitter

記事検索

ランダムボタン

美しいコードとは

by 唐草 [2018/02/23]



 今日も退屈なエラー処理を書き連ねていく。クラウドとCMS(コンテンツ管理システム)依存のコードなので、ディスクI/Oエラーみたいな原始的というか物理的なエラーのチェックはないのだけれども、その代わりネットワーク周りのチェックが何段階もあって面倒だ。
 PHPで書いているので基本的な条件分岐であるif構文だらけになってきてコードも読みにくくなってきている。Javaみたいなtry/catch構文もあるけれど、ぼくの理解度が低いせいかどうもうまく使いこなせていない。
 エラー処理のコードを書き足しながら感じていることがある。今回のこのコード、全然美しくない。
 なぜ動くか分からないサンプルコード群をコピペしてできたの今回のコードの基本部分。どうしてうまくいっているのか分からない。でも、動いているからOK。そんないい加減さが随所に見られる。明らかにぼくが思い描く理想の美しいコードからはかけ離れている。
 美しいコードなんてプログラムを書かない人には、さっぱり分からない話だろう。
 行揃えがしっかりしているとか、関数の名前がカッコイイとかそういう見た目的なことではない。ぼくが言う美しさとは、基本骨格がしっかりしているという意味に近い。
 基本骨格がしっかりしていると急な変更や新たな機能の追加だって容易に行える。彫刻に例えると、人物像を作っていたのに急に「直立のポーズから、走っているポーズに変更して」とか「やっぱ、阿修羅が良いから三面六臂に改造して」と言われても対応できる余裕があるかどうかと言った感じだ。今、ぼくの目の前にあるコードにその余裕はまったく感じられない。腕だって強引につけているので、6本どころか3本に増やすことも難しい。顔だってちょっと改造しようとしたら首ごともげてしまうだろう。処理をひとつでも追加したら破綻してしまいそうな儚さすら感じられる。
 実に美しくない。そして、美しくないところには大抵バグが潜んでいる。ちょっと大規模な書き直しが必要そうだなぁ。とは言え、手直しに耐えられるほど丈夫そうじゃないんだよなぁ。