CodeGym /Java Blog /ランダム /人のコードを読む必要がある理由とそれを正しく行う方法
John Squirrels
レベル 41
San Francisco

人のコードを読む必要がある理由とそれを正しく行う方法

ランダム グループに公開済み
良い作家になりたいなら、文法を知っているだけでは十分ではありません。また、この文法を使って目立つ文章を作成する方法を紹介する本をたくさん読む必要もあります。同様に、優れたプログラマーになりたい場合は、単に Java を学ぶだけでは十分ではありません。また、他のプログラマが書いた質の高いコード サンプルをたくさん読む必要があります。そして最も重要なのは、それらを理解し、そこから学ぶことです。実際、高品質のコード例に触れることが、新しいスキルをいかに早く効果的に習得できるかに影響を与える重要な要素の 1 つです。 人のコードを読む必要がある理由とそれを正しく行う方法 - 1

他人のコードを読むことの重要性

他人のコードを読むのが嫌いですこれらは、プロジェクトのあらゆる部分がどのように機能するかを理解し、プロジェクトがどのように行われるかについて有益な洞察を提供します。これは、知識を大幅に向上させ、最終的には独自のスタイルを確立するのに役立ちます。

コードを掘り下げる方法

他人のコードに飛び込むと、開発者というよりは考古学者兼研究者のような気分になるかもしれません。自由に使える「シャベル」がたくさんあるので、それは何も悪いことではありません。現在では、コードをより簡単に理解するのに役立つ多くのメタデータにアクセスできるようになりました。たとえば、Gitを使用すると、コードを読んだり、コピーしたり、貼り付けたりするときに役立ちます。ただし、いくつかの重要なポイントは、最初にコードをよりよく理解するのに役立ちます。まず最初に、次の質問をする必要があります。
  • コード内に見覚えのないものはありますか? その場合は、それらの「空白スペース」を確認し、それらが何に使用されているかを確認してください。
  • コードに不必要なものはありますか? 特に大規模なコードベースについて話している場合には、デッドコードも存在します。
  • コードに依存関係はありますか? 場合によっては、さらに多くのコードをコピー/ペーストして依存関係を削除した方が良い場合があります。
  • 貼り付け後にエラーは発生していませんか?
もう 1 つの推奨事項は、コードが何を行っているかを見つけて、そのアクションを逆方向に追跡することです。たとえば、表示しているコードが映画タイトルのリストを含むファイルを作成することがわかっている場合は、コードがそのファイルを生成する特定の行を理解してください。次に、一歩戻って、コードがそのファイルに情報をどのように配置するかを確認します。次に、データがどこから来たのかを理解するためにもう 1 歩後ろに進んでください… アイデアはわかりました。上記のコード部分は「アクションのチェーン」と呼ぶことができます。これにより、次のようなことについて大きな洞察が得られるかもしれません。
  • コード本体が実際にどのように構築されるか。
  • コーディングのスタイル。
  • コードを書いたプログラマーが問題をどのように解決するか。
同様に、作業中のコードについて詳しく知るために、次の 4 段階のプロセスを試してみてください。
  • コードを実行して結果を調べます。コードを実行すると、コードをより深く理解するために必要な重要な情報が得られます。

  • その主な機能と開始点を見つけます。

  • デバッガーでコードを実行し (最も効率的な Java デバッグ ツールはここで見つけることができます)、コードの仕組みを完全に理解します。そうすることで、読んでいるコードの内部機能を詳細に分析できます。

  • コード内のさまざまな要素間の接続のマインドマップを作成します。どのデバッガーでも要素間の接続が表示されるため、さまざまな関数を関連付けて、それらがどのように相互作用するかを理解できます。

上記の方法でコードを調査すると、最終的には特定のコード (およびその部分がどのように接続されているか) をさらに理解できるようになります。当然のことながら、コードについて知れば知るほど、コードベース全体の理解も深まります。言い換えれば、高品質のコード例を調べて使用すると、時間の経過とともに他のすべてのコードを読んで理解することが容易になります。

キャッチは何ですか?

他のプログラマーのコードを読んで理解することに何の意味があるのか​​と疑問に思うかもしれません。実際、これは既製のモジュールが「内部で」どのように機能するかを理解し、何か新しいことを学ぶ素晴らしい機会です。また、自分の脳が理論を読んで実践する以外の方法で情報を処理する準備ができていると感じたら、おそらく、追加の労力をかけずに Java スキルを磨く時期が来たと考えられます。

他人のコードを使用することによるその他の「副作用」: 自信の向上

OSS (誰もがすぐに利用できるオープンソース ソフトウェア) のソース コードを読んだものの、何も理解できなかったとしても、心配する必要はありません。特に学習したばかりの場合は、まったく問題ありません。それは、まだ準備ができていないことを意味している可能性があります。ただし、コードを理解できれば、Java 開発者としての自信が確実に高まるでしょう。実際のプロジェクト、ソフトウェア プログラム、またはアプリがどのように機能するかを正確に理解できれば、プログラミングについてすでによく知っていることになります。したがって、学習プロセスを止める方法はありません。ただし、CodeGym では、最初から高重量を持ち上げることはお勧めしません。大規模なアプリケーションやオペレーティング システムについて詳しく調べないでください。この経験は感動を与えるというよりも、かなりイライラする可能性があるからです。その代わり、「ヘルプ」セクションでは、他の生徒のコードを読んだり、ヒントを与えたり、生徒の経験から学んだりするトレーニングができます。また、同僚が同じタスクをどのように解決しているかを知ることができます。あなたの興味を引くかもしれないもう 1 つの手段は、StackOverflowコミュニティです。そこでは、他のプログラマによって書かれたコードは、通常、かなり構造化され、フォーマットされており、すでにコメントが付けられています。徐々に、仲間からの高品質 (ただしそれほど複雑ではない) コードを読む習慣が、まったく新しいレベルのプログラミングに到達します。

そのうえ?

コードを定期的に読むと、後でプロジェクトでコードを使用することも促進され、最終的には特定のニーズに合わせてコードを修正して慣れることができます。もちろん、ライセンスによって変更が許可されているオープンソース ソフトウェア コードについて話しているのであれば。このようなコードは、プロジェクトを最初から作成する時間を大幅に節約し、新しいレベルのプログラミングへの扉を開きます。ご覧のとおり、コードを読んでコピーして貼り付けると、スキルが向上し、時間を大幅に節約できます。そして、その余分な時間は、適切な問題を解決し、スピードを高めるのに役立ちます。実際には、既存のコードをコピーして貼り付けることが最善の方法である場合もありますが、ライセンス条項と、コピーするコードへの完全な没入については常に覚えておいてください。GitHubGitLabFreeCodeCampまたはSourceForge は、他の開発者のコ​​ードを垣間見ることができる、間違いのない最高のオープン リソースです。

結論

新しいコードを書く際に古いコードを読まないプログラマーはいません。プログラミングを長く続けるほど、より多くの異なるコードが表示され、理解が容易になります。コードサンプルが読みやすくなると、新しいコードを書くのも簡単になることに注意してください。一言で言えば、これは、他人のコードをより迅速かつ効果的に理解する能力を獲得する、素晴らしい自己永続的なサイクルです。このことから、独自のコーディングでもプラスの効果が得られることがわかります。したがって、中断を減らしてより多くの作業を進めたい場合は、既存のコードを読み、理解し、修正することを怠らないでください。
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION