優れたプログラマーになるための10の方法

優れたプログラマーは、一方通行で道路を横断し、両方向を見る人です。

ダグ・リンダー


プログラマが毎日職場に来るのはなぜですか? プログラミングへの情熱とそれからの楽しみ。 しかし、プログラミングを本当に楽しんで楽しむためには、優れたプログラマーになるための基本的な知識が必要です。



マントラを書くつもりはありません。それに従って、あなたは優れたスペシャリストになります。 私の目標は、この職業で成功するのに役立ったものをリストすることです。 優秀なプログラマが誰であるかについての明確な定義はありません。 つまり、優れたITソリューションを開発し、業界の発展に貢献する人を意味します。





1.基本を学ぶ



基本を理解することは、あらゆる業界や職業で成功するための鍵です。 基本を十分に理解していない限り、優れたプログラマーになることはできません。 基本を知ることで、最適なソリューションを最適な方法で設計および実装できます。 知識にギャップを感じたら、それがコンピューターサイエンスの基礎であろうと、あなたが書いている言語の概念であろうと、戻って忘れてしまったことを繰り返すのに遅すぎることはありません。



2.質問する(どのように?なぜ?)コードを書くとき



優秀なプログラマーを他のすべてのプログラマーと区別するものが1つあります。何がどのように起こっているのかを知りたいという欲求です。 コードが実行されたときに何が起こるかを正確に知るまで、コードを放置しない人がいます。 これにより締め切りが近づき、常に時間があるとは限らないことを理解しているため、機能を実行し始めるとすぐにコードを使用することになります。 そして、そのような状況での振る舞いは別の会話のトピックですが、各プログラマーはコードの作業を理解するために可能な限りの努力をすることができます。 そして、私を信じてください。時間が経てばそれは習慣になり、あなたはすでに無意識にそれをするでしょう。



3.他の人に教える-自分で学ぶ



私たちのほとんどは、助けが必要なときだけフォーラムやグループに頼ります。 優れたプログラマーを他のすべての人と区別するもう1つのこと:優れたプログラマーは、他の人を助けるためにそのような場所をよく見る。 この種のヘルプは、問題の解決に役立つ以上のものを教えてくれます。 私を信じて、あなたが他人の問題とその文脈を理解し、それを振り返り、解決策を与えた後、あなたはもっと多くを学ぶでしょう。



4.シンプルでわかりやすいが、同時に論理コードを書く



他の分野と同様に、KISS(シンプルで短く保つ-短くシンプルにする)の式もプログラミングで機能します。 論理コードを記述し、複雑化を避けます。 時には、そのようなコードを書くことができることを証明するためだけに複雑なコードを書くことがあります。 私の経験では、単純で論理的なコードは常にうまく機能し、問題が少なく、拡張性が高いことが示唆されています。 素晴らしいフレーズを思い出します:



良いコードは最高のドキュメントです。 コメントを追加するたびに、「コメントを必要としないようにこのコードを改善するにはどうすればよいですか」と自問してください。

スティーブマッコネル


5.問題を分析するのにより多くの時間を費やせば、それを修正するのに必要な時間が短くなります。



問題の理解と分析、およびソリューションの開発により多くの時間を費やしてください。 そして、残りは簡単になります。 ソリューションを開発することは、言語やモデリングツールを使用することを意味するものではなく、空を見てソリューションについて考えることができます。 問題を発見するとすぐにキーボードをノックすることに慣れている人にとって、結果は通常期待される結果と一致しません。



シャワーを浴びている間にプログラムの一般的な構造を完全に理解できない場合は、プログラムする準備ができていません。

リチャード・パティス


6.コードの最初のレビューと評価を行います。



これは難しいことですが、他の誰かがやる前にコードを壊してみてください。 時間が経つにつれて、ほとんどエラーのないコードを書くことを学びます。 コードの詳細かつ公平な評価を常に実施してください。 そして、他の人があなたのコードについてどう思うかを尋ねることを恐れないでください。 優秀なプログラマーと協力し、彼らの意見を聞いてください。これは、優秀なプログラマーになるのに役立ちます。



7.技術の急速な変化に心配しないでください。



ITで働いている間ずっと、自分の仕事に満足していない多くの人々や、最新のテクノロジーで仕事をするように転職した人々に会いました。 そのような努力には何の問題もありませんが、間違いは「最新の技術」にあります。 開発を迅速かつ簡単にするために、新しいツール、API、およびフレームワークが毎日作成されています。 そして、この傾向は減少しません。 ただし、理解する必要があるのは、フレームワーク、新しいツール、およびAPIよりも基本的な知識と基本的な変化がはるかに遅いことです。 表面に速い流れがある海との類似性を描くことができますが、深さでは水は穏やかであり、それがボリュームの大部分を占めています。 したがって、基本に近い「深さ」にとどまります。 エンタープライズJavaアプリケーションの世界には多くのWebフレームワークがあり、新しいものは2週間ごとに公開されます。 ただし、クライアント/サーバーアーキテクチャの基本、MVS(モデルビュー分離)テンプレート、フィルター/サーブレット/ JSP、リソースパッケージ、XML処理など 変更されません。 したがって、絶えず変化するフレームワークを研究するよりも、これらの基本を研究することに時間を費やすことをお勧めします。 私を信じて、基本を知っていれば、新しいAPIとフレームワークを学ぶのがずっと簡単になるでしょう。



8.「松葉杖」*長時間動作しない



多くのプログラマーは、松葉杖を使用しています。時間の不足、問題の理解、経験からです。 ただし、時間が経つにつれて、そのような決定はコードを悪化させます。コードの拡張性が低下し、保守が容易になります。 常にすべてを知っている実装を書くようにしてください。 ある状況では「割れ目」が避けられないことを理解していますが、状況は「常に真実を語っていますが、時には嘘をつくこともあります」というようなものに似ています。



9.ドキュメントを読む



優秀なプログラマーは多くのドキュメントを読みます。 仕様、JSR、API、ドキュメント、チュートリアルなどがあります。 ドキュメントを読むことで、基本を理解でき、問題を最善の方法で解決できます。



10.他の人のコードも何かを教えることができます



私はIDEでJavaの他の人のプロジェクトのソースコードを絶えず保持し、毎日アクセスしている2人の優秀なプログラマーと仕事をしました。 彼らはこれを、基本的なことの仕組みを学びたいという欲求だけでなく、優れたプログラムの書き方を学びたいという欲求からもしました。 有名なオープンソースプロジェクトのソースコード、またはリードプログラマーによって書かれたコードを読むことで、コードをより良く書くことができます。



最後に、自分を他の人と比較しないでください



自分と他の人を比較すると、健康が悪くなり、不健康な競争になります。 誰もが自分の長所と短所を持っています。 あなたの長所と短所を理解し、それらに取り組むことがより重要です。 多くの場合、いわゆるFundooプログラマー(優れた基礎トレーニングを受けたプログラマー)でさえ、愚かな間違いを犯す方法を見ました。 したがって、自分自身や仕事のために改善すべきことを分析し、書き留めてください。 楽しみのためのプログラムとそれをお楽しみください。



誰でも、コンピューターが理解できるコードを書くことができます。 優れたプログラマーは、人々が理解できるコードを書きます。

マーティン・ファウラー





*-回避策という言葉のかなり無料の翻訳



All Articles