Öznitelikler (.NET Framework tasarım yönergeleri)

Not

Bu içerik, Çerçeve Tasarım Yönergeleri: Kurallar, Deyimler ve Yeniden Kullanılabilir .NET Kitaplıkları için Desenler, 2. Sürüm'den Pearson Education, Inc.'in izniyle yeniden yazdırılır. Bu baskı 2008'de yayımlandı ve kitap o zamandan beri üçüncü baskıda tamamen revize edilmiştir. Bu sayfadaki bazı bilgiler güncel olmayabilir.

System.Attribute özel öznitelikleri tanımlamak için kullanılan bir temel sınıftır.

Öznitelikler, derlemeler, türler, üyeler ve parametreler gibi programlama öğelerine eklenebilen ek açıklamalardır. Bunlar derlemenin meta verilerinde depolanır ve çalışma zamanında yansıma API'leri kullanılarak erişilebilir. Örneğin, Framework, türün veya üyenin ObsoleteAttributekullanım dışı bırakıldığını belirtmek için bir türe veya üyeye uygulanabilen öğesini tanımlar.

Öznitelikler, özniteliğiyle ilgili ek verileri taşıyan bir veya daha fazla özelliğe sahip olabilir. Örneğin, ObsoleteAttribute bir türün veya üyenin kullanım dışı bırakıldığı sürüm ve eski API'nin yerini alan yeni API'lerin açıklaması hakkında ek bilgi taşıyabilir.

Öznitelik uygulandığında özniteliğin bazı özellikleri belirtilmelidir. Bunlar, konumsal oluşturucu parametreleri olarak temsil edildiğinden gerekli özellikler veya gerekli bağımsız değişkenler olarak adlandırılır. Örneğin, ConditionString özelliği ConditionalAttribute gerekli bir özelliktir.

Öznitelik uygulandığında belirtilmesi gerekmeyen özellikler isteğe bağlı özellikler (veya isteğe bağlı bağımsız değişkenler) olarak adlandırılır. Bunlar ayarlanabilir özelliklerle temsil edilir. Derleyiciler, bir öznitelik uygulandığında bu özellikleri ayarlamak için özel söz dizimi sağlar. Örneğin, AttributeUsageAttribute.Inherited özelliği isteğe bağlı bir bağımsız değişkeni temsil eder.

✔️ DO özel öznitelik sınıflarını "Attribute" soneki ile adlandırın.

✔️ DO, AttributeUsageAttribute öğesini özel özniteliklere uygular.

✔️ DO, isteğe bağlı bağımsız değişkenler için ayarlanabilir özellikler sağlar.

✔️ DO, gerekli bağımsız değişkenler için yalnızca get-only özellikleri sağlar.

✔️ DO, gerekli bağımsız değişkenlere karşılık gelen özellikleri başlatmak için oluşturucu parametreleri sağlar. Her parametre, karşılık gelen özellik ile aynı ada (farklı büyük/küçük harfle olsa da) sahip olmalıdır.

❌ İsteğe bağlı bağımsız değişkenlere karşılık gelen özellikleri başlatmak için oluşturucu parametreleri sağlamaktan KAÇıNıN.

Başka bir deyişle, hem oluşturucu hem de ayarlayıcı ile ayarlanabilen özelliklere sahip değildir. Bu kılavuz, hangi bağımsız değişkenlerin isteğe bağlı ve hangilerinin gerekli olduğunu çok açık hale getirir ve aynı şeyi yapmanın iki yolunun olmasını önler.

❌ Özel öznitelik oluşturucularını aşırı yüklemeKTEN KAÇıNıN.

Yalnızca bir oluşturucunun olması, kullanıcıya hangi bağımsız değişkenlerin gerekli olduğunu ve hangilerinin isteğe bağlı olduğunu açıkça bildirir.

✔️ DO, mümkünse özel öznitelik sınıflarını mühürler. Bu, özniteliğin aranma işlemini daha hızlı hale getirir.

Porsiyonlar © 2005, 2009 Microsoft Corporation. Tüm hakları saklıdır.

Pearson Education, Inc. in Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraryes, 2nd Edition by Krzysztof Cwalina and Brad Abrams izniyle yeniden yazdırıldı ve 22 Ekim 2008'de Addison-Wesley Professional tarafından Microsoft Windows Geliştirme Serisi'nin bir parçası olarak yayımlandı.

Ayrıca bkz.