私は現在、C で大きなプロジェクトに取り組んでおり、その特定の部分を行っています (他の部分は他の人が行っています)。プロジェクトをいつ複数の c ファイルに分割する必要があるか、および書き込みのベストプラクティスは何かを知りたいです。チーム(または単独)による大規模なプロジェクト。私の以前の経験は、ヘッダーに関するものでした (ヘッダーと、すべての関数が記述された .c があります)。
2 に答える
2
人々はあなたにさまざまなことを教えてくれます。一般に:
- 次の場合は、ファイルを小さなファイルに分割する必要があります。
- 多くの依存関係があります
- コンパイルに時間がかかりすぎる
- 知っている、またはやりすぎている
- プロジェクトを次のように編成する必要があります。
- どのパーツがどのタイプのデータと連携するか
- どの部分がプロジェクトの他のどの部分と連携するか
- 避けるべきこと:
- 特定の注文に含まれている場合にのみ機能するヘッダー
- プロジェクトの大きなブロブを取り込むヘッダー (依存関係が多すぎる)
- プリプロセッサ マクロの悪用
- 「util.c」など。個人的な経験から、彼らは制御不能になる傾向があります
C++ (C ではない) では、私が書く主要なクラスごとに .h および .cpp ファイルを作成する傾向があります。多かれ少なかれ無意味です(逸話的に、SchedulerとSchedulerEventなどのクラスを同じファイルに含む中規模のプロジェクトがあり、SchedulerはSchedulerEventsのコレクションを保持しています。プロジェクトには約180個のファイルがあり、それでも維持は簡単です)。
于 2012-09-19T15:27:59.627 に答える
0
経験則として、型定義 (または密接に依存する型定義) とそのような型を処理する関数を 1 つのモジュールに入れます。
パブリック タイプと関数は.h
-file に入り、プライベート タイプと関数、およびすべての実装は.c
-file に入ります。
.h
-files のない.c
-files はまれです。
于 2012-09-19T16:32:34.557 に答える