Не слід плутати з Visual Basic. NET.

Microsoft Visual Basic - засіб розробки програмного забезпечення, що розробляється корпорацією Microsoft і включає мова програмування і середовище розробки. Мова Visual Basic успадкувала дух, стиль і частково синтаксис свого предка - мови Бейсік, у якого є чимало діалектів. У той же час Visual Basic поєднує в собі процедури та елементи об'єктно-орієнтованих та Компонентно-орієнтованих мов програмування. Середа розробки VB містить інструменти для візуального конструювання користувальницького інтерфейсу.

Visual Basic вважається хорошим засобом швидкої розробки прототипів програми, для розробки додатків баз даних і взагалі для компонентного способу створення програм, що працюють під управлінням операційних систем сімейства Microsoft Windows.

Перше визнання серйозними розробниками Visual Basic отримав після виходу версії 3 - VB3. Остаточне визнання як повноцінного засобу програмування для Windows - при виході версії 5 - VB5. Версія VB6, що входить до складу Microsoft Visual Studio 6.0, стала по-справжньому зрілим і функціонально багатим продуктом. Після цього розробники з Microsoft суттєво змінили напрямок розвитку даної технології.

Visual Basic. NET не дозволяє програмувати по-старому, бо по суті є абсолютно іншою мовою, такою самою, як і будь-який інший мову програмування для платформи . NET. Індивідуальність мови, так само як і його переваги (простота, швидкість створення програм, легкість використання готових компонентів) при використанні в середовищі. NET не мають такого значення, як раніше - все зосереджено на можливостях самої системи. NET, на її бібліотеці класів. Тому сьогодні (жовтень 2012 року) потрібно говорити про класичний Visual Basic, його діалектах Visual Basic for Applications (VBA) і Visual Basic Scripting Edition (VBScript) і про мову для платформи. NET - Visual Basic. NET.


1. Еволюція Visual Basic

  • Травень 1991 - випущений Visual Basic 1.0 для Microsoft Windows. За основу мови був узятий синтаксис QBasic, а нововведенням, що приніс потім мові величезну популярність, з'явився принцип зв'язку мови і графічного інтерфейсу. Цей принцип був розроблений Аланом Купером (Alan Cooper) і реалізований в прототипі Tripod (також відомому як Ruby). Перший Visual Basic був інтерпретатором.
  • Вересень 1992 - випущений Visual Basic 1.0 під DOS. Він не був повністю сумісний з Windows-версією VB, оскільки по суті був наступною версією QuickBASIC і працював в текстовому режимі екрана.
    Цікаво відзначити, що у складі була спеціальна утиліта, яка конвертувала проекти даній версії в проекти Visual Basic 1.0. Вона робила код максимально сумісним з Windows-версією, конвертувала форми (хоча результат виходив незадовільним через відмінності текстового і графічного режиму), а також давала в коді коментарі з підказками щодо подальшого поліпшення.
  • Листопад 1992 - випущений Visual Basic 2.0. Середа розробки стала простіше у використанні і працювала швидше.
  • влітку 1993 - вийшов у світ Visual Basic 3.0 в версіях Standard і Professional. До всього іншого, до складу поставки додався движок для роботи з базами даних Access.
  • Серпень 1995 - Visual Basic 4.0 - версія, яка могла створювати як 32-х так і 16-розрядні Windows-програми. Крім того, з'явилася можливість писати на VB класи, а також Visual Basic нарешті став повноцінним компілятором, що значно збільшило швидкість виконання програм.
  • Лютий 1997 - Visual Basic 5.0 - починаючи з цієї версії, стало можливо, поряд зі звичайними додатками, розробляти COM-компоненти. Скомпілювавши такий компонент в OCX-файл і поставляючи його, можна було надати свій об'єкт управління не тільки кінцевого користувачеві, але й іншим розробникам, після чого вони могли інтегрувати цей об'єкт в свої додатки.
  • В середині 1998 - вийшла Visual Basic 6.0. Після цього Microsoft різко змінила політику щодо мов сімейства Basic. Замість розвитку Visual Basic, був створений абсолютно нову мову Visual Basic. NET, перша версія якого з'явилася в 2001. Це принципово нова мова, що має, крім синтаксису, дуже мало схожого з VB 6.0; та відрізняючись від нього так само сильно, як в свій час VB відрізнявся від QBASIC. VB.NET відразу ж зайняв місце VB в Visual Studio, і на цьому розвиток класичного Visual Basic зупинилося.
  • В 2005 вийшла нова версія Visual Basic, в комплекті Visual Studio. Порадувала вона новим інтерфейсом і можливостями. Мова заснований на Visual Basic.NET. Вона не була класичною версією VB.
  • В кінці 2007 Microsoft випустила нову версію Visual Basic - Visual Basic 2008, яка також була заснована на Visual Basic.NET.

2. Основні різновиди Visual Basic

2.1. Класичний Visual Basic (версії 5-6)

Visual Basic Classic

Ця мова дуже сильно прив'язаний до свого середовища розробки й до операційної системи Windows, будучи виключно інструментом написання Windows-додатків. Прив'язка до середовища полягає в тому, що існує велика кількість засобів, призначених для допомоги і зручності програмування: вбудований відладчик, перегляд змінних і структур даних на льоту, вікно налагодження, спливаюча підказка при наборі тексту програми ( IntelliSense). Всі ці переваги роблять даремним і навіть неможливим використання Visual Basic поза середовища розробки, наприклад у звичайному текстовому редакторі.


