Из Википедии, свободной энциклопедии
  (Перенаправлено с VB.NET )
Перейти к навигации Перейти к поиску

Visual Basic .NET ( VB.NET ) является несколько парадигм , объектно-ориентированный язык программирования , реализованный на платформе .NET Framework . Microsoft запустила VB.NET в 2002 году в качестве преемника своего исходного языка Visual Basic . Хотя часть «.NET» в названии была исключена в 2005 году, в этой статье «Visual Basic [.NET]» используется для обозначения всех языков Visual Basic, выпущенных с 2002 года, чтобы отличать их от классического Visual Basic . Наряду с Visual C # это один из двух основных языков, ориентированных на платформу .NET. 11 марта 2020 года Microsoft объявила о завершении эволюции языка VB.NET. [4]

Интегрированная среда разработки (IDE) Microsoft для разработки на языке Visual Basic .NET - это Visual Studio . Большинство выпусков Visual Studio являются коммерческими ; Единственные исключения являются Visual Studio Express и Visual Studio Community , которые являются бесплатными . Кроме того, .NET Framework SDK включает бесплатный компилятор командной строки под названием vbc.exe. Mono также включает компилятор командной строки VB.NET.

Синтаксис [ править ]

VB.NET использует операторы для определения действий. Наиболее распространенный оператор - это оператор выражения, состоящий из выражения, которое нужно вычислить, в одной строке. В рамках этой оценки могут быть вызваны функции или подпрограммы , а переменным могут быть присвоены новые значения. Чтобы изменить нормальное последовательное выполнение операторов, VB.NET предоставляет несколько операторов потока управления, идентифицированных зарезервированными ключевыми словами. Структурное программирование поддерживается несколько конструкций , включая два условные конструкции исполнения ( ... ... ... и ... ... IfThenElseEnd IfSelect CaseCaseEnd Select) и три конструкции итеративного выполнения (цикла) ( DoLoop, ForTo, и For Each). Оператор ForToимеет отдельные разделы инициализации и тестирования, оба из которых должны присутствовать. (См. Примеры ниже.) Оператор For Eachперебирает каждое значение в списке.

