「カウボーイコーディング」とは?意味や概要・語源・「アジャイル」についても解説!
プログラムの組み方には、それぞれの個性が現れるものです。
しかし、この「カウボーイコーディング」は、あまり褒められたものではありません。
目次
- 「カウボーイコーディング」とは?
- 「カウボーイコーディング」の概要
- カウボーイコーディングの語源
- 「アジャイル」とは?
「カウボーイコーディング」とは?
カウボーイコーディングとは、コーディングをした自分だけしか理解できないような荒々しいプログラムの組み方のことです。
オブジェクト指向のプログラミングがメインとなってきた近年では、同じことをしようと思った時に、誰が組んでもそれほど差が出なくなってきましたが、フルコーディングで作るようなプログラムでは、他の人が見ても分かるように組まないと、その人しか修正や改良ができないことが少なくありません。
「カウボーイコーディング」の概要
カウボーイコーディングのプログラムは、他の人が理解するのは大変なことが多いです。
特にフルコーディングでは、他の人が見ても分かりやすくする努力をしないといけませんが、そのように作るのが面倒だと思ってしまい、つい自分だけ分かればいいと思って、雑に組んでしまうことが少なくないのです。
他の人にも理解しやすいプログラムには、メインルーチンはできる限り短くし、サブルーチンを多用する「構造化プログラミング」が求められます。
この構造化プログラミングは、大勢で1つのソフトを開発しているような環境では必須だと言ってもいいでしょう。
カウボーイコーディングの語源
カウボーイコーディングの「カウボーイ」には、荒々しい、荒っぽいという意味が多分に含まれています。
1人で荒野を駆けるカウボーイに例えて、自分だけがよければいいというプログラムの作り方に対し、そのような表現が使われるようになりました。
「アジャイル」とは?
この「アジャイル」も、プログラムの組み方に関する用語の1つで、素早く、且つ軽くプログラムすることを指す言葉です。
軽く組むとは、できるだけ短くするという意味だと考えていいでしょう。
また、「適切に」という意味も含んで使うこともあり、要は「カウボーイコーディング」の反対だと解釈すれば間違いはありません。
だらだらと自分だけがよければいいと組むプログラムに対し、できる限り軽く(短く)、適切にプログラムを書くことです。
それが、誰にでも分かりやすいことにそのまま繋がります。
納期(開発期間)の関係から、ついカウボーイコーディングになってしまうこともあると思いますが、できれば後からでも時間を見付けてアジャイルする(適切に作り直す)ようにしましょう。