2

このサイトの関連する質問リストをちらっと見ただけで、考えさせられました。次のような質問がたくさんあります。

  • パッケージで XYZ をデプロイするか、他のパスへの参照を追加する必要がありますか?
  • 単体テストを実行するために nant/cruisecontrol/etc.. を構成するにはどうすればよいですか?
  • XYZ セットアップで単体テスト用の構成ファイルをどこに保管すればよいですか
  • 等...

現在、(.NET と Visual Studio を使用して) 開発するときは、非常に具体的なディレクトリ構造を選択します。

  • doc: すべてのドキュメントが含まれます
  • lib: コンパイル済みの依存関係が含まれています
  • src: すべてのプログラム ソースと依存関係ソースが含まれます
  • etc: プロジェクトに関連するその他のファイル
  • bin: コンパイルされたプログラム出力

一般的に言えば、そのディレクトリ構造内で何かを実行できない場合は、単純に実行しません。これには、単体テスト、継続的統合などが含まれます...同じ観点から、OSまたはネットワーク参照を除いて、プログラム全体がbinディレクトリから実行されます。プログラムのルート ディレクトリに存在しないファイル システムへの依存関係を導入することを拒否します。私は開発のいくつかの本当にクールな側面を見逃していると確信していますが、私はクルーズコントロールを試してみました。正直に言うと、多くの小さなプロジェクト (200 以上の小さなプロジェクト数個 (10 ~ 20 個) の大規模なプロジェクトとは対照的に、これらのツールを使用する利点のいくつかよりも単純さの方が望ましいと正直に言えます。

私の質問は、私はただの単純な人ですか、それとも特定のことが必要以上に複雑であるように見えるのでしょうか? この「すべての人に合うように設計する」という考え方全体が、物事を成し遂げるのを邪魔しているように思えます。

4

3 に答える 3

1

一般的に言えば、そのディレクトリ構造内で何かを実行できない場合は、単純に実行しません。これには、単体テスト、継続的インテグレーション、

小規模プロジェクト (年間 200 以上の小規模プロジェクト) とは対照的に、少数 (10 ~ 20) の大規模プロジェクト

1 人で作業していると仮定すると、大規模なプロジェクト (< 1 人月) は「小」と呼ばれ、小規模なプロジェクト (1 日) はほとんどのショップで「タスク」と呼ばれます。統合攻撃戦闘機や政府情報システムのソフトウェアなどの大規模プロジェクトは、数百人年です。私が取り組んできた小さなプロジェクトのほとんどは 2 ~ 6 人月で、中規模のプロジェクトは 1 ~ 4 人年です。

私の質問だと思います.

あるものは、1 か月のプログラマーで作成できるよりも複雑です。

継続的インテグレーションは、統合されていない作業が大量にあるシステムを構築する時間がないため、1 か月未満のプロジェクトではおそらく役に立ちません。

ある部分が何をしているのか忘れてしまうほど大きくなったものや、複数の開発者が関わるものに取り組むと、単体テストは、システムの意図した機能的動作を明確な方法で記述するための優れたメカニズムを提供します。

さまざまな展開用にソフトウェアの一部を構成していて、そのソフトウェアにすでに十分な自信がある場合は、多くの場合、システム レベルのテストで十分です。

于 2009-07-04T09:26:39.503 に答える