2

C#/WPF を使用して単純なデスクトップ アプリケーションを作成しましたが、現在は、機能の多くを共有する別のより大きなアプリケーションを作成しようとしています。3 つの個別のプロジェクトを作成する必要があると考えています。1 つは共有コードを含み、1 つは 2 つのアプリ用です。

私の問題は、.NET/WPF に完全に精通しているわけではないため、この種のベスト プラクティスがあるかどうかわからないことです。良い情報源、サンプル プロジェクト、または簡単なアドバイスを提供できる人はいますか?

編集: シナリオをもう少し詳しく説明すると、最初のアプリケーションは特殊なエディターであり、2 番目のアプリケーションはこのファイル エディターを使用してプロジェクト モデルをラップし、一種の基本的な IDE を作成します。

4

1 に答える 1

1

正直なところ、共有するコードのレベルによって異なります。たとえば、すべてのビジネス ロジック コードを 1 つのプロジェクト/クラス ライブラリに配置し、独立して維持することは完全に妥当ですが、ビジネス ロジックと WPF カスタム コントロールを混在させることは絶対にお勧めできません。モジュール化する抽象化のレイヤーと、導入する依存階層について考え、それに応じてリファクタリングします。

編集:

上記の変更に応じて、次のことをお勧めします: 上記に関連付けられたロジックと DAL は、個別の名前空間としてプロジェクトにプッシュする必要があります。ビジュアル要素 (ビュー、ビューモデル) も、別のプロジェクトと名前空間セットに移動する必要があります。これらをマージして、ホスト ウィンドウと残りのホストされたビジュアル コンテンツ用の UserControl を含む exe から起動できるようになったら、おそらく、より大きな IDE プロジェクトへの統合に進むことができます。ここでの鍵は次のとおりです。

ビジュアル レイヤーとビュー ロジック -> Editor.Visual.dll

ビジネス ロジックとデータ アクセス -> Editor.Core.dll

これが役立つことを願っています。

于 2010-12-21T00:52:44.533 に答える