Aracılığıyla paylaş


CA1715: Tanımlayıcıların önekleri doğru olmalıdır

TypeName

IdentifiersShouldHaveCorrectPrefix

CheckId

CA1715

Kategori

Microsoft.Naming

Değişiklik kesiliyor

-Arabirimlerde harekete zaman kesiliyor.

Bölünemez - genel tür parametreleri harekete geçirilen zaman.

Neden

Dışarıdan görünür bir arabirimin adını bir büyük 'ı ile' başlatılmaz.

-veya-

Genel tür parametresi dışarıdan görünen türü veya yöntem adı büyük = başlamaz '.

Kural Tanımı

Kural gereği, belirli programlama öğelerinin adları ile belirli bir önek başlatın.

Arabirim adları büyük 'I' arkasından başka bir büyük harfi gelen ile başlamalıdır.Bu kural ihlalleri 'MyInterface' ve 'IsolatedInterface' gibi arabirim adlarının bildirir.

Genel tür parametre adları başlatmak büyük = ' ve isteğe bağlı olarak başka bir büyük harf takip edilebilir.Bu kural ihlalleri 'v' ve 'Type' gibi genel tür parametre adları için raporlar.

Adlandırma kuralları, hedefleyen ortak dil çalışma zamanı kitaplıkları için ortak bir görünüm sağlar.Bu yeni yazılım kitaplıkları için gereklidir ve kitaplığı geliştirme yönetilen kodda uzmanlığa sahip olan kişi tarafından geliştirilmiş olan müşteri güvenini artırır öğrenme eğrisi azaltır.

İhlalleri düzeltmek nasıl

Tanımlayıcı öneki doğru biçimde yeniden adlandırın.

Uyarıları ne zaman

Uyarı Bu kuraldan bastırmak değil.

Örnek

Aşağıdaki örnekte, yanlış adlandırılmış bir arabirim gösterilmektedir.

Imports System

Namespace Samples

    Public Interface Book      ' Violates this rule

        ReadOnly Property Title() As String 

        Sub Read()

    End Interface 

End Namespace
using System;

namespace Samples
{
    public interface Book   // Violates this rule
    {
        string Title
        {
            get;
        }

        void Read();        
    }
}
using namespace System;

namespace Samples
{
    public interface class Book     // Violates this rule
    {
        property String^ Title
        {
            String^ get();
        }
        void Read();
    };
}

Aşağıdaki örnek, önceki ihlali arabirimi 'I' ile önek ekleyerek giderir.

Imports System

Namespace Samples

    Public Interface IBook  ' Fixes the violation by prefixing the interface with 'I'

        ReadOnly Property Title() As String 

        Sub Read()

    End Interface 

End Namespace
using System;

namespace Samples
{
    public interface IBook      // Fixes the violation by prefixing the interface with 'I'
    {
        string Title
        {
            get;
        }

        void Read();        
    }
}
using namespace System;

namespace Samples
{
    public interface class IBook  // Fixes the violation by prefixing the interface with 'I'
    {
        property String^ Title
        {
            String^ get();
        }
        void Read();
    };
}

Aşağıdaki örnek, yanlış adlandırılmış genel tür parametresi gösterir.

Imports System

Namespace Samples

    Public Class Collection(Of Item)    ' Violates this rule

    End Class 

End Namespace
using System;

namespace Samples
{
    public class Collection<Item>   // Violates this rule
    {

    }
}
using namespace System;

namespace Samples
{
    generic <typename Item>     // Violates this rule 
    public ref class Collection
    {

    };
}

Aşağıdaki örnek önceki ihlali genel bir tür parametresiyle = önek ekleyerek giderir '.

Imports System

Namespace Samples

    Public Class Collection(Of TItem)  ' Fixes the violation by prefixing the generic type parameter with 'T'

    End Class 

End Namespace
using System;

namespace Samples
{
    public class Collection<TItem>  // Fixes the violation by prefixing the generic type parameter with 'T'

    {

    }
}
using namespace System;

namespace Samples
{
    generic <typename TItem>  // Fixes the violation by prefixing the generic type parameter with 'T' 
    public ref class Collection
    {

    };
}

İlgili kuralları

CA1722: Tanımlayıcıların önekleri yanlış olmamalıdır