プログラマのように考えたくない

翻訳者から:



私はブックメイトの技術マネージャーです。 私にとって最も重要なことは、私がビジネスからプログラマーへの絶え間ない翻訳者として行動する必要がないような人を集めることです。 人生は短すぎます。

この記事は、私が多くのことを学び、毎日仕事を続けているLesha Gusevによって投げられました。 ありがとう、レシャ!

彼はSkypeで「わあ、男が私のマニフェストを書いた」という言葉を使ってリンクを投げました。

そして、私は彼に完全に同意します。



————————



プログラマーとしての考え方を教えます-入門書やプログラミングコースで目標を指定することがよくあります。 もちろん、これは非常に狭い「Javaを教える」よりも優れています。 文字どおりに受け取らないでください。 もっと正直で正確な言い回しは、「分析的に分解するタスクを教えること」です。 しかし、この最初の曲がった一連の単語-「プログラマーのように考える」-を警告とリマインダーとして機能させてください。



結局のところ、実際には、プログラマーとして考えたくありません。





最初に適切なコーディングプラクティスを学ぶと、すべてが小さく始まります。 グローバル変数を使用しないでください-すべてのデータをオブジェクトにパックしてください。 データの内部表現を隠すために、ゲッターとセッターを作成します。 可能な場合はconstを使用します。 ファイルごとにクラス宣言は1つだけにしてください。 他の人が読んで理解できるように、ソーステキストをフォーマットします。 きれいに整頓された柱が得られるように、等号を付けるのに時間をかけてください。



時間が経つにつれて、これはプログラミングと「完全なコード」を引用するパターンの思考に発展します。 これらすべての理解できない人々は、あなたの美しいアーキテクチャにすり込むのが難しい機能を追加することを望んでいます。 彼らは複雑さが敵であることを理解していないのですか? パールやPHPで有用なプログラムが作成されるたびに、それはすべてのコンピューターサイエンスにとって恥ずべきことであることに気づきます。 Lispは正しい方法であり、Pythonを不可欠なツールにするほとんどのライブラリにアクセスできない場合でも使用する必要があります。 静的型付けが動的型付けよりも優れていることを証明し、TDDを説教すると、すべてがなくなります。



これ自体はそれほど悪いことではありませんが、一緒になってあなたの心を捉えます。 あなたが働く主題分野に夢中になるはずです-これらの退屈なチュートリアルなしでゲームを作る方法、写真アプリケーションのためのツールの最も表現力のあるセットは何ですか-これらの無限の「プログラマー」の考えからではありません。



毎日/週/月ごとにプロジェクトを成功裏に完了するだけで、何かをする方法(ウェブサイト、コンピューターゲーム、または曲を書くなど)を学ぼうとする人をよく見かけます。 私はこの方法が大好きです! それは絶対に直接的で、刺激的で刺激的です。 これは学ぶための素晴らしい方法です! 最初のプロジェクトは、労働者から何か(何でも)を取得することです。 以下は、身近なもののリサイクルです。 たとえば、ヘビを書きます。 またはテトリス。



あなたがすでにそのような旅に乗り出しているなら、最良の最初のステップはあなた自身のアイデアを研究することです。 あなたの前任者が彼らの前に来た人々からコピーしたものをコピーしないでください。 実験。 クレイジーなことをしてください。 以前に発明されたものだけを実現して、あなたは自分を実装者、他の人のアイデアのエンジニア、プログラマーにします。 この機会を利用して、新しいクリエーターとしての評判を獲得してください。



そして、突然、コーディングの方法を理解できます。



PS翻訳、ウラジミール・ハリトノフ編集



All Articles