Является ли пространство имен Microsoft.VisualBasic "истинным .NET" кодом? - PullRequest
57 голосов
/ 22 октября 2008

Моя команда разработчиков готовится начать новый проект. Магазин был «магазином VB» со времен VB3, но сейчас преобладает мнение, что мы - «магазин .NET», и поскольку C # был создан специально для .NET, тогда как VB.NET был модифицирован, мы решил двигаться вперед, писать только на C #. Спор вращается вокруг вопроса о том, имеет ли пространство имен Microsoft.VisualBasic законное место в новой разработке или только для обратной совместимости для кода VB6 (и более старого). Еще один и более интересный вопрос состоит в том, является ли код «под» пространством имен Microsoft.VisualBasic даже кодом .NET, если это действительно старая среда выполнения VB, тщательно упакованная в оболочку .NET, что делает его фактически элементом управления взаимодействием COM ( аналогично тому, как WinForms оборачивает оконный API не .NET Win32, но предоставляет для использования только .NET API).

Чтобы сделать это еще более запутанным, у нашей команды разработчиков есть консультант Microsoft Consulting Services, который сообщает нам, что Microsoft больше не поддерживает Visual Basic, , включая среду выполнения VB, лежащую в основе пространства имен Microsoft.VisualBasic .

Мне нужны ссылки - предпочтительно на безупречные источники Microsoft - на документацию, которая однозначно отвечает на этот вопрос. Я уже пробовал несколько поисковых перестановок в Google и не приблизился к сути этого вопроса.

РЕДАКТИРОВАТЬ: Очевидно, я не прояснил свой вопрос. Я не спрашиваю, является ли VB.NET истинным кодом .NET. Я пытаюсь определить, является ли то, что находится "под" пространством имен Microsoft.VisualBasic , кодом .NET или это старая среда выполнения VB6, тщательно упакованная и представленная как код .NET. Кто-то уже сказал, что 9/10 пространства имен просто переносят код из других мест в .NET; что насчет других 1/10?

Ответы [ 13 ]

0 голосов
/ 22 октября 2008

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

VB.NET, казалось, сильно отличался от VB6, когда я последний раз использовал его.

0 голосов
/ 22 октября 2008

Я думаю, что хорошее место для начала - документация MSDN, предоставленная Microsoft о VB.net

http://msdn.microsoft.com/en-us/library/2x7h1hfk.aspx Эта ссылка будет последней визуальной студией 2008 года, написанной о языке.

VB компилирует то же самое, что и C # в CLR, поэтому я не понимаю, откуда ваш консультант.

0 голосов
/ 22 октября 2008

Существует куча кода .NET, который Microsoft на самом деле просто оборачивает функциональностью COM. Я не гуру лицензирования, но вы всегда можете взять Reflector, взглянуть на это пространство имен и убедиться сами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...