stringtranslate.com

Visual Basic (классический)

Visual Basic (VB) до .NET , иногда называемый Classic Visual Basic , [1] — это язык программирования третьего поколения , основанный на BASIC и интегрированной среде разработки (IDE) от Microsoft для Windows , известный своей поддержкой быстрого применения. разработка (RAD) приложений с графическим пользовательским интерфейсом (GUI), событийно-ориентированное программирование , а также потребление и разработка компонентов с помощью технологии объектной модели компонентов (COM).

VB был впервые выпущен в 1991 году. Последней версией стала версия 6 (VB6) в 1998 году. 8 апреля 2008 года Microsoft прекратила поддержку VB6 IDE, переведя ее в категорию устаревших . Команда Microsoft VB по-прежнему поддерживает совместимость приложений VB6 с помощью своей программы «It Just Works» в поддерживаемых операционных системах Windows. [2]

Microsoft существенно изменила VB на технологию .NET и переименовала его в Visual Basic .NET (VB.NET), а затем снова переименовала его в Visual Basic . Таким образом, Visual Basic может относиться к классической версии, версии .NET или к обеим. Эта статья посвящена версиям до .NET.

Первоначально предполагалось, что BASIC будет простым в освоении, и Microsoft намеревалась сделать то же самое для VB. [3] [4]

Разработка приложения VB поддерживается исключительно через интегрированную среду разработки VB (IDE) — приложение из набора инструментов Visual Studio той эпохи. В отличие от современных версий Visual Studio , которые поддерживают множество языков, включая VB (.NET), VB IDE поддерживает только VB.

В 2014 году некоторые разработчики программного обеспечения по-прежнему предпочитали Visual Basic 6.0 его преемнику Visual Basic .NET . [5] Visual Basic 6.0 был выбран самым опасным языком программирования респондентами ежегодного опроса разработчиков Stack Overflow в 2016, 2017 и 2018 годах. [6] [7] [8]

Обзор

Как и предполагалось в старых вариантах BASIC , VB должен был иметь низкую кривую обучения . Кроме того, IDE была предназначена для повышения производительности; даже для сложных приложений с графическим интерфейсом . Программирование включает в себя визуальное расположение компонентов или элементов управления в форме , определение атрибутов и действий для этих компонентов и написание кода для управления поведением. Поскольку компоненты имеют атрибуты и действия по умолчанию, программист может разработать простую программу, не написав большого количества кода.

Программы, созданные с использованием более ранних версий, имели проблемы с производительностью, но более быстрые компьютеры и компиляция собственного кода сделали эту проблему менее серьезной.

Поскольку программа VB компилируется как исполняемый файл собственного кода , а не интерпретируется как старые варианты BASIC, она работает относительно быстро и требует относительно мало места для хранения. Но, начиная с версии 5, во время выполнения требуется загрузка относительно больших библиотечных файлов; около 1 МБ. Основные библиотеки времени выполнения включены по умолчанию в Windows 2000 и более поздние версии, но расширенные компоненты времени выполнения требуют дополнительного внимания при установке. Более ранние версии Microsoft Windows (95/98/NT) требуют, чтобы библиотеки времени выполнения распространялись вместе с исполняемым файлом.

Пустая форма в Visual Basic 6.

Формы создаются с использованием методов перетаскивания . Инструмент используется для размещения элементов управления (например, текстовых полей, кнопок и т. д.) в форме (окне). Элементы управления имеют связанные с ними атрибуты и обработчики событий . Значения по умолчанию предоставляются при создании элемента управления, но могут быть изменены программистом. Многие значения атрибутов могут быть изменены во время выполнения в зависимости от действий пользователя или изменений в среде, обеспечивая динамическое приложение. Например, в обработчик событий изменения размера формы можно вставить код, чтобы изменить положение элемента управления так, чтобы он оставался в центре формы, расширялся для заполнения формы и т. д. Вставляя код в обработчик событий для нажатия клавиши в текстовом поле, программа может автоматически переводить регистр вводимого текста или даже запрещать вставку определенных символов.

Разработка в IDE организована как проект , который можно настроить для вывода в виде программы ( EXE ), библиотеки динамической компоновки (DLL) или библиотеки управления ActiveX (OCX), которая является специализированной DLL.

Элементы управления обеспечивают графическую функциональность приложения с графическим интерфейсом, а программисты присоединяют код к обработчикам событий для выполнения действий. Например, раскрывающийся элемент управления отображает список элементов. Когда пользователь выбирает элемент, автоматически вызывается обработчик событий, который выполняет код, прикрепленный к обработчику программистом.

