Visual Basic | |
İlk sürüm tarihi | 1991 |
---|---|
paradigma | Olay programlama |
geliştirici | Microsoft |
Son sürüm | 6.0 (1998) |
Yazıyor | Statik , güçlü |
Tarafından etkilenmiş | Hızlı Temel |
Etkilenen | Visual Basic .NET , Gambas |
İşletim sistemi | Microsoft Windows |
Lisans | Sahip |
İnternet sitesi | microsoft.com |
Visual Basic (VB) , Microsoft tarafından COM programlama modeli için yaratılmış, üçüncü nesil olay güdümlü bir programlama dili ve entegre bir geliştirme ortamıdır . Visual Basic doğrudan türetilmiştir BASIC ve izin veren hızlı uygulama geliştirme oluşturulmasını grafik kullanıcı arayüzleri , erişim veritabanları kullanılarak DAO , ADO ve RDO teknolojilerini yanı sıra oluşturma ActiveX denetimleri veya nesneler . Visual Basic for Applications ve VBScript gibi komut dosyası dilleri , sözdizimsel olarak Visual Basic'e benzer, ancak önemli ölçüde farklı kullanır ve davranır.
VB'de bir program, Visual Basic ile sağlanan bileşenler kullanılarak geliştirilebilir. Visual Basic'te yazılan programlar , programda harici işlevlerin bildirilmesini gerektiren Windows API'sini de kullanabilir .
2005 yılında yapılan bir araştırmada, geliştiricilerin %62'si bir çeşit Visual Basic kullandığını söyledi. Aynı araştırmaya göre ticari alanda en çok kullanılan diller Visual Basic, C++ , C# ve Java'dır .
Visual Basic'e yönelik en son güncelleme, 1998'de yayınlanan sürüm 6.0'dır . Microsoft genişletilmiş desteği 2008'de sona erdi . Sürüm 7'den itibaren Visual Basic, onu " dot Net " platformuna yaklaştıran ve Microsoft'un onu Visual Basic .NET adı altında pazarlamasına yol açan önemli değişikliklere uğrar .
Visual Basic, öğrenmesi ve kullanması kolay olacak şekilde tasarlanmıştır. Dil, basit bir şekilde grafik uygulamalar oluşturmanıza ve aynı zamanda gerçekten karmaşık uygulamalar oluşturmanıza olanak tanır. VB'de programlama, formlar üzerindeki bileşenleri ve kontrolleri görsel olarak düzenlemek, bu bileşenlerle ilişkili özellikleri ve eylemleri tanımlamak ve son olarak işlevsellik eklemek için kod eklemek gibi çeşitli görevlerin bir karışımıdır . Özniteliklere ve eylemlere varsayılan değerler atandığından, programcının birçok kod satırı yazması gerekmeden basit bir program oluşturmak mümkündür. İlk sürümler performans sorunlarından muzdaripti, ancak daha hızlı bilgisayarların ortaya çıkması ve yerel kod derlemesi sayesinde bu performans sorunu azaldı.
Programlar sürüm 5'ten bu yana yerel kodda derlenebilse de , yaklaşık 2 MB boyutunda çalışabilmeleri için yine de yürütme motorunun veya çalışma zamanının varlığını gerektirir . Bu çalışma zamanı, Windows 2000 ve sonraki sürümlerde varsayılan olarak dinamik kitaplıklar olarak bulunur. Windows'un önceki sürümleri için çalışma zamanı, yürütülebilir dosyanın kendisiyle birlikte dağıtılmalıdır.
Olarak IDE , formlar kullanılarak oluşturulur sürükle ve bırak tekniği kontrolleri (giriş kutusu, onay, düğme gibi) formunda yerleştirilmesini sağlayan. Denetimlerin hepsinin öznitelikleri ve ilişkili olay işleyicileri vardır. Programcı tarafından değiştirilebilen varsayılan değerler atanır. Birçok öznitelik, kullanıcı eylemlerine veya ortamdaki değişikliklere yanıt olarak çalışma zamanında dinamik olarak değiştirilebilir. Örneğin, ekranın ortasında kalıcı olarak tutmak veya formu tüm ekran yüzeyini kaplayacak şekilde büyütmek için form olayının yeniden boyutlandırılması işleyicisine kod eklemek mümkündür. Bir düzenleme kutusunun " KeyPress " olay işleyicisine (tuş basılı) kod ekleyerek , program otomatik olarak küçük harfleri büyük harflere veya tam tersine çevirebilir ve hatta belirli karakterlerin eklenmesini yasaklayabilir.
Visual Basic, yürütülebilir dosyalar (.EXE dosyaları), ActiveX denetimleri veya DLL'ler oluşturmanıza olanak tanır , ancak birincil kullanımı Windows uygulamaları oluşturmak ve Web'i veritabanlarıyla arabirimlemek içindir. Basitleştirilmiş iletişim kutuları (örneğin Maksimize Et / Küçült yok ) pop-up tipi işlevsellik sağlamak için kullanılabilir. Kontroller uygulamanın temel işlevselliğini sağlar, programcılar sadece uygun olay işleyicilerine kod ekleyerek ekstra işlevsellik ekler. Örneğin, bir açılır seçim kutusu, listesini doğrudan görüntüleme ve kullanıcının öğelerinden birini seçmesine izin verme yeteneğine sahiptir. Bir öğe seçildiğinde, örneğin ilgili bir listeyi doldurmak için bir olay işleyicisi çağrılır.
Bir Visual Basic bileşeninde ayrıca kullanıcı arabirimi bulunmayabilir ve bunun yerine Bileşen Nesne Modeli (COM) aracılığıyla diğer programlara ActiveX nesneleri sağlayabilir . Dil, "referans sayısı" mekanizmasını kullanan bir çöp toplama mekanizmasına sahiptir . Ayrıca geniş bir yardımcı program kitaplığına sahiptir ve Nesne Yönelimli Programlama desteğinin temellerini sunar . En yaygın bileşenler standart proje şablonuna varsayılan olarak dahil edildiğinden, programcının ek kitaplıkları kullanması nadiren gerekli olur. Diğer birçok programlama dilinden farklı olarak, Visual Basic genellikle büyük/küçük harf duyarlı değildir (büyük veya küçük harf kullanımı önemli değildir), ancak anahtar kelimelerin yazımı standart bir kurala göre otomatik olarak dönüştürür ve değişkenlerin yazılmasını zorlar. kod, bildirim sırasında kullanılan yazıyla aynı olacaktır. Tersine, dize karşılaştırmaları varsayılan olarak büyük/küçük harfe duyarlıdır, ancak bu davranış istendiğinde değiştirilebilir.
Visual Basic birkaç olağandışı özelliğe sahiptir:
VB 1.0 1991'de piyasaya sürüldü . Bir programlama dilini bir grafik kullanıcı arayüzüne bağlama ilkesi, Alan Cooper tarafından geliştirilen Tripod adlı bir prototipten türetilmiştir . Microsoft daha sonra Ruby kod adı altında ( Ruby programlama diliyle ilgili değil) Windows 3.0 için programlanabilir bir Shell geliştirmek üzere Cooper ve ortaklarıyla iletişime geçmişti .
Tripod hiçbir programlama dili içermiyordu ve Ruby, yalnızca Windows Kabuğu gibi davranmaya yetecek ilkel bir komut işlemcisi içeriyordu . Son olarak Microsoft , Ruby yerine Shell for Windows 3.0 gibi basit Program Yöneticisini kullanmaya ve Visual Basic oluşturmak için Ruby'yi Basic diliyle birleştirmeye karar verdi .
Ruby, ek kontroller (daha sonra "gizmos" olarak adlandırılır) içeren dinamik kitaplıkları yükleme yeteneği ile ilişkili olan Visual Basic'in - pencere düzenleyici ve düzenleme araçları - "Görsel" bölümünü sağladı. Ruby'nin "gizmos" uzantıları daha sonra VBX arayüzü oldu.
Microsoft, Komut Dosyası dili kullanımları için türetilmiş diller geliştirmiştir :
Visual Basic'in ilk sürümleri (sürüm 5.0'dan önce) yalnızca P-Code veya sözde kod üretti . Visual Basic 5 ve 6, programcının tercihine bağlı olarak P-kodunu veya yerel kodu derleme yeteneğine sahiptir. P kodu, sanal makine olarak da adlandırılan dil çalışma zamanı tarafından yorumlanır . Avantaj, taşınabilirlik ve kodun küçük boyutunda yatmaktadır. Ancak bu, fazladan bir yorumlama katmanı eklediğinden, genellikle programların yürütülmesini yavaşlatır. P kodunda yerel koddan daha hızlı çalışan küçük kod parçaları veya belirli algoritmalar oluşturmak mümkündür .
Visual Basic uygulamaları, Microsoft Visual Basic Runtime MSVBVMxx.DLL'nin varlığını gerektirir; burada xx, 50 veya 60 sürüm numarasıdır. MSVBVM60.DLL, Windows 98'den sonraki tüm Windows sürümlerinde standart olarak gelirken, MSVBVM50.DLL, tüm sürümlerde mevcuttu. Windows 95'ten sonraki Windows sürümleri . Bu nedenle, Windows 95 altındaki bir makine için Visual Basic programlarının uygun DLL ile dağıtılması zorunluydu .
Visual Basic, yetersiz bellek yönetimi ve kötü programlama alışkanlıklarına yol açabilecek ve düşük performanslı kod yazmaya izin verebilecek, eğitim dışı yapıları kullanarak kod oluşturabilme olanağı sunduğu için eleştiriliyor. Visual Basic'te bazen bir değişkenin bir nesneye mi yoksa nesnenin kendisine mi referans olduğunu söylemek zor olabilir.
Benzer şekilde, bazen bir işlemin bir nesnenin referansını mı kopyalayacağını yoksa tüm nesneyi mi kopyalayacağını söylemek zordur. Bu belirsizlik, istenmeyen davranışın nedeni olabilir veya düşük performans gösteren bir programla sonuçlanabilir.
İşte bazı Visual Basic kodu örnekleri:
Bir dairenin alanını döndüren (hesaplayan) fonksiyon:
Private Function AireDuCercle(Rayon As Double) As Double Const PI = 3.14159265358979 AireDuCercle = PI * (Rayon ^ 2) End Function"Merhaba Dünya" kelimelerini içeren bir pencere görüntüleyen program
Sub Main() MsgBox("Hello World") End SubVisual Basic'ten bir üçüncü taraf uygulamasını başlatın:
Private Sub Run_Notepad() Shell "%SystemRoot%\notepad.exe", vbMinimizedNoFocus 'ouvre Notepad, car Notepad est dans le répertoire System '%SystemRoot% est une variable d'environnement contenant le chemin du répertoire Windows System. End SubNesne programlama:
Imports System.Net.Mail Public Class Form1 Private Sub CheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CBaccept.CheckedChanged Button1.Visible = True If CBaccept.Checked = False Then Button1.Visible = False End If End Sub Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If TBnom.Text = "" Or TBmail.Text = "" Or TBpasse.Text = "" Or TBcpasse.Text = "" Or TBprenom.Text = "" Or TBpseudo.Text = "" Or TBcandidature.Text = "" Or CBaccept.Checked = False Then MsgBox("Vous devez tout remplir correctement") Exit Sub End If If TBpasse.Text <> TBcpasse.Text Then MsgBox("le mot de passe ne correspond pas") Exit Sub End If Dim Nom = TBnom.Text Dim Prenom = TBprenom.Text Dim Mail = TBmail.Text Dim Passe = TBpasse Dim Candidature = TBcandidature Dim Pseudo = TBpasse Dim Message = "Test" & Pseudo & vbCrLf & "candidature " & Candidature & vbCrLf & "prenom" & Prenom Dim MyMailMessage As New MailMessage() Dim SMTPServer As New SmtpClient("[email protected]") MyMailMessage.From = New MailAddress("[email protected]") MyMailMessage.To.Add("[email protected]") MyMailMessage.Subject = ("sujet du message") MyMailMessage.Body = ("Message") SMTPServer.Port = ("587") 'Port SMTPServer.Credentials = New System.Net.NetworkCredential("Adresse_Expediteur", "Mot_de_passe_expediteur") SMTPServer.EnableSsl = True SMTPServer.Send(MyMailMessage) 'Envoi End Sub End ClassVisual Basic, çok zengin grafiksel kullanıcı arayüzleri geliştirmenize izin verir. (Kapsamlı olmayan liste) gibi birçok yazılım türü hızlı bir şekilde oluşturulabilir: görüntü düzenleme yazılımı, metin düzenleyiciler ve veritabanı uygulamaları.