Ogni volta che ho utilizzato InternalsVisibleToAttribute
durante lo sviluppo di un'API, sembra un po 'puzzolente. Come l'API non viene progettata in modo veramente incapsulato. Molte volte questo è fuori dai limiti di tempo - esporre le funzionalità interne in un modo elegante e incapsulato richiede tempo e molte volte solo un altro assembly ne avrà bisogno, rendendo InternalsVisibleToAttribute
come la soluzione corretta.
InternalsVisibleToAttribute
indica un odore di design, come un caso di refactoring andato male, o un'indicazione che i due gruppi non dovrebbero essere separati?
Nota: comprendo la necessità di utilizzare InternalsVisibleToAttribute
per il test delle unità. Questa domanda non si riferisce al test dell'unità.