Bagikan melalui


Atribut (pedoman desain .NET Framework)

Catatan

Konten ini dicetak ulang oleh izin Pearson Education, Inc. dari Panduan Desain Kerangka Kerja: Konvensi, Idiom, dan Pola untuk Pustaka .NET yang Dapat Digunakan Kembali, Edisi ke-2. Edisi itu diterbitkan pada tahun 2008, dan buku tersebut telah sepenuhnya direvisi pada edisi ketiga. Beberapa informasi di halaman ini mungkin sudah kedaluarsa.

System.Attribute adalah kelas dasar yang digunakan untuk menentukan atribut kustom.

Atribut adalah anotasi yang dapat ditambahkan ke elemen pemrograman seperti rakitan, jenis, anggota, dan parameter. Mereka disimpan dalam metadata rakitan dan dapat diakses pada durasi menggunakan API refleksi. Misalnya, Kerangka Kerja menentukan ObsoleteAttribute, yang dapat diterapkan ke jenis atau anggota untuk menunjukkan bahwa jenis atau anggota tidak digunakan lagi.

Atribut dapat memiliki satu atau beberapa properti yang membawa data tambahan yang terkait dengan atribut. Misalnya, ObsoleteAttribute dapat membawa informasi tambahan tentang rilis di mana jenis atau anggota yang tidak digunakan lagi dan deskripsi API baru yang menggantikan API yang sudah usang.

Beberapa properti atribut harus ditentukan saat atribut diterapkan. Ini disebut sebagai properti yang diperlukan atau argumen yang diperlukan, karena mereka direpresentasikan sebagai parameter konstruktor posisional. Misalnya, properti ConditionString dari ConditionalAttribute adalah properti yang diperlukan.

Properti yang tidak harus ditentukan ketika atribut diterapkan disebut properti opsional (atau argumen opsional). Mereka direpresentasikan oleh properti yang dapat diatur. Pengompilasi menyediakan sintaks khusus untuk mengatur properti ini saat atribut diterapkan. Misalnya, properti AttributeUsageAttribute.Inherited mewakili argumen opsional.

✔️ BERI NAMA kelas atribut kustom dengan akhiran "Atribut."

✔️ TERAPKAN AttributeUsageAttribute ke atribut kustom.

✔️ SEDIAKAN properti yang dapat diatur untuk argumen opsional.

✔️ SEDIAKAN properti get-only untuk argumen yang diperlukan.

✔️ SEDIAKAN parameter konstruktor untuk menginisialisasi properti yang sesuai dengan argumen yang diperlukan. Setiap parameter harus memiliki nama yang sama (meskipun dengan casing yang berbeda) sebagai properti yang sesuai.

❌ HINDARI menyediakan parameter konstruktor untuk menginisialisasi properti yang sesuai dengan argumen opsional.

Dengan kata lain, tidak memiliki properti yang dapat diatur dengan konstruktor dan setter. Pedoman ini menyatakan dengan sangat eksplisit argumen mana yang opsional dan mana yang diperlukan, dan menghindari adanya dua cara untuk melakukan hal yang sama.

❌ HINDARI kelebihan beban konstruktor atribut kustom.

Hanya ada satu konstruktor yang dengan jelas memberi tahu pengguna argumen mana yang diperlukan dan mana yang opsional.

✔️ SEGEL kelas atribut kustom, jika memungkinkan. Ini membuat pencarian atribut lebih cepat.

Portions © 2005, 2009 Microsoft Corporation. Semua hak dilindungi undang-undang.

Dicetak ulang dengan izin dari Pearson Education, Inc. dari Framework Design Guidelines: Conventions, Idioms, and Patterns for Reusable .NET Libraries, 2nd Edition oleh Krzysztof Cwalina dan Brad Abrams, diterbitkan 22 Okt 2008 oleh Addison-Wesley Professional sebagai bagian dari Seri Pengembangan Microsoft Windows.

Lihat juga