Dil ve gereksiz kurallar

Kod stili dil kuralları, .NET programlama dillerinin çeşitli yapılarının (örneğin değiştiriciler ve parantezler) nasıl kullanıldığını etkiler.

Bu kategori, kod tabanının gereksiz olan ve yeniden düzenlenebilen veya kaldırılabilir bölümlerini tanımlayan kuralları da içerir. Gereksiz kodun varlığı aşağıdaki sorunlardan birini veya daha fazlasını gösterir:

  • Okunabilirlik: Okunabilirliği gereksiz yere düşüren kod.
  • Sürdürülebilirlik: Refaktoringden sonra artık kullanılmayan ve bunun sonucunda gereksiz yere korunan kod.
  • Performans: Yan etkisi olmayan ve gereksiz performans ek yüküne yol açan gereksiz hesaplama.
  • İşlevsellik: Kodda gerekli kodu yedekli hale getiren işlevsel sorun. Örneğin, IDE0060, metodun yanlışlıkla bir giriş parametresini yoksaydığı durumlarda kullanılmayan parametreleri belirler.

Dil kuralları aşağıdaki kategorilere ayrılır:

  • .NET stil kuralları: Hem C# hem de Visual Basic için geçerli olan kurallar. Bu kuralların seçenek adları ön ekiyle dotnet_style_başlar.
  • C# stili kuralları: C# koduna özgü kurallar. Bu kuralların seçenek adları ön ekiyle csharp_style_başlar.
  • Visual Basic stil kuralları: Visual Basic koduna özgü kurallar. Bu kuralların seçenek adları ön ekiyle visual_basic_style_başlar.

Seçenek biçimi

Dil kurallarının çoğunda tercih edilen stili özelleştirmek için bir veya daha fazla ilişkili seçenek vardır. Örneğin, Basit 'using' ifadesi (IDE0063), bir csharp_prefer_simple_using_statement bildirimi veya using ifadesi tercih edip etmediğinizi belirlemenize olanak tanıyan ilişkili bir seçeneğe sahiptir. Belirtilen bir düzeyde, örneğin uyarı veya hata, hangi seçenekleri seçerseniz, kural bunları uygular.

Dil kuralları seçenekleri aşağıdaki biçime sahip bir yapılandırma dosyasında belirtilebilir:

option_name = value (Visual Studio 2019 ve üzeri)

veya

option_name = value:severity

  • Value

    Her dil kuralı için, stilin ne zaman veya ne zaman tercihleneceğini tanımlayan bir değer belirtirsiniz. Birçok kural değerini true kabul eder (bu stili tercih eder) veya false (bu stili tercih etmeyin). Diğer kurallar when_on_single_line veya never gibi değerleri kabul eder.

  • Severity (Visual Studio 2019 ve sonraki sürümlerde isteğe bağlıdır)

    Kuralın ikinci bölümü, kuralın önem düzeyini belirtir. .NET 9 ve sonraki sürümlerde önem derecesi her zaman dikkate alınmaktadır, yani geliştirme IDE'leri ve komut satırı derlemeleri sırasında. .NET 8 ve önceki sürümlerde, bu önem derecesi ayarı yalnızca derleme sırasında Visual Studio ve not gibi geliştirme IDE'lerinde dikkate alınmaktadır.

    .NET 8 SDK'sını veya önceki bir sürümü kullanıyorsanız ve derleme zamanında önem derecesine uyulmasını istiyorsanız, bunu iki yoldan biriyle yapabilirsiniz:

    • <AnalysisLevel> veya <AnalysisLevelStyle> özelliğini 9.0 veya daha yüksek bir seviyeye ya da preview ayarlayın.
    • Bunun yerine çözümleyiciler için kimlik tabanlı önem derecesi yapılandırma söz dizimini kullanarak önem derecesini ayarlayın. Söz dizimi biçimindedir dotnet_diagnostic.<rule ID>.severity = <severity>, örneğin, dotnet_diagnostic.IDE0040.severity = warning. Daha fazla bilgi için bkz önem düzeyi.

İpucu

Visual Studio 2019'dan başlayarak, bir stil ihlali oluştuktan sonra Quick Actions ampul menüsünden kod stili kurallarını yapılandırabilirsiniz.

Kural dizini

Dil ve gereksiz kod kuralları, ifade düzeyi tercihleri, kod bloğu tercihleri ve değiştirici tercihler gibi alt kategorilere ayrılır.

using yönerge tercihleri

.NET stil kuralları (C# ve Visual Basic):

C# stil kuralları:

Kod bloğu tercihleri

C# stil kuralları:

İfade gövdeli üyeler

C# stil kuralları:

İfade düzeyinde tercihler

.NET stil kuralları (C# ve Visual Basic):

C# stil kuralları:

Visual Basic stil kuralları:

Alan tercihleri

.NET stil kuralları (C# ve Visual Basic):

Dil anahtar sözcüğü ile çerçeve türü tercihleri karşılaştırması

.NET stil kuralları (C# ve Visual Basic):

Değiştirici tercihleri

.NET stil kuralları (C# ve Visual Basic):

C# stil kuralları:

Yeni satır tercihleri

.NET stil kuralları (C# ve Visual Basic):

C# stil kuralları:

†Bu kurallar deneyseldir ve değiştirilebilir veya kaldırılmaya tabidir.

Null denetleme tercihleri

C# stil kuralları:

Parametre tercihleri

.NET stil kuralları (C# ve Visual Basic):

Parantez tercihleri

.NET stil kuralları (C# ve Visual Basic):

Desen eşleştirme tercihleri

C# stil kuralları:

Gizleme tercihleri

.NET stil kuralları (C# ve Visual Basic):

C# stil kuralları:

This. ve me. tercihleri

.NET stil kuralları (C# ve Visual Basic):

var Tercihler

C# stil kuralları:

Ayrıca bkz.