CA1721: Tür adları alma yöntemleriyle eşleşmemelidir
TürAdı |
PropertyNamesShouldNotMatchGetMethods |
CheckId |
CA1721 |
Kategori |
Microsoft.Naming |
Bozan Değişiklik |
Bozan |
Sebep
Ortak veya korumalı bir üye adı 'Get' ile başlar, ve aksi durumda ortak veya korumalı özellik adıyla eşleşir.Örneğin, 'GetColor' adındaki bir yöntemi içeren bir tür ve 'Renk' adlı bir özellik bu kuralı ihlal ediyor.
Kural Tanımı
Get yöntemlerinin ve özelliklerinin açıkça işlevlerinden ayırt edilebilen adları olması gerekir.
Adlandırma kuralları, hedeflenen ortak dil çalışma zamanı kitaplıkları için ortak bir görünüm sağlar.Bu yeni yazılım kitaplıklarını öğrenmek için gerekli olan zamanı azaltır ve müşterinin, kitaplığın yönetilen kodda uzman biri tarafından geliştirildiğine dair güvenini artıtır.
İhlallerin Düzeltilmesi
'Get' ile ön ek getirilmiş bir yöntemin adı ile eşleşmemesi için ismini değiştirin.
Uyarılar Ne Zaman Bastırılmalı
Bu kuraldan bir uyarı gizlemeyin.
[!NOT]
Get yöntemi, IExtenderProvider arabirimini uygulayarak neden olunuyorsa, bu uyarı atlanabilir.
Örnek
Aşağıdaki örnek, bu kuralı ihlal eden bir yöntem ve bir özellik içerir.
Imports System
Namespace NamingLibrary
Public Class Test
Public ReadOnly Property [Date]() As DateTime
Get
Return DateTime.Today
End Get
End Property
' Violates rule: PropertyNamesShouldNotMatchGetMethods.
Public Function GetDate() As String
Return Me.Date.ToString()
End Function
End Class
End Namespace
using System;
namespace NamingLibrary
{
public class Test
{
public DateTime Date
{
get { return DateTime.Today; }
}
// Violates rule: PropertyNamesShouldNotMatchGetMethods.
public string GetDate()
{
return this.Date.ToString();
}
}
}