CA1715: Az azonosítóknak megfelelő előtaggal kell rendelkezniük
Tulajdonság | Érték |
---|---|
Szabályazonosító | CA1715 |
Cím | Az azonosítóknak helyes előtaggal kell rendelkezniük |
Kategória | Elnevezés |
A javítás kompatibilitástörő vagy nem törik | Törés - amikor aktiválva van a felületeken. Nem törés – általános típusparaméterek esetén. |
Alapértelmezés szerint engedélyezve a .NET 8-ban | Nem |
Ok
A felület neve nem "I" nagybetűvel kezdődik.
-vagy-
Egy típus vagy metódus általános típusparaméterének neve nem "T" nagybetűvel kezdődik.
Ez a szabály alapértelmezés szerint csak külsőleg látható felületeket, típusokat és metódusokat tekint meg, de ez konfigurálható.
Szabály leírása
Bizonyos programozási elemek neve konvenció szerint egy adott előtaggal kezdődik.
Az illesztőneveknek nagybetűs "I" betűvel kell kezdődnie, majd egy másik nagybetűvel. Ez a szabály olyan felületnevek megsértéseit jelenti, mint a "MyInterface" és az "IsolatedInterface".
Az általános típusparaméterek neveinek nagybetűs "T" betűvel kell kezdődnie, és opcionálisan egy másik nagybetű is követhető. Ez a szabály az olyan általános típusparaméter-nevek megsértéseit jelenti, mint a "V" és a "Type".
Az elnevezési konvenciók gyakran keresik a közös nyelvi futtatókörnyezetet megcélzó kódtárakat. Ez csökkenti az új szoftverkódtárakhoz szükséges tanulási görbét, és növeli az ügyfelek bizalmát abban, hogy a kódtárat olyan személy fejlesztette ki, aki jártas a felügyelt kód fejlesztésében.
Kód konfigurálása elemzéshez
A következő beállítások segítségével konfigurálhatja, hogy a kódbázis mely részein futtassa ezt a szabályt.
Ezeket a beállításokat konfigurálhatja csak erre a szabályra, az összes szabályra, vagy az ebben a kategóriában (elnevezés) szereplő összes szabályra, amelyekre vonatkozik. További információ: Kódminőségi szabály konfigurációs beállításai.
Adott API-felületek belefoglalása
A kódbázis azon részeit konfigurálhatja, amelyeken futtathatja ezt a szabályt az akadálymentességük alapján. Ha például meg szeretné adni, hogy a szabály csak a nem nyilvános API-felületen fusson, adja hozzá a következő kulcs-érték párot a projekt egyik .editorconfig fájljához:
dotnet_code_quality.CAXXXX.api_surface = private, internal
Egy karakteres típusparaméterek
Konfigurálhatja, hogy kizárja-e az egy karakterből álló típusparamétereket ebből a szabályból. Ha például meg szeretné adni, hogy ez a szabály ne elemezze az egykarakú típusparamétereket, adja hozzá az alábbi kulcs-érték párok egyikét a projekt egyik .editorconfig fájljához:
# Package version 2.9.0 and later
dotnet_code_quality.CA1715.exclude_single_letter_type_parameters = true
# Package version 2.6.3 and earlier
dotnet_code_quality.CA2007.allow_single_letter_type_parameters = true
Megjegyzés:
Ez a szabály soha nem aktiválódik például Collection<T>
egy típusparaméter T
esetében.
Szabálysértések kijavítása
Nevezze át az azonosítót úgy, hogy megfelelően legyen előtagban.
Mikor kell letiltani a figyelmeztetéseket?
Ne tiltsa el a szabály figyelmeztetését.
Példa a felület elnevezésére
A következő kódrészlet helytelenül elnevezett felületet jelenít meg:
' Violates this rule
Public Interface Book
ReadOnly Property Title() As String
Sub Read()
End Interface
// Violation.
public interface Book
{
string Title
{
get;
}
void Read();
}
Az alábbi kódrészlet az "I" előtaggal javítja ki az előző szabálysértést:
// Fixes the violation by prefixing the interface with 'I'.
public interface IBook
{
string Title
{
get;
}
void Read();
}
' Fixes the violation by prefixing the interface with 'I'
Public Interface IBook
ReadOnly Property Title() As String
Sub Read()
End Interface
Típusparaméter elnevezési példa
A következő kódrészlet egy helytelenül elnevezett általános típusparamétert jelenít meg:
' Violates this rule
Public Class Collection(Of Item)
End Class
// Violation.
public class Collection<Item>
{
}
Az alábbi kódrészlet a "T" előtaggal javítja ki az előző szabálysértést:
// Fixes the violation by prefixing the generic type parameter with 'T'.
public class Collection<TItem>
{
}
' Fixes the violation by prefixing the generic type parameter with 'T'
Public Class Collection(Of TItem)
End Class
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: