Ev gelişme Arkadaş montajı nedir? - techopedia nedir?

Arkadaş montajı nedir? - techopedia nedir?

İçindekiler:

Anonim

Tanımı - Friend Assembly ne anlama geliyor?

C # 'da bir arkadaş derleme, başka bir derleme üyelerine erişebilen .NET derleme anlamına gelir. Bir derlemedeki arkadaş derlemesinden erişilen üyelerin şu şekilde işaretlenmesi gerekir:

iç.


Arkadaş derlemeleri, bir derlemedeki iç sınıflara ve üyelere başka bir özel derlemeden erişmenin gerekli olduğu senaryolarda kullanılır. İki belirli derlemenin üyeleri veya işlevleri herkese açık hale getirmeden paylaşmasını sağlar.


Arkadaş montajları ayrıca, test kodunun altındaki montajın test edilecek montajda dahili olarak işaretlenen üyelere erişmesi gereken birim testlerinde de kullanılır. Mevcut derlemelerde üyelere erişmesi gereken ayrı derlemelerde bulunan ekler gerektiren sınıf kitaplıklarının geliştirilmesinde yararlıdır.

Techopedia Arkadaş Meclisi'ni açıklıyor

Bir sınıfın üyelerini dahili olarak işaretleyerek, aynı derleme içindeki diğer sınıflar tarafından görülebilirler ancak derleme dışında kalan sınıflar için özeldirler. İç üyelere bir arkadaş derlemesinden erişmek için, arkadaş derlemesinin adı, iç üyelerin tanımlandığı derlemede InternalsVisibleToAttribute özniteliğiyle belirtilmelidir. Arkadaş montajı özel türlere ve özel üyelere erişemez.


Örneğin, X Montajındaki InternalsVisibleToAttribute, Y Montajını arkadaş montajı olarak belirtmek için kullanılabilir, böylece Y Montajı, X Montajı'nın dahili olarak işaretlenmiş tüm tiplerine ve üyelerine erişebilir.


Arkadaş montajlarının geliştirilmesi ile ilgili yönergeler aşağıdadır:

  • İmzalı montajları kullanırken, 'sn.exe' aracı arkadaş montajını belirten özniteliğe iletilmesi gereken ortak anahtarı almak için kullanılabilir
  • Başka bir derlemenin iç üyelerine erişen bir arkadaş derlemesi derlenirken, derleyici seçeneğinin (/ out) çıktı dosyasının (.exe veya .dll) adıyla ayarlanması gerekir
  • Erişilmesi gereken montaj için arkadaş olması gereken her montajı açıkça belirtmek gerekir
  • Kapsülleme kurallarını ihlal etmeden arkadaş montajlarının kullanılması önerilir
Bu tanım C # bağlamında yazılmıştır.
Arkadaş montajı nedir? - techopedia nedir?