Кроме того, в Visual Basic .NET:

  • Не существует единого способа определения блоков операторов. Вместо этого определенные ключевые слова, такие как «If… Then» или «Sub» интерпретируются как запускающие подблоки кода и имеют соответствующие ключевые слова завершения, такие как «End If» или «End Sub».
  • Операторы заканчиваются двоеточием (":") или концом строки . Многострочные операторы в Visual Basic .NET включают «_» в конце каждой такой строки. Необходимость в символе продолжения подчеркивания была в значительной степени устранена в версии 10 и более поздних версиях. [5]
  • Знак равенства ("=") используется как при присвоении значений переменным, так и при сравнении.
  • Круглые скобки (круглые скобки) используются с массивами как для их объявления, так и для получения значения по заданному индексу в одном из них. Visual Basic .NET использует круглые скобки для определения параметров подпрограмм или функций.
  • Сингл кавычки ( ') или ключевое слово REM, помещенный в начале строки или после любого числа космических или вкладки символов в начале строки, или после другого кода на линии, указывает на то, что (Оставшаяся часть) строка - это комментарий .

Простой пример [ править ]

Ниже приводится очень простая программа VB.NET, версия классического примера « Hello, World! », Созданная как консольное приложение:

Модуль  Module1 Sub  Main ()  'Классическое "Hello, World!" демонстрационная программа  Console . WriteLine ( "Hello, World!" )  End  SubКонечный  модуль

Он печатает « Hello, World! » В окне командной строки . Каждая строка служит определенной цели, а именно:

Модуль  Module1

Это определение модуля. Модули - это раздел кода, который может содержать объекты любого типа, например константы или переменные, функции или методы, или классы, но не могут быть созданы как объекты, такие как классы, и не могут наследовать от других модулей. Модули служат контейнерами кода, на которые можно ссылаться из других частей программы. [6]
Обычно модуль и файл кода, который его содержит, имеют одно и то же имя. Однако это не требуется, поскольку один файл кода может содержать более одного модуля и / или класса.

Sub  Main ()

Эта строка определяет подпрограмму под названием «Main». «Главная» - это точка входа, с которой программа начинает выполнение. [7]

Консоль . WriteLine ( "Привет, мир!" )

Эта строка выполняет фактическую задачу записи вывода. Консоль - это системный объект, представляющий интерфейс командной строки (также известный как «консоль») и предоставляющий программный доступ к стандартным потокам операционной системы . Программа вызывает консольный метод WriteLine, который заставляет переданную ей строку отображаться на консоли.

Вместо Console.WriteLine можно использовать MsgBox, который печатает сообщение в диалоговом окне вместо окна командной строки. [8]

Сложный пример [ править ]

Этот фрагмент кода выводит на консоль треугольник Флойда :

Импортирует  System.ConsoleМодуль  Программа Sub  Main ()  Тусклые  строки  как  целые числа 'Проверка ввода.  Сделать  до  целого числа . TryParse ( ReadLine ( "Введите значение количества отображаемых строк:"  &  vbcrlf ),  строк )  AndAlso  rows  > =  1  WriteLine ( "Допустимый диапазон: 1 и {0}" ,  Integer . MaxValue )  Цикл  "Выход Floyd Треугольник  Тусклого  тока  As  Integer  =  1  Тусклого  строкя  As  Integer  Dim  колонке  As  Integer  Для  ряда  =  1  Для  строк  Для  столбца  =  1 Для того,  чтобы  грести  Write ( "{0, -2}" ,  тока )  ток  + =  1  Следующими WriteLine ()  Next  End  Sub '' '<summary>  ' '' Как Console.ReadLine, но принимает строку подсказки.  '' '</summary>  Функция  ReadLine ( необязательное  приглашение  As  String  =  Nothing )  As  String  If  prompt  IsNot  Nothing  Then  Write ( prompt )  End  If Вернуть  консоль . Функция завершения ReadLine ()  Конечный  модуль

Сравнение с классическим Visual Basic [ править ]

Вопрос о том, следует ли рассматривать Visual Basic .NET как еще одну версию Visual Basic или как совершенно другой язык, является предметом споров. Есть новые дополнения для поддержки новых функций, таких как структурированная обработка исключений и сокращенные выражения. Кроме того, с переходом на VB.NET произошло два важных изменения типа данных: по сравнению с Visual Basic 6 длина Integer типа данных была удвоена с 16 бит до 32 бит, а длина Long типа данных была удвоена с 32 бит. до 64 бит. Это верно для всех версий VB.NET. 16-битное целое число во всех версиях VB.NET теперь известно как Short. Точно так же редактор Windows Forms очень похож по стилю и функциям на редактор форм Visual Basic.

То , что было значительно изменилось является семантикой от тех , из объектно-ориентированного языка программирования , работающий на детерминированном , справочно-подсчитывал двигатель на основе COM - к полностью объектно-ориентированном язык , поддерживаемого с помощью .NET Framework , который состоит из комбинации в Common Language Runtime (а виртуальная машина с помощью поколений сбора мусора и компиляции точно в момент двигатель) и гораздо большую библиотека классов. Увеличенная широта последнего также является проблемой, с которой разработчикам VB приходится иметь дело при переходе к языку, хотя это в некоторой степени решается функцией My в Visual Studio 2005.

Изменения изменили многие основные предположения о «правильном» поведении в отношении производительности и ремонтопригодности. Некоторые функции и библиотеки больше не существуют; другие доступны, но не так эффективны, как «родные» альтернативы .NET. Даже если они компилируются, большинству преобразованных приложений Visual Basic 6 потребуется некоторый уровень рефакторинга, чтобы полностью использовать преимущества нового языка. Доступна документация по изменениям синтаксиса, отладке приложений, развертыванию и терминологии. [9]

Сравнительные примеры [ править ]

Следующие простые примеры сравнивают синтаксис VB и VB.NET. Они предполагают, что разработчик создал форму, разместил на ней кнопку и связал подпрограммы, продемонстрированные в каждом примере, с обработчиком события щелчка упомянутой кнопки. Каждый пример создает окно сообщения «Hello, World» после нажатия кнопки в форме.

Visual Basic 6:

Частная  подпрограмма  Command1_Click ()  MsgBox  "Hello, World" End  Sub

VB.NET (можно использовать класс MsgBox или MessageBox):

Частная  подпрограмма  Button1_Click ( отправитель  как  объект ,  e  As  EventArgs )  обрабатывает  Button1 . Щелкните  MsgBox ( "Hello, World" ) End  Sub
  • Оба Visual Basic 6 и Visual Basic .NET автоматически генерировать Subи End Subзаявления , когда соответствующая кнопка двойной щелчок в режиме конструктора. Visual Basic .NET также будет генерировать необходимый Classи End Classзаявление. Разработчику нужно только добавить оператор, чтобы отобразить окно сообщения «Hello, World».
  • Все вызовы процедур в VB.NET должны выполняться в круглых скобках, тогда как в Visual Basic 6 были разные соглашения для функций (скобки требуются) и подпрограмм (скобки не допускаются, если они не вызываются с использованием ключевого слова Call).
  • Имена Command1и Button1не обязательны. Однако это имена по умолчанию для командной кнопки в Visual Basic 6 и VB.NET соответственно.
  • В VB.NET Handlesключевое слово используется для того, чтобы сделать подпрограмму Button1_Clickобработчиком Clickсобытия объекта Button1. В Visual Basic 6 подпрограммы обработчика событий должны иметь определенное имя, состоящее из имени объекта («Command1»), подчеркивания («_») и имени события («Click», следовательно, «Command1_Click»).
  • Существует функция , называемая MessageBox.Showв Microsoft.VisualBasicпространстве имен , которые могут быть использованы (вместо MsgBox) аналогично соответствующей функции в Visual Basic 6. Существует противоречие [10] , о которых функция использования в качестве лучшей практики (не ограничиваются только показывать окно сообщений но также относительно других функций Microsoft.VisualBasicпространства имен). Некоторые программисты предпочитают делать что-то «.NET-способом», поскольку классы Framework имеют больше возможностей и меньше зависят от языка. Другие утверждают, что использование специфичных для языка функций делает код более читаемым (например, используя int(C #) или Integer(VB.NET) вместо System.Int32).
  • В Visual Basic 2008 включение ByVal sender as Object, ByVal e as EventArgsстало необязательным.

В следующем примере демонстрируется разница между Visual Basic 6 и VB.NET. Оба примера закрывают активное окно .

Visual Basic 6:

Sub  cmdClose_Click ()  Unload  Me End  Sub

VB.NET:

Sub  btnClose_Click ( sender  As  Object ,  e  As  EventArgs )  Обрабатывает  btnClose . Нажмите "  Закрыть" () " Конец  подписки".

Префикс cmd заменяется префиксом btn в соответствии с ранее упомянутым новым соглашением. [ какой? ]

В Visual Basic 6 не было общих сочетаний клавиш. Следующие варианты эквивалентны:

Visual Basic 6:

Sub  Timer1_Timer ()  'Уменьшает высоту формы на один пиксель за такт  Me . Высота  =  Me . Высота  -  1 конечный  переводник

VB.NET:

Sub  Timer1_Tick ( отправитель  как  объект ,  e  как  EventArgs )  обрабатывает  Timer1 . Отметьте  меня . Высота  - =  1 конечный  переводник

Сравнение с C # [ править ]

C # и Visual Basic .NET - первые языки Microsoft, созданные для программирования на .NET Framework (позже добавлен F # и другие; другие также добавили языки). Хотя C # и VB.NET синтаксически различаются, на этом различия в основном заканчиваются. Microsoft разработала оба этих языка как часть одной платформы разработки .NET Framework. Оба они разрабатываются, управляются и поддерживаются одной и той же командой разработчиков языков в Microsoft. [11] Они компилируются на один и тот же промежуточный язык (IL), который работает с одними и теми же библиотеками времени выполнения .NET Framework. [12] Хотя есть некоторые различия в конструкциях программирования, их различия в основном синтаксические и, если предположить, что один из них избегает библиотек Visual Basic «Совместимость», предоставляемых Microsoft для облегчения преобразования из Visual Basic 6, почти каждая функция в VB имеет эквивалентную функцию в C # и наоборот. Наконец, оба языка ссылаются на одни и те же базовые классы .NET Framework для расширения своей функциональности. В результате, за некоторыми исключениями, программа, написанная на любом языке, может быть запущена через простой преобразователь синтаксиса для перевода на другой. Для этой задачи существует множество продуктов с открытым исходным кодом и коммерчески доступных продуктов.

Примеры [ править ]

Привет мир! [ редактировать ]

Приложение Windows Form [ править ]

Требуется кнопка с именем Button1.

Открытый  класс  Form1 Частная  подпрограмма  Button1_Click ( отправитель  как  объект ,  e  как  EventArgs )  обрабатывает  Button1 . Щелкните  MsgBox ( «Hello world!» ,  MsgBoxStyle . Information ,  «Hello world!» ).  Показать сообщение с надписью «Hello world!».  End  Sub End  Class
Привет мир! окно

Консольное приложение [ править ]

Модуль  Module1 Подчиненная  основная ()  консоль . WriteLine ( "Hello world!" )  'Напишите в консоли "Hello world!" и начать новую строку.  Консоль . ReadKey ()  'Пользователь должен нажать любую клавишу до завершения работы приложения.  Конечный  вспомогательный конечный  модуль

Говорящий [ править ]

Приложение Windows Form [ править ]

Требуется TextBox с названием «TextBox1» и кнопка с именем Button1.

Открытый  класс  Form1  Частная  подпрограмма  Button1_Click ( отправитель  как  объект ,  e  как  EventArgs )  обрабатывает  Button1 . Щелкните  CreateObject ( «Sapi.Spvoice» ). Говорите ( TextBox1 . Text )  End  Sub End  Class

Консольное приложение [ править ]

Модуль  Module1  Private  Voice  =  CreateObject ( "Sapi.Spvoice" )  Private  Text  Как  строки Подчиненная  основная ()  консоль . Напишите ( "Введите текст, чтобы говорить:" )  'Say "Введите текст, чтобы говорить:"  Text  =  Console . ReadLine ()  'Пользователь должен ввести текст, чтобы говорить.  Голос . Speak ( Text )  'Произнесите текст, введенный пользователем.  Конечный  вспомогательный конечный  модуль

История версий [ править ]

После классической версии Visual Basic 6.0 первая версия Visual Basic .NET дебютировала в 2002 году. По состоянию на 2020 год выпущено десять версий Visual Basic .NET.

2002 (VB 7.0) [ править ]

Первая версия, Visual Basic .NET, основана на .NET Framework 1.0 . Самая важная функция - это управляемый код , который контрастирует с классическим Visual Basic.

2003 (VB 7.1) [ править ]

Visual Basic .NET 2003 был выпущен вместе с .NET Framework 1.1 . Новые функции включают поддержку .NET Compact Framework и улучшенный мастер обновления VB . Также были улучшены производительность и надежность .NET IDE (особенно фонового компилятора ) и среды выполнения. Кроме того, Visual Basic .NET 2003 был доступен в Visual Studio.NET Academic Edition и бесплатно распространялся среди определенного числа ученых [ ласковые слова ] из каждой страны.

2005 (VB 8.0) [ править ]

После Visual Basic .NET 2003 Microsoft исключила «.NET» из названия продукта, назвав следующую версию Visual Basic 2005.

В этом выпуске Microsoft добавила множество функций, призванных усилить нацеленность Visual Basic .NET как платформы быстрой разработки приложений и еще больше отличить ее от C # ., В том числе:

  • Функция " Изменить и продолжить" [ требуется дополнительное объяснение ]
  • Оценка выражения во время разработки [ требуется дополнительное объяснение ]
  • Псевдо- пространство имен «My», которое обеспечивает: [13] [14]
    • Легкий доступ к определенным областям .NET Framework, для доступа к которым в противном случае требуется значительный код, например использование, а неMy.Form2.Text = " MainForm "System.WindowsApplication1.Forms.Form2.text = " MainForm "
    • Динамически генерируемые классы (например, My.Forms )
  • Улучшенный конвертер VB-to-VB.NET [15]
  • Ключевое слово using, упрощающее использование объектов, которым требуется шаблон Dispose для освобождения ресурсов.
  • Функция Just My Code , которая скрывает (переходит) шаблонный код, написанный Visual Studio .NET IDE, и код системной библиотеки во время отладки.
  • Связывание с источником данных, упрощение разработки клиент-сервер базы данных

Чтобы преодолеть разрыв между собой и другими языками .NET, в этой версии добавлены:

  • Дженерики [16]
  • Частичные классы , метод определения некоторых частей класса в одном файле с последующим добавлением дополнительных определений; особенно полезно для интеграции пользовательского кода с автоматически сгенерированным кодом
  • Перегрузка операторов и типы, допускающие значение NULL [17]
  • Поддержка беззнаковых целочисленных типов данных, обычно используемых в других языках.

Visual Basic 2005 представил IsNotоператор, который делает 'If X IsNot Y'эквивалент 'If Not X Is Y'. Он получил известность [18], когда было обнаружено, что он является предметом патентной заявки Microsoft. [19] [20]

2008 (VB 9.0) [ править ]

Visual Basic 9.0 был выпущен вместе с .NET Framework 3.5 19 ноября 2007 г.

В этом выпуске Microsoft добавила множество функций, в том числе:

  • Истинный условный оператор «If (условие как логическое, truepart, falsepart)» для замены функции «IIf».
  • Анонимные типы
  • Поддержка LINQ
  • Лямбда-выражения
  • XML-литералы
  • Вывод типа
  • Методы расширения

2010 (VB 10.0) [ править ]

В апреле 2010 года Microsoft выпустила Visual Basic 2010. Microsoft планировала использовать Dynamic Language Runtime (DLR) для этого выпуска [21], но перешла на стратегию совместной эволюции между Visual Basic и родственным языком C #, чтобы привести оба языка к более близкому соотношению с друг друга. Врожденная способность Visual Basic динамически взаимодействовать с объектами CLR и COM была улучшена для работы с динамическими языками, построенными на DLR, такими как IronPython и IronRuby . [22]Компилятор Visual Basic был улучшен, чтобы выводить продолжение строки в наборе общих контекстов, во многих случаях устраняя необходимость в символах продолжения строки «_». Кроме того, существующая поддержка встроенных функций была дополнена поддержкой встроенных подпрограмм, а также многострочных версий лямбда-выражений Sub и Function. [23]

2012 (VB 11.0) [ править ]

Visual Basic 2012 был выпущен вместе с .NET Framework 4.5 . Основные функции, представленные в этой версии, включают: [ требуется дальнейшее объяснение ]

  • Асинхронное программирование с операторами async и await
  • Итераторы
  • Иерархия звонков
  • Информация о вызывающем абоненте
  • Ключевое слово Global в операторах namespace

2013 (VB 12.0) [ редактировать ]

Visual Basic 2013 был выпущен вместе с .NET Framework 4.5.1 с Visual Studio 2013. Можно также создавать приложения .NET Framework 4.5.2, установив Developer Pack. [24]

2015 (VB 14.0) [ править ]

Visual Basic 2015 (кодовое имя VB «14.0») был выпущен вместе с Visual Studio 2015. Языковые функции включают новый знак «?». для выполнения встроенных проверок на null, а также добавлена ​​новая функция интерполяции строк для встроенного форматирования строк. [25]

2017 (VB 15.x) [ править ]

Visual Basic 2017 (кодовое имя VB «15.0») был выпущен вместе с Visual Studio 2017. Расширяет поддержку новых языковых функций Visual Basic 15 в версии 2017, 15.3, 15.5, 15.8. Вводит новые рефакторинги, которые позволяют упорядочить исходный код одним действием. [26] [27]

2019 (VB 16.0) [ править ]

Visual Basic 2019 (кодовое имя VB «16.0») был выпущен вместе с Visual Studio 2019. [28] Первая версия Visual Basic была ориентирована на .NET Core. [29]

Кросс-платформенная разработка и разработка с открытым исходным кодом [ править ]

Официальный компилятор VB.NET написан на VB.NET и доступен на GitHub как часть платформы .NET Compiler. [30] Создание инструментов с открытым исходным кодом для разработки VB.NET было медленным по сравнению с C # , хотя платформа разработки Mono предоставляет реализацию специфичных для VB.NET библиотек и совместимый с VB.NET 8.0 компилятор, написанный на VB.NET. , [31], а также стандартные библиотеки фреймворка, такие как библиотека графического интерфейса Windows Forms .

SharpDevelop и MonoDevelop - альтернативные IDE с открытым исходным кодом . Среда Gambas также похожа, но отличается от Visual Basic.

См. Также [ править ]

  • Microsoft Visual Studio Express
  • Список библиотек и фреймворков .NET
  • Сравнение C # и Visual Basic .NET
  • Visual Basic для приложений
  • Microsoft Small Basic
  • Сравнение языков программирования

Ссылки [ править ]

  1. ^ a b «Option Explicit и Option Strict в Visual Basic .NET и Visual Basic» . Поддержка . Microsoft . 19 марта 2008 . Проверено 22 августа 2013 года .
  2. ^ Доллард, Кэтлин. «Visual Basic в .NET Core 3.0» . blogs.msdn.microsoft.com .
  3. ^ https://github.com/dotnet/roslyn/blob/1ff27b046b5c03abb38bfeda44eb82da0b8df9de/License.txt
  4. ^ https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/
  5. ^ «Новые возможности Visual Basic 10» .
  6. ^ «Заявление о модуле» . MSDN - Центр разработчиков . Проверено 20 января 2010 года .
  7. ^ «Основная процедура в Visual Basic» . MSDN - Центр разработчиков . Проверено 20 января 2010 года .
  8. ^ "Версия Hello, World для Visual Basic" . MSDN - Центр разработчиков . Проверено 20 января 2010 года .
  9. ^ «Центр ресурсов миграции Microsoft Visual Basic 6.0» . MSDN . Microsoft . Проверено 9 ноября 2014 года .
  10. ^ "Техническая документация, устаренная Visual Studio 2003" . Центр загрузки Майкрософт .
  11. ^ Криль, Пол (27 февраля 2009). «Конвергентные языки программирования Microsoft | Мир разработчиков» . InfoWorld. Архивировано из оригинального 26 января 2013 года . Проверено 18 августа 2013 года .
  12. ^ «Промежуточный язык Microsoft» . Dotnet-guide.com . Проверено 18 августа 2013 года .
  13. ^ Маккензи, Дункан (2006). «Навигация по .NET Framework и вашим проектам с помощью My Namespace» . MSDN Magazine Visual Studio 2005 Guided Tour 2006 . Microsoft .
  14. Уитни, Тайлер (ноябрь 2005 г.). «My.Internals: изучение моей функции Visual Basic» . MSDN . Microsoft .
  15. ^ «Что нового в мастере обновления Visual Basic в Visual Basic 2005» . msdn2.microsoft.com .
  16. ^ «Определение и использование универсальных шаблонов в Visual Basic 2005» . msdn2.microsoft.com .
  17. ^ «Перегрузка операторов в Visual Basic 2005» . msdn2.microsoft.com .
  18. ^ Sherriff, Люси (22 февраля 2005). «Настоящее программное обеспечение отвергает патентную заявку MS IsNot» . Реестр . Проверено 6 апреля 2009 года .
  19. Тафт, Дэррил К. (21 февраля 2005 г.). "Настоящее программное обеспечение подавляет патентные усилия Microsoft" . eWeek . Проверено 6 апреля 2009 года .
  20. ^ Вик, Пол А. Младший; Барсан, Costica Corneliu; Сильвер, Аманда К. (14 мая 2003 г.). «Заявка на патент США: 20040230959» . База данных полных текстов и изображений патентных заявок . Бюро по патентам и товарным знакам США . Проверено 6 апреля 2009 года .
  21. ^ "Что, черт возьми, такое" VBx "?" . 1 мая 2007 . Проверено 12 августа 2009 года . В новом DLR у нас есть поддержка IronPython, IronRuby, Javascript и новой динамической компиляции VBx.
  22. ^ «Что нового в Visual Basic 2010» . Microsoft . 2009 . Проверено 12 августа 2009 года . Visual Basic привязывается к объектам из динамических языков, таких как IronPython и IronRuby.
  23. ^ «Что нового в Visual Basic 2010» . Microsoft. 2010 . Проверено 1 августа 2010 года .
  24. ^ Загрузите Microsoft .NET Framework 4.5.2 Developer Pack для Windows Vista SP2, Windows 7 SP1, Windows 8, Windows 8.1, Windows Server 2008 SP2, Windows Server 2008 R2 SP1, Windows Server 2012 и Windows Server 2012 R2 из официального центра загрузки Microsoft
  25. ^ «Новые языковые возможности в Visual Basic 14» . msdn.com .
  26. ^ решмим. «Примечания к выпуску Visual Studio 2017» . www.visualstudio.com .
  27. ^ решмим. «Что нового в Visual Basic 2017,15.3,15.5,15.8» . www.visualstudio.com .
  28. ^ решмим. «Примечания к выпуску Visual Studio 2019» . www.visualstudio.com .
  29. ^ решмим. «Что нового в Visual Basic 16.0» . www.visualstudio.com .
  30. ^ Roslyn , .NET Foundation, 13 апреля 2019 г. , получено 14 апреля 2019 г.
  31. ^ «Перенаправление…» . www.mono-project.com .

Дальнейшее чтение [ править ]

  1. «Спецификация языка Visual Basic 8.0» . Корпорация Майкрософт. 15 ноября 2005 . Проверено 10 декабря 2010 года .
  2. «Спецификация языка Visual Basic 9.0» . Корпорация Майкрософт. 19 декабря 2007 . Проверено 28 сентября 2011 года .
  3. «Спецификация языка Visual Basic 11.0» . Корпорация Майкрософт. 7 июня 2013 . Проверено 22 сентября 2013 года .

Внешние ссылки [ править ]

  • Официальный сайт
  • Блог группы разработчиков Visual Basic