私はソフトウェアプロジェクトを管理する正しい方法について学ぶ方法を探していました、そして私は次のブログ投稿に出くわしました。私は難しい方法で言及されたもののいくつかを学びました、他のものは理にかなっています、そしてそれでも他のものは私にはまだはっきりしていません。
要約すると、著者は、プロジェクトの一連の機能と、それらの機能が、より適切な用語がないためにプロジェクトの「不機嫌」にどの程度貢献しているかをリストします。あなたはここで完全な記事を見つけることができます:http ://spot.livejournal.com/308370.html
特に、依存関係をプロジェクトにバンドルするという作者のスタンスがわかりません。これらは:
==バンドル==
ソースには、[+20ポイントのFAIL]に依存する他のコードプロジェクトのみが付属しています。
プロジェクトのニーズに合わせてプロジェクトの依存関係を変更したことが、特にポイント3で問題になるのはなぜですか。したがって、コードを依存関係とともに配布する必要があることは、さらに理にかなっていますか?
バンドルされたコードビットを最初にビルドせずにソースコードをビルドできない場合[+10ポイントのFAIL]
これは、サードパーティのライブラリに対して構築されたソフトウェアの場合、必ずしもそうである必要はありませんか?あなたのコードは、リンカーが機能する前に、他のコードをライブラリにコンパイルする必要がありますか?
これらの他のバンドルされたコードビットを変更した場合[+40ポイントのFAIL]
これがプロジェクトに必要な場合は、当然、上記のコードを自分のコードにバンドルしたことになります。WxWidgetsなどのライブラリのビルドをカスタマイズする場合は、そのプロジェクトのビルドスクリプトを編集して、必要なライブラリを構築する必要があります。その後、コードをビルドしたい人にそれらの変更を公開する必要があるので、すでに記述されているパラメーターを使用して高レベルのmakeスクリプトを使用し、それを配布してみませんか?さらに、(特にWindows環境では)コードベースが特定のバージョンのライブラリに依存している場合(プロジェクト用にカスタムコンパイルする必要もあります)、ユーザーに自分でコードを提供する方が簡単ではありません(この場合、ユーザーがすでに正しいバージョンをインストールしている可能性は低いです)?
では、これらのコメントにどのように対応しますか。また、どのような点を考慮に入れていない可能性がありますか。著者の見解(または私の見解)に賛成ですか、反対ですか。その理由は何ですか。
明確にするために編集。