VB.NET: что делает модификатор «друг»?

Что делает модификатор «друг» в VB.NET?

Почему это модификатор по умолчанию для компонентов графического интерфейса в Visual Studio?


person CJ7    schedule 05.05.2010    source источник
comment
Это напоминает мне цитату C++: Где ваши друзья могут видеть ваши приватные.   -  person kwatford    schedule 05.05.2010


Ответы (2)


friend в VB.Net совпадает с internal в C#, это означает, что к нему можно получить доступ из любого места в той же сборке, но не из других сборок.

Я думаю, что это разумное значение по умолчанию, поскольку я бы сказал, что обычно одна сборка не должна использовать элементы управления GUI другой сборки (если только это не библиотека классов или что-то подобное, созданное для этой цели).

person Hans Olsson    schedule 05.05.2010
comment
Я бы пошел дальше и сказал, что Private будет лучшим модификатором по умолчанию. Непосредственный доступ к элементам управления GUI другого объекта является плохой практикой и приведет к сильно связанному коду, который трудно изменить. - person MarkJ; 06.05.2010
comment
Что ж, я не возражаю против лучших практик, но я предполагаю, что по умолчанию используется друг, чтобы упростить начало работы для новичков или что-то в этом роде. - person Hans Olsson; 06.05.2010

Friend доступен в VB: ключевое слово Friend (Visual Basic) в операторе объявления указывает, что элементы доступны из той же сборки,
From здесь

Я считаю, что версия С# является внутренней

person DannyLane    schedule 05.05.2010