Casa Desenvolupament Què és l'assemblea d'amics? - Definició de tecnologia

Què és l'assemblea d'amics? - Definició de tecnologia

Taula de continguts:

Anonim

Definició: què significa Friend Assembly?

Un muntatge amic, en C #, fa referència al muntatge .NET que pot accedir als membres d’una altra assemblea. Els membres d’una assemblea a la qual s’accedeix des de l’assemblea d’amics han d’estar marcats com

intern.


Les assemblees d'amics s'utilitzen en escenaris en què es necessita accedir a classes i membres interns en una assemblea des d'una altra assemblea específica. Permet dos muntatges específics per compartir membres o funcionalitats sense fer-los públics.


Les assemblees d'amics també s'utilitzen en les proves d'unitats on el muntatge subjacent al codi de prova ha d'accedir als membres marcats com a interns al conjunt de la prova. És útil en el desenvolupament de biblioteques de classes que requereixen addicions contingudes en muntatges separats que necessiten accedir als membres en les assemblees existents.

Techopedia explica Friend Assembly

En marcar els membres d'una classe com a interns, són visibles per a altres classes de la mateixa assemblea, però són privats per a les classes que resideixen fora de l'assemblea. Per accedir als membres interns des d’un muntatge amic, s’hauria d’especificar el nom de l’assemblea d’amics amb l’atribut, InternalsVisibleToAttribute de l’assemblea on es defineixen els membres interns. L'assemblea d'amics no pot accedir a tipus privats ni a membres privats.


Per exemple, InternalsVisibleToAttribute de l'Assemblea X ​​es pot utilitzar per especificar l'Assemblea Y com a assemblea amiga, de manera que l'Assemblea Y pot accedir a tots els tipus i membres de l'Assemblea X ​​que es marquen com a interns.


A continuació, es mostren les directrius relacionades amb el desenvolupament d'assemblees d'amics:

  • Mentre s'utilitzen assemblees signades, l'eina 'sn.exe' es pot fer servir per obtenir la clau pública que s'ha de passar a l'assemblea d'amics que especifica l'atribut.
  • Mentre compilem un muntatge amic que accedeix als membres interns d’un altre muntatge, l’opció del compilador (/ out) s’ha de definir amb el nom del fitxer de sortida (.exe o .dll)
  • Cal especificar explícitament cada assemblea que necessita ser amiga per a l'assemblea a la qual necessita accedir
  • Es recomana utilitzar muntatges d'amics sense incomplir les regles de l'encapsulat
Aquesta definició es va escriure en el context de C #
Què és l'assemblea d'amics? - Definició de tecnologia