-1

私は、C# の顔の変化と戦っていて、C#1 を使い始めてから学んだことを忘れていることを認めます。

私は何年も前にグリーンフィールドの C# 1.1 コードを書き始め、現在は以前のバージョンの C# で書かれたコードのメンテナンス作業にも取り組んでいます。過去に書いたものをコードから学ばないように戦っていて、以前のバージョンの C# で書かれたものを毎日見なければならないので、古いやり方にさらされるのは難しいことです。Java プロジェクトを維持しなければならないことも、C#1 に似ているため役に立ちません。時間が経てば悪い習慣を忘れることはできるかもしれませんが、プロジェクトの締め切りがあるとそれを行うのは困難です。

OO と DRY の原則を使用し、コードがコンパイルされた場合、上司は満足し、物事の新しい方法でコードを単純化していないだけですべてが良いと考えているため、私の怠惰な心も私に反対しています。

Jon Skeet の C# in depth 2ed を読み始めましたコードを簡素化しますが、これらの新しい方法を覚えて実践するのは難しいと感じています。これは、このレガシーコードを毎日すべて処理しなければならず、あらゆるトレードの開発者の仕事とのバランスを取らなければならないためです。

  1. オンザフライまたはコンパイル時に C#1、C#2、C#3 から C#4 へのコーディング プラクティスをリファクタリングし、英語で提案するか、コードをリファクタリングする簡単な方法はありますか。

  2. Jon Skeet の C# の詳細な本を除いて、C# のバージョン間で同じコードの変更を確認できるツールやサイトのような場所はありますか?

4

1 に答える 1

3

ReSharperの最新バージョンは、C# を多くの点で迅速に前進させるのに役立つツールです。新しいプラクティスを示し、既存のコード全体でそれらを採用することをより迅速かつ簡単にします。

頭に浮かぶいくつかの前向きなReSharperリファクタリングは次のとおりです。

  • 拡張メソッドへの静的...
  • プロパティから自動プロパティへ...

また、ReSharper は、たとえば、var可能な場合は暗黙の宣言に使用することをお勧めします。

CodeRushはほとんど同じことができますが、私は最近ほど使用していません。

そのようなツールのリファクタリングによって作成された場所と開始した場所の違いを確認するには、ソース管理でファイルの以前のリビジョンと比較することを思い浮かべます。

@stakx が指摘するように、C# とともに .NET BCL を変更する場合は、新しいバージョンの .NET に対してビルドされた非推奨のコードに関するビルド警告を掘り下げることを検討してください。(一例として) の使用を に置き換えることを学ぶSystem.Xml.XmlValidatingReaderSystem.Xml.XmlReader、以前の非推奨の型のフラグが付けられた他の場所での変更が迅速になります。

MSDNの What's Obsolete in the .NET Frameworkでは、.NET 1.1 以降の最新の BCL 非推奨と、影響を受けるコードの更新方法について説明しています。

于 2013-05-04T06:53:17.507 に答える