0

私はいくつかのプロジェクトを持っており、いくつかの共通コードを使用しています。このコードを共通ライブラリにリファクタリングしましたが、問題が発生しました。この共通コードの管理方法。次のようないくつかのオプションを検討しました。

  1. ファイルシステムのソフトリンクとしてのライブラリ。
  2. git サブモジュールとしてのライブラリ。
  3. pip/requirements.txt で管理される依存関係。

このソリューションの長所と短所は何ですか? 他に提案はありますか?どちらを選択する必要がありますか?その理由は?

私はGitとvirtualenvでpythonを使用しています。

4

2 に答える 2

1

virtualenvの3番目のオプションは本当に便利です。プロジェクトで要件ファイルを作成し、依存関係をvirtualenvにインストールして、envを実行するだけです。各プロジェクトは独自の依存関係とvirtualenvを持つことができ、重複するものはありません。また、システムのPythonに競合するモジュールをインストールすることを心配する必要はありません。

于 2012-10-04T14:47:17.040 に答える
1

オプション1は、長期的には痛みを引き起こします. 自明ではないライブラリは、ある段階で後方互換性を破る必要があり、アプリ D はライブラリの新しい機能を必要とするため、アプリ A、B、および C を更新する必要はありません。

于 2012-10-04T14:33:49.213 に答える