プログラミングを学習している場合は、美しく、クリーンで、簡潔なコードを書くことに憧れるかもしれません。しかし、真実は、それはあなたが思っているよりもはるかに難しいことです。プログラマーであり作家でもあるピーター・ウェルチ氏は、すべてのコードが悪い (そしてプログラミングが最悪である) 理由を説明していますが、だからといって落胆する必要はないと考えています。
ウェルチ氏は、素晴らしい暴言投稿の中で、おそらく誰もが書きたいと思うような「良いコード」について次のように説明しています。
関数と変数には合理的で一貫した名前が付いています。簡潔です。明らかに愚かなことは何もしていません。自然の中で生きたり、営業チームの対応をしたりする必要はまったくありませんでした。それはまさに 1 つの、ありふれた、具体的なことを実行し、それをうまく実行します。それは一人の人間によって書かれたものであり、他の人によって触れられることはありませんでした。まるで30歳以上の人が書いた詩のようだ。
残念ながら、この「完璧な小さな雪の結晶」を作り続けることは、コードを量産するプレッシャーのせいで不可能であり、最終的には多くの人による欠陥のある作業の寄せ集めになります。
すべてのプログラマーは、このような完璧な小さな雪の結晶を書き始めます。それから金曜日には、火曜日までに 600 個の雪の結晶を書く必要があると言われるので、あちこちで少しズルをして、いくつかの雪の結晶をコピーして貼り合わせてみたり、同僚に雪の結晶を作成するように頼まなければなりません。それを溶かすと、プログラマーの雪の結晶がすべて不可解な形で一緒に投げ捨てられ、誰かがその上にピカソを立てかけます。猫の尿が壊れた雪の結晶に染み込んでいるのを誰も見たくないからです。日の光。来週、ピカソが倒れないようにみんなでさらに雪かきをします。
標準も、さまざまな個人的好みを持つ人々によって作業 (および再加工) される場合には、役に立たないとウェルチ氏は言います。
数十の同一のこと、あるいは似ても似つかない方法を数十回実行することなしに、コードのコレクションが現実世界に登場したことはありません。標準はユニコーンであるため、関連するすべての言語、フレームワーク、標準に精通していても、仕事の最初の数週間はプログラムがどのように機能するかを理解するだけです。
これが、プログラムが簡単に壊れてしまう理由であり、コーディングがしばしばイライラさせられる理由であり、プログラマーの友人が少々頭がおかしい理由でもあります。コードを学習している人にとって良いニュースは、コードが悪くても (あまり) 心配する必要はないということです。あなたにできることはとにかく良くなることだけです、そしてしゃぶりは上手になるための第一歩です何でも。
プログラマーの人生をユーモラスに (見方によっては悲しいことも) 見てみたい場合は、以下の Welch の投稿をチェックしてください。
プログラミングはクソだ|まだ飲んでいます
写真提供者smitty42。