A Visual Basic (VB) (ejtsd: vizsuöl bézik) a Microsoft által kifejlesztett objektumorientált, eseményvezérelt, strukturált szerkezetű programozási nyelv, a hozzá tartozó integrált fejlesztői környezettel.
A „visual” megkülönböztető jelző magyarázata az, hogy a Microsoft a windowsos alkalmazások készítésének egy teljesen új elvét dolgozta ki, amelyben a programozó a felhasználó által látott kezelői felület elemeinek összeállításából indul ki, egy nagyon kényelmes módszert használva ezek elhelyezésére és módosítására. A programkód logikai szerkezetének alapját pedig az ezeken a vezérléseken a felhasználó által megindított események adják meg. Több programnyelvnek is készült Visual változata: Basic, C++, C#, FoxPro, J++.
Visual Basic néven a Microsoft négy különböző fejlesztőrendszert és nyelvjárást is kidolgozott: Visual Basic – utolsó kiadása a 6.0 verzió, és a Microsoft Visual Studio 6 csomag részeként jelent meg 1998-ban. A Microsoft a VB6 támogatását 2008-ban befejezte, de ennek ellenére internetes fórumokon a továbbiakban is folyik kiegészítők gyártása a rendszerhez. Több különféle modell is megjelent (Standard, Professional, Enterprise), ezek között a nyelvi és bővítési képességekben van különbség. Visual Basic .NET (VB.NET) – a Microsoft .NET keretrendszerére épült új fejlesztőbázis, első változata 2002-ben jelent meg Visual Basic 7.0 névvel. Sajnálatos félreértést okoz, hogy a Visual Basic nevet a gyártó továbbra is használatban tartja, ugyanis a VB6 Basic nyelvével való kompatibilitást a Microsoft számos ponton megszüntette, lényegében egy új, a BASIC konvencióihoz sem teljesen illeszkedő nyelvnek továbbadva ezt a nevet. A Visual Basic előző verzióival írt program forráskódja csak átdolgozás után lesz működőképes a VB.NET környezetben. A VB7 tehát nem folytatása a VB6-nak. Visual Basic for Applications (VBA) – A Visual Basic nyelvi alakzataival nagyban megegyező nyelv, amely csak egyes Microsoft-alkalmazásokon belül – ilyen a Microsoft Office csomag –, valamint néhány más alkalmazáson (pl. AutoCAD) belül futtatható programok írására szolgál, értelemszerűen nagyban igazodva az adott gazdaalkalmazás céljához és lehetőségeihez. Visual Basic for MS-DOS (VBDOS) – A Microsoft DOS operációs rendszer alatt, karakteres képernyő-módban futtatható olyan programok írására készült, amelyek a Windowshoz hasonló ablakok és gombok által kezelhetőek, bevezetve egy új kezelőfelületet. Csak 1.0 jelű kiadását érte meg (1992), a továbbiakban csak a Windows alatti verziót fejlesztették.
Ez a szócikk általánosságban a „visual” fejlesztőrendszerek, majd pedig a Visual Basic 6 Professional nyelvi verzió jellegzetességeit ismerteti.
A „vizuálisság” A korábbi fejlesztőprogramokhoz képest korszakos újítás volt annak a fejlesztési támogatásnak a kialakítása, amelynek a „vizuális” előnevet köszönheti. A Windowsban lényegében az összes program kezelőfelülete szabványos alapelemekből tevődik össze: ablak, nyomógomb, gördítősáv, szövegbeviteli sor, lista stb.; ez az a felszín, amelyet a felhasználó lát, kezel, és a program ezek mögött, a felületi elemek összefüggéseit is megtartva végzi el a feladatát. A Visual nyelvek újítása az volt, hogy a készülő programnak először ezt a felszínét kell megtervezni, legalább nagy vonalakban, és a program lényegi tevékenységét, a háttérben végzendő műveletek, számítások, adatfeldolgozások utasításait ezután kell a kezelőfelület elemeihez kapcsolva megírni. A szemlélet úgyszólván megfordította a program tervezésének irányát, de ez csak az első lépések során kötelező, utána a programrészek fejlesztésének menete szabadon választható.
A Visual Basic olyan programok megépítésére szolgál, amelyeket a felhasználó tevékenysége, választása irányít. Az olyan program, amely egy hosszú adatfeldolgozási munkamenetben önállóan dolgozik, a felhasználó beavatkozását nem igényelve, bármilyen hagyományos programnyelven megírható. Ezek között számos olyan található, amelyekkel elkészítve a program a számításokat gyorsabban végzi el, mint amit a Visual Basic fordítóprogramjától megkapott végső változat elérni tud. Ellenben egy adatbázis-kezelő (pl. nyilvántartó, számlázó, könyvelő, adóelszámoló, készletező stb.) vagy egy irodai alkalmazás, internetes alkalmazás használatakor a felhasználó számos lehetőségből választja ki a végzendő feladatot, számos képernyőelemet aktivizál, különösen az egérrel való kezelés során. Fontos észrevenni azt, hogy az ilyen programoknál többnyire nem számít a program sebessége, mert az általában a felhasználó beavatkozásaira, billentyűzésére, kattintásaira vár.Az egyszerűbb programok időnkénti megtorpanását, lelassulását sajnos nemigen lehet az alkalmazás felgyorsításával megszüntetni, mert azt általában a túlburjánzott, elnehezült operációs rendszer háttérműveletei okozzák, de a kényszerűségből állandóan működtetett víruspajzs ellenőrző tevékenysége is további lassulást eredményez. A hagyományos szemléletű, algoritmusközpontú programfejlesztő rendszerekben az ilyen sok választási lehetőség állandó figyelemmel kísérését és a kezelői mozzanatok észlelését nagyon munkaigényes feladat megvalósítani. Lassítja a munkát az is, hogy a Windows alatt működő programoktól a felhasználó a szokásos windowsos, grafikus kezelőelemeket várja, ezeknek a programkódból történő létrehozása pedig a forráskódot terjedelmessé teheti, és szintén munkaigényes. Tovább nehezíti a helyzetet az, amikor az elkészült program módosításakor új elemekkel kell a kezelői felületet bővíteni, vagy meg kell változtatni azok helyét vagy tulajdonságait.
Sokkal hatékonyabb a programok megírása, ha ilyen típusú feladatoknál a kezelőelemekhez rendelt önálló programrészletekkel írhatjuk elő a szorosan azokhoz tartozó műveleteket, és ezekből a programrészletekből áll össze a teljes program. Ezért a Visual fejlesztőprogramok fő célja a felhasználót kiszolgáló felület gyors előállítása és javíthatósága, így a Windows alatti programok látható építőköveire koncentrál, két új fogalom bevezetésével: a vezérlésekkel és az ezeken bekövetkező eseményekkel.
A Visual Basic kronológiája bélyegkép|right|Alan Cooper tervezte a Visual Basic „fogd és vidd” felhasználói felületét. A Visual Basic 1.0 verziója 1991-ben jelent meg. A drag-and-drop elvű felhasználói felület az Alan Cooper és társai által tervezett, Tripod nevű ablaktervező kódgenerátor programból származik. A Microsoft szerződést kötött Cooperrel és társaival a Tripod programozhatóvá fejlesztésére a Windows 3.0 rendszerhez, Ruby néven. (Nincs köze az azonos nevű programnyelvhez.) A Tripod semmilyen programozási nyelvet nem tartalmazott, ezért a Microsoft úgy döntött, hogy a Ruby és a BASIC nyelv ötvözésével hozza létre a Visual Basicet.
A Ruby kezelőfelület-generátor adta az új rendszer „vizuális” részét, és ezt építették egybe az Embedded BASIC fejlesztőeszközzel, amelyet a Microsoft korábban Omega nevű adatbázis-kezelő rendszeréhez akart felhasználni. A Ruby lehetővé tette további vezérléseket (ahogy akkor hívták: „gizmókat”) tartalmazó DLL könyvtárak csatolását is, ami később a VBX elemek rendszerévé fejlődött.
Fő állomások 1990-ben elkezdődött a Thunder („vihar”) projekt. 1991. május – a Visual Basic 1.0 for Windows megjelent a Comdex/Windows világkereskedelmi kiállításon, Atlantában (USA).microsoft Key Note 1991 part 5 (angol nyelvű videó, 02:00-től) (youtube.com) bélyegkép|jobbra|266px|Visual Basic for MS-DOS 1992. szeptember – kiadták a Visual Basic 1.0 DOS alatt működő változatát. A nyelv nem volt teljesen kompatibilis a windowsos Visual Basic nyelvével, mivel valójában a Microsoft DOS-alapú fordítóinak, a QuickBASIC-nek és a BASIC PDS-nek egy újabb verziója volt. A kezelői felület karakteres megjelenítésben az ANSI-karakterkészlet grafikus elemeivel utánozta a Windows grafikus felületét, persze sok engedményre kényszerülve, mégis hatásos összképet elérve. A felület kezelésének technikája pedig már nem sokban különbözik a későbbi Windows 98, Windows XP kezelésétől sem.Visual Basic 1.0 para MS-DOS (videó) (youtube.com) 1992. november – Visual Basic 2.0 for Windows. A programfejlesztő környezet könnyebben kezelhetővé vált, és a sebessége is megnőtt. Megemlítendő, hogy az ablakok (formok) példányosítható objektumokká váltak, lefektetve a VB4-ben bemutatott osztálymodulok elvi alapjait. 1993 nyara – kiadták a 3.0 verziót, immár külön Standard és Professional változatban (az utóbbi több eszközt és lehetőséget tartalmaz, magasabb árért). A VB3 tartalmazta a Microsoft Jet Database Engine nevű adatbázis-kezelő rendszerkomponenst, amely olvasni és írni tudta a Jet (vagy Access) 1.x szabványú adatbázisokat. Ez már lehetővé tette a komolyabb, „üzemi” nyilvántartó programok megírását, megszabadulva az Access adatbázis-építő program szoros korlátaitól. 1995. augusztus – megjelent a 4.0 verzió, az első, amely 16 bites és 32 bites programok előállítására is képes lett. Három változata volt: Standard, Professional és Enterprise. Bemutatkozott a nem vezérléseket képviselő objektumok definiálásának lehetősége. A VB4 változatai közötti inkompatibilitás viszont telepítési és működési hibákat okozott. A korábbi verziók VBX vezérlések beillesztésére voltak képesek, helyettük a VB4 már OLE vezérléseket használt (OCX kiterjesztésű fájlokban). Ezeket később ActiveX vezérléseknek kezdték hívni. A 3.0 verzió alatt írt programok forráskódja még nem nyílt szöveg volt, hanem kódolt, ezért ezek áthozatala a 4.0 verzióba csak a 3.0 verzió felhasználásával volt lehetséges, ez sok utólagos problémát okozott az új rendszerre való átállás után. 1997. február – a Microsoft az 5.0 verzióval már csak a 32 bites programok írását támogatta. A programozók, akik előnyben részesítették a – régebbi Windows rendszerben futtatható – 16 bites programokat, a forráskódjaikat átvihették az 5.0 rendszerbe, majd az ott kidolgozott kódot a 4.0 verzió alatt is lefordíthatták. Az 5.0 bevezette az egyéni vezérlések tervezését, mint ahogy a natív kódba való fordítás opcióját is, megnövelve a számításigényes programok sebességét. Letölthető volt az ingyenes Control Creation Edition (vezérlésszerkesztő kiadás), lehetővé téve az ActiveX vezérlések egyedi tervezését. Ez arra is alkalmas volt, hogy a szerkesztés alatt álló programon már lefordítás nélküli tesztfuttatásokat lehetett végezni a szerkesztőkörnyezeten belül. 1998 közepe – megjelent a Visual Basic 6.0, amely számos területen fejlődött, ideértve az internetre épülő alkalmazások készítésének képességét is. 2005. március 31. – A fejlesztőrendszer támogatásának fő irányai lezárultak, további frissítések nem készültek. A Visual Basic használóinak közössége ezt felzúdulással fogadta, és petícióval követelték a termék életben tartását. A Microsoft kitartott korábbi álláspontja mellett. (De lásd:) Ironikus módon a Microsoft az általa ekkoriban kiadott új kémprogram-védelmét – Microsoft AntiSpyware, a GIANT Company Software termékének része – Visual Basic 6.0-ban írta meg. Az ezt felváltó Windows Defendert C++ kódban újraírták. 2008. március – a Microsoft hivatalosan, végleg befejezte a VB6 fejlesztői támogatását. Ugyan a fejlesztőrendszer támogatása megszűnt, a futásidejű könyvtár elkészült a Windows Vista, Windows Server 2008 és Windows 7 rendszerekhez is.
A tervezőfelület