Для DLL код VB обычно не предоставляет пользовательский интерфейс, а вместо этого предоставляет COM-объекты другим программам. Это позволяет использовать такие возможности, как обработка на стороне сервера или дополнительный модуль.

С помощью технологии COM неиспользуемая память восстанавливается для повторного использования с помощью подсчета ссылок ; восстанавливается, когда счет достигает нуля. VB уменьшает счетчик, когда переменная выходит за пределы области видимости или присваивается ей Nothing. Такая конструкция предотвращает утечки памяти , от которых страдают некоторые старые языки, такие как C и C++. Он существенно отличается от более современного подхода к сбору мусора .

VB предоставляет большую библиотеку служебных объектов и обеспечивает базовую поддержку объектно-ориентированного программирования .

В отличие от многих других языков программирования, код VB не чувствителен к регистру , хотя IDE преобразует ключевые слова в стандартный регистр, а имена переменных соответствуют регистру, используемому в других частях проекта. Следует отметить, что сравнение строк по умолчанию чувствительно к регистру.

Компилятор VB используется совместно с другими языками пакета Visual Studio, C и C++. Тем не менее, по умолчанию ограничения в IDE не позволяют создавать некоторые цели (DLL модели Windows) и модели потоков, но с годами разработчики обходили эти ограничения.

Функции

Функция, использующая операторы If, then, Else и Dim.

Visual Basic имеет примечательные функции и характеристики, которые в некоторых случаях отличаются от других вариантов BASIC или от других распространенных языков:

OPTION BASEбыл представлен ANSI вместе со стандартом ANSI Minimal BASIC в конце 1970-х годов.

История

Алан Купер создал дизайн пользовательского интерфейса Visual Basic с возможностью перетаскивания.

Visual Basic 1.0 был представлен в 1991 году. Конструкция перетаскивания для создания пользовательского интерфейса заимствована из прототипа генератора форм, разработанного Аланом Купером и его компанией под названием Tripod . [19] [20] [21] Microsoft заключила контракт с Купером и его коллегами на разработку Tripod в систему программируемых форм для Windows 3.0 под кодовым названием Ruby (никакого отношения к более позднему языку программирования Ruby ). В штативе вообще не было языка программирования. Microsoft решила объединить Ruby с языком Basic для создания Visual Basic. Генератор интерфейса Ruby обеспечивал «визуальную» часть Visual Basic, и это было объединено с механизмом Embedded BASIC «EB», разработанным для заброшенной системы баз данных Microsoft «Omega». Ruby также предоставил возможность загружать динамически подключаемые библиотеки, содержащие дополнительные элементы управления (тогда называемые «штуками»), которые позже стали интерфейсом VBX . [22]

График

Visual Basic для MS-DOS
Значок VB DOS

Производные технологии

Microsoft разработала множество производных VB (классического), в том числе:

Проблемы

Производительность

Версии до 5 компилировали код в P-Code , который интерпретируется во время выполнения. Преимущества P-Code включают переносимость и меньший размер двоичных файлов, но обычно он замедляет выполнение, поскольку интерпретатор добавляет уровень в среду выполнения. Приложениям VB требуется среда выполнения Microsoft VB MSVBVM##.DLL, где ## — номер версии, 50 или 60. MSVBVM60.dll входит в стандартную комплектацию Windows во всех выпусках от Windows 98 до Windows 11, хотя в некоторых выпусках Windows 7 этого нет. включите его. Однако в Windows 95 для процесса установки приложения требуется DLL, необходимая программе. VB 5 и 6 могут компилировать код либо в собственный код, либо в P-Code, но среда выполнения по-прежнему требуется для встроенных функций и управления формами.

Другой

Критика VB (до VB.NET) включает: [31]

Унаследованное развитие и поддержка

Все версии Visual Basic IDE, от 1.0 до 6.0, больше не поддерживаются Microsoft. Соответствующие среды выполнения также не поддерживаются, за исключением основной среды выполнения Visual Basic 6, которую Microsoft официально поддерживает на протяжении всего срока службы Windows 10 [34] и Windows 11 . [35] Компоненты сторонних производителей, поставляемые с Visual Studio 6.0, не включены в данное заявление о поддержке. Некоторые устаревшие компоненты Visual Basic могут по-прежнему работать на новых платформах, несмотря на то, что они не поддерживаются Microsoft и другими поставщиками. Документация для Visual Basic 6.0, его интерфейса прикладного программирования и инструментов лучше всего представлена ​​в последнем выпуске MSDN , предшествовавшем Visual Studio.NET 2002. Более поздние выпуски MSDN были ориентированы на разработку .NET, и значительная часть документации по программированию Visual Basic 6.0 была удалена как язык развивался, и поддержка старого кода прекратилась. Хотя поддержка Visual Basic 6 прекращена поставщиками и продукт никогда не поддерживался в последних версиях Windows, ключевые части среды по-прежнему работают на новых платформах. Можно получить подмножество среды разработки, работающее на 32-битных и 64-битных версиях Windows Vista, Windows 7, Windows 8, Windows 10 и Windows 11. [36] Благодаря своей постоянной популярности, [37] Существуют сторонние попытки его дальнейшей поддержки, такие как Rubberduck. [38]

