0

C#/。NET2.0で記述された古いアプリを継承しました。(un)幸いなことに、ドキュメントもコメントもありませんでした。したがって、新しい要件に基づいてアプリケーションに拡張機能を追加するときに、アプリが何を実行し、どのように実行するか、つまりアーキテクチャのメンタルモデルも構築しています。

アプリを「分解」して生のコードからより高いレベルに移行するために、どのようなツールが存在するのだろうかと思っていました。このアプリはOOではそれほど重くはありません。実際、使用されるオブジェクトの1つは「関数」と呼ばれます。それはほとんどの場合、単なる一連のメソッドであり、どこからともなく飛び出しているように見える多くのメソッドです。

生のコードを、アプリの機能と実行方法を示すある種の要件ドキュメントに変換したいと思います。それを行うための最良の方法は何ですか?私を助けることができるアプリはありますか?多分私が含めるべき/含まないべきもののテンプレート?たぶんあなたがお勧めする本/サイト?目標は、私とアプリを保守する将来の開発者にドキュメントを提供することです。

4

2 に答える 2

1

個人的には、RobertCMartinのアジャイル本とEricEvanのドメイン駆動設計に関する本から始めます。これらは理論書ですが、ボブおじさんの本は、あなたの状況と同じように、コードを管理しやすくするための改良について具体的に説明しています。

依存関係の削除を開始できるように、ソフトウェアを階層化することは非常に重要です。これにより、すべてが非常にシンプルで保守しやすくなります。

私はデータベース担当者なので、EntityFrameworkやFluentNHibernateなどの優れたORMから始めました。私はWebサイトが好きなので、ASP.NETのMVC 2を使用して、それらの書籍のすべての部分、つまりデータリポジトリ、データをプルするサービス、およびデータをプッシュするコントロールを書き始めました。MVCは、画面であるデータの問題と「表示」の問題を非常にうまく分離したものです。やがて、あなたは非常にクリーンで簡単にメンテナンスできるソフトウェアを手に入れるでしょう。

于 2010-11-12T04:24:11.177 に答える
1

VS 2010を使用している場合は、Architectureという名前のメニューが表示されます。このツールを使用すると、アプリケーションの依存関係グラフを作成できます。次の説明に従って使用できます。

于 2010-11-12T09:06:23.673 に答える