ホームページ >テクノロジー周辺機器 >IT業界 >コードベースでファイルを適切に整理する方法と騒乱を避ける方法
心配しないでください - 私たちはそれをすることができます!この記事では、中小プロジェクトに最も一般的に使用されているシステムをレビューし、フォローが簡単なベストプラクティスを提供します。
キーポイント
今すぐ書いているものの関数名を間違いなく思い出すことができ、編集する必要があるファイルをすばやく見つけて、何が機能し、何がそうでないか、またはあなたがどう思うかを明確に伝えることができます。しかし、昨年働いたプロジェクトについて同じことを言うことができますか?
認めましょう:ソフトウェアプロジェクトは、数か月または数年の不活性性が続く場合があります。シンプルなreadmeファイルは、同僚や将来のあなたのために多くのことをすることができます。ただし、プロジェクトを構築し、ファイルに名前を付けるためのいくつかの基本的なルールを構築し、プロジェクトのドキュメントを処理し、ある程度時間のテストに耐える効果的なワークフローを整理できる他の方法を考えてみましょう。物事を理解する
組織プロジェクトのドキュメントの「ベースライン」を確立します。これは、ソフトウェア開発の範囲内で多くの状況で私たちに役立つロジックです。
コードベースの変更を正しく送信することに関するルールと同様に、これらはいずれも石に設定されておらず、その価値の観点から、あなたとあなたのチームは異なるガイド原則を提案するかもしれません。とにかく、一貫性はゲームの名前です。ルールが何であるかを理解し、議論または議論していることを確認し、コンセンサスに到達した後にそれらに従ってください。これは、ほとんどすべてのソフトウェアプロジェクトが必要なファイルの参照リストです。
バグ:新たに発見されたエラーを報告するための既知の問題と指示。
Internationalization(I18N)およびローカリゼーション(L18N)
認証モジュール
プロジェクトをきちんと整然としていることを望んでいますが、プロジェクトから完全に除外したい文書がいくつかあります。
データ。 CSVファイルなどのソースツリーにデータ/ディレクトリを使用するように誘惑される場合があります。特に、数キロバイトしか使用しない場合。しかし、彼らがメガバイトやギガバイトを取り上げたらどうでしょうか(最近は珍しいことではありません)?あなたは本当にあなたのコードベースと同じようにこれらをコードに送信したいですか?いいえ。
バイナリファイル。ビデオレンダリングまたはコンパイルされた実行可能ファイルをソースコードの隣に配置することは望ましくありません。これらは開発ファイルではなく、ここにはまったく属していません。データファイルのように、彼らは最終的に多くのスペースを占有することになります。
設定。これは別の大きなタブーです。コードベースに資格情報、パスワード、またはセキュリティトークンを配置しないでください。ここではこの問題の解決策をカバーすることはできませんが、Python開発者の場合は、Python Decoupleの使用を検討してください。
Webアプリケーションを考えてみましょう。デスクトップであろうとモバイルデバイスであろうと、ブラウザを介してアクセスできるWebサーバーで実行されるソフトウェアです。また、ある種のプレミアムサービスにアクセスするためのメンバーシップを提供するWebアプリケーションであると仮定します。おそらく排他的なレポート、旅行のヒント、またはビデオライブラリです。
<code>├── .elasticbeanstalk ├── .env ├── billing ├── changelog.txt ├── locale │ ├── en │ └── zh_Hans ├── members ├── readme.txt ├── static │ ├── fonts │ ├── images │ ├── javascript │ └── styles ├── templates │ ├── admin │ └── frontend ├── todo.txt └── tools</code>
これは、2つの言語(英語と単純化された中国語(Locale Directory)をサポートする基本的なWebアプリケーション構造です。請求書とメンバーの2つの主要なコンポーネントもあります。
ウェブサイトの開発にもう少し精通している場合、静的フォルダーとテンプレートフォルダーの内容は馴染みがあるかもしれません。おそらく、唯一の珍しい要素は、Amazon Web Services(AWS)の展開ファイルを保存するElasticBeanStalkと、データベース資格情報などのプロジェクトの設定のみをオンプレミスのみ保存するElasticBeanStalkです。 ReadmeやTodoなど、残りはそれについて議論しました。 ツールディレクトリは興味深いディレクトリです。ここでは、たとえば、スクリプトを保存し、データベースをトリミングしたり、支払いステータスをチェックしたり、静的ファイルをキャッシュにしたりすることができます。基本的には、アプリケーション自体ではなく、機能するのに役立ちます。
命名に関して、画像ディレクトリを画像/またはimg/に名前を付けるか、スタイルディレクトリにスタイル/またはcss/に名前を付けるか、javascript/ディレクトリにjs/に名前を付ける場合、違いはありません。主なことは、構造が論理的であり、長い説明的な名前であろうと短い名前であろうと、常に特定の慣習に従うことです。ケース2:デスクトップアプリケーション
コンピューターにダウンロードしてインストールできるアプリケーションを考えてみましょう。また、アプリケーションにCSVファイルなどの入力が必要であると仮定し、一連のレポートをレンダリングします。
ファイル構造
分析
<code>├── .gitignore ├── data ├── doc ├── legacy │ ├── dashboard │ ├── img │ └── system ├── LICENSE ├── README ├── tests ├── thirdparty ├── tools │ ├── data_integration │ └── data_scraping ├── ui │ ├── charts │ ├── css │ ├── csv │ ├── dashboard │ ├── img │ │ └── icons │ ├── js │ ├── reports │ └── summaries ├── VERSION └── wiki</code>
レガシー/フォルダーは、中止されようとしているアプリケーションの一部に使用されますが、それでも新しいシステムに完全にリファクタリングされるまで便利になる可能性のある機能を提供します。したがって、古いコードを現在のコードから分離する良い方法を提供します。
ここに新しい追加は、テスト/であり、ユニットテストを使用して品質を確保する場所と、ソフトウェアが必要とする外部ライブラリを保存する場所であるThirdParty/を提供します。
doc/およびwiki/フォルダーがあることに注意してください。これは複製のように見える場合があります。ただし、エンドユーザー用のドキュメントフォルダーと開発チームのWikiを持つことも完全に可能です。
繰り返す価値のある良いニュースは次のとおりです。たとえあなたが一人で働いていても、あなたは整理されなければなりません。この記事では、アプリケーションのファイルの数が増えるにつれて混乱を防ぐために、すぐにワークフローへの適用を開始できるアイデアがあることを願っています。
前述のように、ガイドラインは(ほぼ)すべてのプロジェクトが異なっており、チームもそうであるため、ガイドラインは時々変わる可能性があります。理想的には、あなたまたはあなたのチームはプロジェクトの構築方法を決定します - この構造の理由を説明するために小さなドキュメントを追加してください - そして、あなたはこれらのルールに固執します。ここでの多くのガイドラインでは、ファイルに名前を付けるためにダッシュまたはアンダースコアを選択するかどうかは関係ないことを忘れないでください(多くのトピックのいずれかを選択してください)。キーは一貫性です。
さらに読み取り
プロジェクトファイルの最適な構造は、プロジェクトの性質と複雑さに依存します。小規模なプロジェクトでは、単純なディレクトリ構造で十分かもしれません。ただし、複数のコンポーネントを備えた大規模なプロジェクトの場合、より複雑な構造が必要になる場合があります。使用しているプログラミング言語、使用しているフレームワークまたはライブラリ、チームの好みなどの要因を考慮してください。プロジェクトが成長するにつれて開発できるように、構造を柔軟にすることが重要です。
コードを整理するためのいくつかの戦略があります。一般的な方法は、機能ごとにファイルをグループ化することです。これは、特定の関数に関連するすべてのファイルが同じディレクトリに保存されることを意味します。別の方法は、CSS、JavaScript、HTMLファイルの分割など、タイプごとにファイルをグループ化することです。一部の開発者は、両方の戦略の要素を組み合わせて、ハイブリッドアプローチを使用することを好みます。重要なのは、プロジェクトとチームにとって理にかなっている戦略を選択することです。
ファイル組織で命名規則がどのような役割を果たしていますか?
すべてのチームメンバーが私のファイル組織戦略に従うことを確認する方法は?
プロジェクトの途中でファイル組織ポリシーを変更できますか?
プロジェクトファイルを整理するときに依存関係を扱う方法は?
プロジェクトファイルを整理する際には、どのような一般的な間違いを避けるべきですか?
ドキュメント組織のベストプラクティスを学ぶために利用できる多くのリソースがあります。オンラインチュートリアル、コーディングブートキャンプ、開発者フォーラムは、貴重な洞察を提供できます。さらに、オープンソースプロジェクトのフォルダー構造を調べると、プロジェクトファイルを効果的に整理する方法の実用的な例を提供できます。
以上がコードベースでファイルを適切に整理する方法と騒乱を避ける方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。