web-dev-qa-db-ja.com

多数のリファクタリングを伴うオープンソースのC#プロジェクトの良い例はありますか?

ソフトウェアの進化とC#/。NETの調査を行っています。特に、チェンジセットからリファクタリングを特定するため、適切な( [〜#〜] xp [〜#〜] -likeを探しています。 )バージョン管理履歴からリファクタリングを抽出するためのテスト対象となるプロジェクト。

どのオープンソースC#プロジェクトで大量の(多数の)リファクタリングが行われましたか?

基準適切なプロジェクトには、変更履歴が公開されており、多くの場合はコンパイル可能なコードがあり、過去に少なくともいくつかのリファクタリングが適用されています。よく知られている必要はなく、コードの品質やバグの数は関係ありません。できれば、コードはGitまたはSVNリポジトリにあります。

この調査の結果は、チェンジセットに対する有益で簡潔なコメントを自動的に作成するツールになります。これにより、コメントをまったく残さないという一般的な開発慣行が改善されます。

6

Mono.cecil 0.9のバージョンでは、誤解がない限り、大幅にリファクタリングされました。その時点まで、それは.net 1.1にありました

Cecilは、System.Reflectionの代替として使用できるオープンソースプロジェクトです。リンクからわかるように、プロジェクトの履歴はgithubで公開されています。

プロジェクトにはまだ安定したapiの可能性がないため、将来発生する変更を確認できます。

ツールで頑張ってください!

サブテキストブログエンジンはかなり良い例です。ゼロのテスト容易性と緊密なデータ結合を備えた非常に古典的なASP.NETアプリとして始まり、レガシーアクセスを壊さずに数年の間に多くのリファクタリングを経て成長しました。とデータモデル。これは、.NET開発者が他の多くの例よりも専門的に取り組んでいる多くの基幹業務アプリによく似ています。

基準との比較:

  1. 公開されている変更履歴:チェック、GoogleコードSVNを参照してください。
  2. 過去のいくつかのリファクタリング:はい、間違いなく。これらのリファクタリングエフロに関する取り組みとロジックについては、 Phil Haackのブログ を参照してください。
  3. コンパイル可能なコミット:一般的にはそうです。それらは製品を壊しておらず、比較的早い段階で継続的インテグレーションに飛びついています。
2
Wyatt Barnett