1

重複の可能性:
文字列と文字列の違いは何ですか

私はstringこのような変数に使用しています

string myString = "test";

そしてString、クラス文字列のいくつかのメソッド(?)を使用したい場合に使用しています

String.Format...

これは良くなっていると思いました。何人かの人々が次のようなことをしているのを買う

String myString;
string.Format...

その動作。しかし、私はこれが好きではありません。どうすれば彼らにやめるように言うことができますか?このようなもののための「C#ルール」はありますか?intInt;についても同じです。charChar; ..。

4

3 に答える 3

9

stringのC#エイリアスSystem.Stringです。

C#を作成する場合は、エイリアスを使用する必要がstring.Formatありstring myStringます。

どちらも最終的に同じILにコンパイルされ、同じことを意味しますが、C#にはそのイディオムがあり、型エイリアスの使用はそれらの一部です-使用するのと同じ方法で、ではintありませんSystem.Int32

于 2012-10-02T22:41:03.157 に答える
2

大規模なプロジェクトに取り組んでいて、チームの開発者が書いたコードを簡単に読めるようにする場合、コーディング ガイドラインは重要です。

残念ながら、C# コードのフォーマット方法に関する公式のガイドラインはありません。Microsoft 自身が .NET フレームワークの開発中にこの問題に遭遇し、スタイル ガイドラインの内部セットを開発しました。これは、適切な設定を備えたデフォルト ルール セットを持つ StyleCop と呼ばれる本格的なプログラムに発展しました。

これらのルールに従って、常にstring代わりに使用する必要がありStringます。

string xyz;
string.Format();

ルールは次のとおりです。

SA1121 - UseBuiltInTypeAlias - 読みやすさのルール

このコードでは、基本的な C# 型の 1 つを使用していますが、型の組み込みエイリアスは使用していません。

型名または完全修飾型名を使用するのではなく、これらの型の組み込みエイリアスを常に使用する必要があります: bool、byte、char、decimal、double、short、int、long、object、sbyte、float、string 、ushort、uint、ulong。

推奨される読書は、ここで見つけることができる StyleCop の歴史です。

http://stylecop.codeplex.com/wikipage?title=A%20Brief%20History%20of%20CSharp%20Style&referringTitle=ドキュメント

さまざまなバックグラウンドを持つさまざまな人々が同じコード ベースで作業しているときに遭遇する問題のいくつかと、彼らがどのようにルール セットを開発したかについて説明します。

最近、独自のプロジェクトに StyleCop を実装しました。実際にすべてのルールに従うのは大変な作業ですが、結果として得られるコードははるかに読みやすくなっています。また、ReSharper を使用すると、多くの修正を自動的に行うことができる、かなり優れた ReSharper 統合も備えています。

于 2012-10-02T22:57:09.793 に答える
0

私は通常、これを「言語に同一のプリミティブ型がある場合は、それを優先する」と表現します。特定のケースでは、どのスタイルを使用するかは、機能に大きな影響を与えるものではなく、好みです。重要なのは、選択したスタイルがチームの全員によって一貫して適用されることです

于 2012-10-02T22:58:13.403 に答える