2.2. Visual Basic for Applications (VBA)

Це засіб програмування, практично нічим не відрізняється від класичного Visual Basic, яке призначене для написання макросів та інших прикладних програм для конкретних програм. Найбільшу популярність здобув завдяки своєму використанню в пакеті Microsoft Office. Широке поширення Visual Basic for Applications в поєднанні з споконвічно недостатньою увагою до питань безпеки призвело до широкого поширення макровірусів.

Особливості:

  • Оператор \ - поділ остачі, будь дробова частина відсікається.
  • Перед виконанням операції a \ ba і b округлюються до цілого.

2.3. Visual Basic Scripting Edition (VBScript)

Скриптова мова, що є кілька усіченої версією звичайного Visual Basic. Використовується в основному для автоматизації адміністрування систем Windows, а також для створення сторінок ASP і сценаріїв для Internet Explorer.

3. Переваги і недоліки

3.1. Переваги

  • Висока швидкість створення додатків з графічним інтерфейсом для MS Windows.
  • Простий синтаксис, що дозволяє дуже швидко освоїти мову.
  • Можливість компіляції як в машинний код, так і в P-код (за вибором програміста). У режимі налагодження програма завжди (незалежно від вибору) компілюється в P-код, що дозволяє припиняти виконання програми, вносити значні зміни у вихідний код, а потім продовжувати виконання: повна перекомпиляция і перезапуск програми при цьому не вимагається.
  • Захист від помилок, пов'язаних із застосуванням покажчиків і доступом до пам'яті. Цей аспект робить Visual Basic додатки більш стабільними, але також є об'єктом критики.
  • Можливість використання більшості WinAPI функцій [1] для розширення функціональних можливостей додатка. Дане питання найбільш повно досліджений Деном Епплманом, що написав книгу "Visual Basic Programmer's Guide to the Win32 API".

3.2. Недоліки

  • Підтримка операційних систем тільки сімейства Windows і Mac OS X (Виняток - VB1 for DOS).
  • Відсутність механізму успадкування реалізації об'єктів [2]. Існуюче в мові спадкування дозволяє успадковувати тільки інтерфейси, але не їх реалізацію.
  • Вимагає встановлену msvbvmXX. dll [3] для роботи програми.
  • Низька швидкість роботи, обумовлена ​​тим, що практично всі вбудовані функції мови реалізовані через бібліотеку часу виконання ( runtime library), яка, в свою чергу, виробляє багато "зайвої" роботи з перевірки та / або перетворення типів.

3.3. Критика

  • Часто критиці піддаються такі аспекти Visual Basic, як можливість відключити засоби стеження за оголошеними змінними, можливість неявного перетворення змінних, наявність типу даних "Variant". На думку критиків, це дає можливість писати вкрай поганий код. З іншого боку, це можна розглядати як плюс, так як VB не нав'язує "хороший стиль", а дає більше свободи програмісту.
  • Відсутність покажчиків, низькорівневого доступу до пам'яті, ASM -вставок. Незважаючи на те, що парадигма Visual Basic дозволяє середньому VB- програмісту обходитися без усього цього, перераховані речі також нерідко стають об'єктами критики. І хоча, використовуючи недокументовані можливості і певні хитрощі, все це можна реалізувати і на VB (наприклад за допомогою функцій для отримання покажчиків VarPtr (), StrPtr () і ObjPtr ()); користуватися цими трюками набагато складніше, ніж, наприклад, на Сі + +.

Проте варто відзначити, що всі недоліки мови витікають з його основної гідності - простоти розробки графічного інтерфейсу. Тому багато програмісти використовують Visual Basic для розробки інтерфейсу користувача, а функціональність програми реалізують у вигляді динамічно підключаються бібліотек ( DLL), написаних іншою мовою (найчастіше C + +).


Примітки

  1. 16-розрядні версії могли звертатися до Win16 підсистемі, а 32-розрядні версії - до Win32.
  2. Взагалі кажучи, відсутність успадкування реалізації - особливість технології COM, а не самого VB, який лише відображає цю особливість.
  3. msvbvm50.dll предустановлена ​​в ОС починаючи з Windows 2000, msvbvm60.dll - починаючи з Windows XP.

Література

  • Брайан Сайлер, Джефф Споттс. Використання Visual Basic 6. Класичне видання = Special Edition Using Visual Basic 6. - М .: "Вильямс", 2007. - С. 832. - ISBN 0-7897-1542-2
  • Білл Семпф. Microsoft Visual Basic 2005 для "чайників" = Visual Basic 2005 For Dummies. - М .: "Діалектика", 2006. - С. 288. - ISBN 0-7645-7728-X
  • Ігор Сафронов. Visual Basic у завданнях і прикладах. - БХВ-Петербург. - СПб. : "БХВ-Петербург", 2008. - С. 400. - ISBN 978-5-94157-495-7
  • Дан Епплман. Win32 API і Visual Basic. Для професіоналів = Dan Appleman's Visual Basic Programmer's Guide to the Win32 API. - Пітер. - СПб. : "Пітер", 2001. - С. 1120. - ISBN 5-272-00198-2