エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

【意訳+要約】How To Write Better and Quality Code

※本記事は、Bardによる意訳+翻訳を活用し、レイアウト調整したものです。
※感想は、オリジナルです。

原文

How To Write Better and Quality Code - DEV Community

意訳+要約

より良いコードを書くための 10 のヒント

コード品質とは、ソフトウェアの長期的な保守性と信頼性を高め、開発プロセスを効率化し、エラーを減らし、ユーザーエクスペリエンスを向上させるために重要な要素である。

具体的には、読みやすいコードの構造化、再利用可能なコンポーネントによる冗長性の排除、コメントによる文書化、徹底した単体テストの実施、適切な開発ツールの選択などのプラクティスと原則によって、コード品質を高めることができる。

コード品質を高めることは、ソフトウェアの開発と運用に大きなメリットをもたらす。

ファイル構造

フォルダ構造は、できるだけファイルが整理してください。開発者がコードベースの特定の部分を見つけ、理解・修正することが容易にして、問題をデバッグしたりするのに必要な時間と労力を減らすことができる。

再利用可能なコード

関数が他の場所でも使える場合は、再利用可能なメソッドやコードを作るようにしましょう。重複したコードを大量に作りたくはありません。
特にコードをリファクタリングする場合は、この点をよく考えてください。

コメント

このコメントはとても重要だ。コメントはコードに影響を与えませんし、パフォーマンスにも影響を与えません。あなたの個人的なツアーガイドのようなもので、プログラミングを把握しやすくし、関係者全員にとってより楽しいものにします。
コードの目的や内部構造についての洞察を提供し、解読するための不可解な記号の束でないことを保証します。
未来の自分やチームへのメモとしても便利で、混乱を避けたり、ミスを見つけたり、将来の機能拡張を計画したりするのに役立ちます。
コメントはプログラミングの世界における友好的な仲間であり、コーディングの旅を明瞭かつ仲間意識を持って案内してくれるものだと考えてください。

注意:悪いコメントではなく、良いコメントを書きましょう。悪いコメントとは、書く必要のないコメントがあちこちに書かれていることです。

ユニットテスト

プロジェクトが初期段階にある場合は、できるだけテストを作成しよう。
これは、メソッドの質を高めることにもなる。
プロジェクトが新しいものでない場合は、重要な機能からテストを作成し、細かい機能は後でテストするようにしよう。
型安全のために静的型付け言語を使うことをお勧めする。

テストフレームワークを使う

JavaScriptテストに人気のあるツール: Mocha、Jasmine、Unit JS、Jest

PHPの一般的なテストツール PHPUnit

その他の提案 Vitest|次世代のテストフレームワーク

IDE

VS Codeを使う場合は、開発に必要な拡張機能をインストールし、VS Codeのプロファイルシステムを使うことで、開発環境ごとにプロファイルを設定できるようにしましょう。

JetBrainsの製品は、リファクタリング、コード重複チェッカーなど、間違いなく役立つ機能があります。

AIツール

AIを最大限に活用して、さまざまな作業を効率化しよう。
Google Searchのような従来の検索エンジンは、コード関連のクエリにはあまり効果がなくなってきており、Chat GPT、Bard、Microsoft EdgeのEdge CopilotのようなAIを搭載したオプションが有力な選択肢として浮上している。

ポジティブシンキング

人生で成功する準備はできていますか?「ポジティブ・シンキングの力: あなたの人生を変えるためのガイド "は、ポジティブ・シンキングの驚くべき力を通して、永続的な幸福、成功、自己成長を達成するためのロードマップです。

感想

フォルダ構造は、マジで大切。
置き場が明確化されてないと、依存関係がわからなくなったり、後々困ったりする。

再利用可能なコードって、簡単に書いてはあるけど、後続の修正を考えたりすると、ちゃんとした設計思想がないと、公開することが多い。
インタフェースについて習熟する必要があると思う。

たまに、コメント書くのが悪みたいな人がいる。
だいたい、Ruby使っている人だけど。
個人的には、コードに書けない背景とかを書いたりするのは、いいと思う。
過剰な記載はNGだけど、それ以外は許してもいいと思うんだよね。

最近は、コードの検索するのなら、AIに聞くほうが効率的ってのは、初めて知った。
検索にコードのベタ書きはできないからな。

ポジティブシンキングは、一生できる気がしないわ。。。