プログラミングの芸術?

コードが1行もないプログラミングの記事を読むのが大好きです。 そのような記事は「深部」で非常に発達しており、古くからあるものを異なる角度から見る機会をしばしば与えます。 そのため、すでに発育を止めたカルマに大衆の怒りを被る危険性があるので、誰かに思考の糧を与えるだけでなく、私の活動を新鮮に見させてくれることを期待して、この記事を公開することにしました。



開始する



そのため、現在の職場では、プログラマは自分のデバイスに任せられています。 それはもちろん、彼らは企業の利益のためにコードを書いていますが、平凡なテスターがいない限り完全に制御されていません。 TKは、「重い」プログラムであっても、3枚のA4シートのボリュームを超えることはめったにありません(そのうちの1枚は関係するすべての署名です)。



ソフトウェアの問題の呼び出しは、プログラマーに直接送信されます。 これがすべての始まりです。



同僚(私の専門分野、特にこの場所で働いている人)への電話の回数は、私のソフトウェアの電話の回数を超える(誇張せずに)桁違いに大きいことに気付きました。 さらに、呼び出しは通常、より「重い」ものです。 当社製品の普及率と複雑さはほぼ同じです。



コミュニケーションの過程で、プログラミングに関する同僚の意見に興味を持つようになりました。その後、いくつかのプログラムのソースコードを見て、すべてが適切に配置されました。



創造的な個性に関するオーパス



さまざまな個人的およびビジネス上の理由で、私は創造的な人々とコミュニケーションを取ります。 これらは主に様々な方向のミュージシャンとアーティストです。 彼らの生息地から店やカフェまで、私はしばしば様々な環境で彼らを訪問します。



自宅では、そのような人々は原則として、ペイントで染められたソファやボロボロの壁からひどい種類の家庭用電化製品や調理器具まで、創造的な混乱の混乱の中に君臨します。



このような人々の行動には特定のベクトルがありますが、そのパラメーターは浮動小数点数ではなく、「南南南西」の方向によって設定されます。 これは、ショッピング旅行(このような人々と一緒にリストにあるものを買うのは非現実的です)だけでなく、創造性を含むすべてにも当てはまります。



作品に取り組むとき、アーティスト/ミュージシャンは通常、この非常に「南南西のベクトル」から始まります-特定のムード、コンセプト(この場合、内部で生まれるか、顧客によって発行されます。これはそれほど重要ではありません) ほとんどの場合、最終結果は非常にあいまいに見えます。 公平に言えば、これは-創造性の喜びの大部分-それが行われる方法を実行することです。 これは、本質的に「自分を表現する」試みです。



創造的なプログラマー



プログラマーについての会話に戻ります。 コミュニケーションの過程で、一部の同僚は「創造的な職業」の代表として自分自身について話していることに誇りを持っていないわけではないことが判明しました。 同時に、ほとんど完全な属性セットを備えた創造的なアプローチ(「南南南西ベクトル」)を実際に使用しています。 その結果、完全にエキセントリックな接続のモジュールが表示され、「ここにそのような図を作成します」という階層を持つクラスが作成されます。大量のコピーと貼り付けでデータをエクスポートします)。



エラー処理は発生時に行われます-ここでは戻り値を確認し、次のファイルには例外処理メカニズムがあります。 ここではスマートポインターを使用し、そこで直接作業します。 そして、この種の他の束。



このような作業の結果、完全に予測不可能な動作が発生します。 開発者の主な問題は、新しいバージョンのエラーを修正すると、一見デバッグされているモジュールに常に新しいエラーが発生することであり、すべてを完全に書き換えることなくこれを防ぐことであり、すべてがすでに非現実的です。 そのような製品に付随することは非常に困難です。最も基本的な点を改良するには、すべてがクラッシュしないように、できれば既存の「創造性」をコピー&ペーストせずに何かを行う方法を理解するために、コードの長い瞑想が必要です。



このf話の教訓



プログラミングは、ロマンチックな傾向にある後輩が何と言っても、自分自身の表現ではありません。 良いコードとは、特定のルールに従って明確に設計および構築されたドキュメントです。 残念なことに、プログラマーは、埋め込まれた命令の品質に応じて、何らかの方法で別のロボットにこれらのタンパク質塊が望むものを説明するロボットです。 プログラミングには創造性のための場所はありません。ファイルと変数の名前付けからパターンで終わりまで、すべてが明確なロジックの対象であり、最大の効率があります。 その結果、この効率のために、プログラマーは雇用者のお金だけでなく、製品に付随するときの安心と、プログラムに問題が発生した場合の状況に対するコントロールの感覚も受け取ります。



プログラマーが適切に書かれたTORを与えられていない場合でも、最終的に何が起こるかを明確に理解する必要があります。 書かれたものを深く修正しなければならない可能性がある場合-さらに良いことに-強力な修正の可能性があるソフトウェアを作成するタスクは非常にエキサイティングで、単純ではありません。



結論として、Steve McConnellのフレーズ-「あなたが住んでいる場所を知っている暴力的なサイコパスが同伴するかのようにコードを書いてください」。 サイコパスは、論理と秩序の欠如から頭を折ると、非常に怒っている可能性があります。



All Articles