CA1715: Identifikátory by měly mít správnou předponu
Název_typu |
IdentifiersShouldHaveCorrectPrefix |
CheckId |
CA1715 |
Kategorie |
Microsoft.Naming |
Změnit rozdělení |
Rozdělení - vyvolání rozhraní. Bez konce - při Parametry obecného typu. |
Příčina
Název viditelného rozhraní nezačíná velkými písmeny "I".
-nebo-
Název obecný typ parametru na typ externě viditelné nebo metodu nelze spustit s velkým t ".
Popis pravidla
Úmluva názvy některých programovací prvky start s určitou předponou.
Názvy rozhraní by měla začínat velkým, následovaný jiným velkým písmenem "I".Toto pravidlo hlásí narušení názvů rozhraní jako "MyInterface" a "IsolatedInterface".
Obecný typ parametru by začínají velkým t "a případně mohou následovat další velkým písmenem.Toto pravidlo hlásí narušení pro obecný typ parametru názvy jako "V" a "Typ".
Konvence stanovit společné vzhled knihovny tomuto cíli společného jazykového modulu runtime.To snižuje učení křivku, která je vyžadována pro nové knihovny softwaru a zvyšuje důvěru zákazníků, že osoba, která má odborné znalosti v rozvojových spravovaný kód byl vyvinut knihovny.
Jak opravit porušení
Identifikátor přejmenování, tak, aby správně má předponu.
Při potlačení upozornění
Nepotlačovat upozornění od tohoto pravidla.
Příklad
Následující příklad zobrazuje nesprávně pojmenované rozhraní.
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();
};
}
Následující příklad řeší porušení předchozí přidáním prefixu rozhraní s "I".
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();
};
}
Následující příklad ukazuje nesprávně pojmenovaná obecný typ parametru.
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
{
};
}
Následující příklad řeší porušení předchozí přidáním prefixu obecný typ parametru s t ".
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
{
};
}