Пример кода

Следующий фрагмент кода отображает окно сообщения с надписью «Hello, World!» при загрузке окна:

Private Sub Form_Load () ' Выполняет простое окно сообщения с надписью «Hello, World!» MsgBox «Привет, мир!» Конец субтитра      

Этот фрагмент создает счетчик, который перемещается вверх на 1 каждую секунду (чтобы это работало, в форму необходимо добавить метку и элемент управления таймером), пока форма не будет закрыта или не произойдет целочисленное переполнение :

Option Explicit Dim Count As Integer Private Sub Form_Load () Count = 0 Timer1 . Интервал = 1000 'единиц миллисекунд End Sub Private Sub Timer1_Timer () Count = Count + 1 Label1 . Заголовок = Конец отсчета                         

Смотрите также

Рекомендации

  1. ^ «Классический язык программирования Visual Basic». ТИОБЕ . Проверено 7 февраля 2023 г.
  2. ^ «Заявление о поддержке Visual Basic 6.0 в Windows (обновлено информацией о поддержке Windows 10 версии 1709)» . Майкрософт . Проверено 15 октября 2015 г.
  3. ^ Рут, Рэндал; Ромеро Суини, Мэри (2006). Руководство тестировщика по программированию .NET . Апресс . п. 3. ISBN 978-1-59059-600-5. Вы можете выбрать язык, основываясь на том, насколько легко его выучить. Для новичков Visual Basic — хороший выбор. [~snip] Большим преимуществом Visual Basic является то, что это популярный язык, поскольку его легко выучить.
  4. ^ Плант, Роберт Т.; Мюррелл, Стивен (2007). Руководство руководителя по информационным технологиям . Издательство Кембриджского университета . п. 343. ИСБН 978-0-521-85336-1. Краткое изложение положительных моментов: Visual Basic прост в освоении и широко доступен.
  5. ^ ab ISpliter (14 января 2014 г.). «Visual Basic 6.0: гигант, более мощный, чем когда-либо». CodeProject.com . Проверено 3 апреля 2014 г.
  6. ^ «Опрос разработчиков Stack Overflow, 2016» . Переполнение стека . 2016 . Проверено 18 декабря 2020 г.
  7. ^ «Опрос разработчиков Stack Overflow, 2017» . Переполнение стека . 2017 . Проверено 18 декабря 2020 г.
  8. ^ «Опрос разработчиков Stack Overflow, 2018» . Переполнение стека . 2018 . Проверено 18 декабря 2020 г.
  9. ^ жестокий, Кен. «vkControls: 16 ГРАФИЧЕСКИХ пользовательских элементов управления! НИКОГДА НЕ ВИДЕЛО!». ПСЦ . Проверено 5 апреля 2014 г.
  10. ^ Крул. «CommonControls (Замена общих элементов управления MS)». ВБфорумы . Проверено 5 апреля 2014 г.
  11. ^ ПСЦ. «Сторонние компоненты Visual Basic 6.0 для современных стандартов (обзор)». Исходный код планеты . Проверено 4 апреля 2014 г.
  12. ^ Джефф, Мартин. «Visual Basic 6 продлен для работы в Windows 8». ИНФОК . Проверено 5 апреля 2014 г.
  13. ^ «Совет 2: Используйте номера строк в исходном коде.: Visual Basic».
  14. ^ Руководство программиста Microsoft Visual Basic, версия 3.0 - Microsoft Corporation, 1993 г.
  15. ^ «Устаревшая техническая документация Visual Studio 2003» . Центр загрузки Microsoft . Проверено 7 февраля 2023 г.
  16. ^ Кэтлин Доллард; и другие. «Циклические структуры — Visual Basic». Learn.microsoft.com . Проверено 4 декабря 2017 г.
  17. ^ «Оценка базового логического выражения Microsoft» . Vb.mvps.org. Архивировано из оригинала 23 августа 2009 г. Проверено 16 июня 2009 г.
  18. ^ «PRB: Функция округления отличается в VBA 6 и электронной таблице Excel» . Поддержка Майкрософт . Архивировано из оригинала 29 октября 2013 г. Проверено 25 января 2014 г.
  19. Купер, Алан (22 апреля 1996 г.). «Почему я «отец Visual Basic»». Архивировано из оригинала 9 марта 2017 года . Проверено 8 марта 2017 г.
  20. ^ «Алан Купер получает премию Windows Pioneer Award 1994» . YouTube . 23 сентября 2010 г. Событие происходит в 4:25. Билл Гейтс: «Многие люди называют вас отцом Visual Basic. Что вы об этом думаете?»{{cite web}}: CS1 maint: постскриптум ( ссылка )
  21. ^ Лор, Стив (2008). Перейти к: История специалистов по математике, игроков в бридж, инженеров, шахматных волшебников, ученых-индивидуалистов и Ico (переработанная редакция). Основные книги. п. 96. ИСБН 9780786730766. Купер... получил признание в отрасли как «Отец Visual Basic». (Юристы Microsoft однажды направили Куперу приказ о прекращении противоправных действий, требуя, чтобы он прекратил использовать этот титул. Но после того, как Купер пожаловался, Гейтс уладил ситуацию и даже похвалил его как «пионера Windows» на отраслевой конференции.)
  22. ^ «Рождение Visual Basic».Риан «Пето» Данао I <3 19
  23. ^ Джордж, Мак. «История Visual Basic». Июнь 2002 года . Джордж Мак, 3-е издание, авторские права, июнь 2002 г. Проверено 10 апреля 2014 г.
  24. ^ www.insteptech.com (22 июля 2005 г.). «Что нового в VB6?». www.insteptech.com.
  25. ^ «Рекомендации по жизненному циклу семейства продуктов для Visual Basic 6.0» . Msdn2.microsoft.com. 31 марта 2005 г. Проверено 16 июня 2009 г.
  26. ^ «Заявление о поддержке Visual Basic 6.0 в Windows» . Майкрософт. 17 января 2018 г. Проверено 20 июня 2019 г.
  27. ^ Пике, Лори (20 февраля 2002 г.). «Отказ от фантазий о волшебстве миграции VB». DevX.com . Юпитермедиа. Архивировано из оригинала 19 мая 2007 г. Проверено 17 мая 2007 г.
  28. ^ «VBA для разработчиков Office». Майкрософт.
  29. ^ «Совместимость 32-битной и 64-битной версий Office 2010» . Корпорация Майкрософт . Проверено 16 июля 2012 г.
  30. Скорость, Ричард (6 мая 2022 г.). «RAD Basic — Visual Basic 7, которого никогда не было — выпускает третью альфа-версию». Регистр . Проверено 26 марта 2023 г. RAD Basic — не единственная игра в городе. Альтернативы на разных стадиях разработки включают TwinBASIC, который также стремится обеспечить обратную совместимость с VB6 и VBA; и FreeBASIC, который реализует многое из того, что было в Microsoft QuickBASIC (и имеет изящную IDE в виде VisualFBEditor).
  31. ^ Алекс Гомер; Дэйв Сассман; Роб Ховард; Брайан Фрэнсис; Карли Уотсон; Ричард Андерсон (2004). Профессиональный ASP.NET 1.1 . Уайли. п. 71. ИСБН 0-7645-5890-0. Проверено 8 октября 2008 г.
  32. ^ Марк Д'Оуст (декабрь 2000 г.). «Избегайте написания утомительного и скучного кода». Майкрософт . Проверено 10 ноября 2008 г.
  33. ^ Эндрю Троелсен (2008). Pro VB 2008 и платформа .NET 3.5: голос эксперта по .NET. Апресс. п. 5. ISBN 978-1-59059-822-1.
  34. ^ Деннинг, Адам (22 июня 2015 г.). «Готовимся к Windows 10 – SDK, совместимость, мосты». Блог о создании приложений для Windows . Проверено 2 августа 2015 г.
  35. ^ Паулюк. «Заявление о поддержке Visual Basic 6.0». docs.microsoft.com . Проверено 26 июля 2022 г.
  36. ^ Дэн, Браст (14 сентября 2015 г.). «Установка Visual Basic/Studio 6 в Windows 10». danbrust.net .
  37. ^ Рамель, Дэвид (07.07.2020). «Индекс популярности: там держится классический Visual Basic» . Проверено 28 марта 2023 г.
  38. ^ Рамель, Дэвид (28 февраля 2020 г.). «Возрождение Visual Basic? Проект направлен на то, чтобы перенести VBE в этот век!». Журнал Visual Studio . Проверено 28 марта 2023 г.

Внешние ссылки