İçeriğe atla

Visual Basic

Visual Basic
Visual Studio 2008 yazılımının ekran görüntüsü
Geliştirici(ler)Microsoft
Güncel sürümVisual Studio 2012 / 15 Ağustos 2012
İşletim sistemiMicrosoft Windows ve MS-DOS
PlatformBasic
TürGörsel programlama
LisansLisanslı yazılım
Resmî sitesiResmî web sitesi

Visual Basic, Microsoft tarafından, Basic programlama dili üzerinde geliştirilmiş, olay yönlendirmeli, üst seviye, nesne tabanlı ve görsel bir programlama dilidir. Öğrenilmesi de kullanılması da oldukça kolaydır.

Görsel programlama için basit bir tanım yapmak gerekirse "göz göre göre program yapmak" diyebiliriz. Bu programlama anlayışı; önceki yıllarda kullanılan temel programlama dillerindeki bir düzenleyici (editör) ekran üzerine satır satır yazılan programlamanın yerine, Grafiksel Kullanıcı Arabirimi (GUI)’nin ve bu arabirim içerisinde program geliştirme amacıyla bulunan Entegre Geliştirme Ortamı (IDE) adlı bir araçlar koleksiyonunun almasıyla ortaya çıkmıştır.

Visual Basic'e gelince, öncelikle Basic programlama dili temel alınarak ortaya çıkarılmış olduğunu söylemek gerekir. Basic (Beginners-All Purpose Symbolic Instruction Code) kelime anlamı olarak "Yeni Başlayanlar İçin Çok Amaçlı Sembolik Talimat Kodu" anlamına gelmektedir. Basic metin tabanlı düzenleyiciler (editörler) arasında en çok rağbet göreni olmuştur. Başlangıçta çok basit programların geliştirilmesi amacıyla kullanılırken, bu ilgi dolayısıyla gitgide gelişerek son halini almıştır.

MS visual basic türevleri

Microsoft, Visual Basic dilinin değişik türevlerini oluşturmuştur.

  • VBA (Visual Basic for Applications)

Microsoft Office gibi yazılımlar içerisinde otomasyon oluşturabilmek için geliştirilmiş bir yapıdır.

  • VB Script

ASP (Active Server Pages) web Platformunun standart dilidir. Visual Basic sözdizimine dayalıdır. ASP ve VB Script, ASP.NET ile aynı şey değildir. ASP.NET, Visual Basic.Net ile benzer kategoridedir.

  • Visual Basic.NET
Visual Basic'in geçmişteki bir logosu

Visual Basic.NET, Visual Basic 6.0 Platformunun varisi olmakla birlikte farklı bir yapıdır ve .NET Frame work üzerinde çalışır. Bu Platform Visual Basic dilinin Obje Temelli özelliklerini güçlendirmek için atılmış bir adımdır. Ancak Visual Basic dilinin onu ileri seviye bir dil yapan kullanıcı dostu özelliklerinden ödün verildiği söylenebilir. Microsoft'un Visual Basic.NET'le birlikte Visual Basic'i VB 6.0'dan farklı bir yapıya dönüştürmesinin ardından RAD Basic ve TwinBASIC gibi VB 6.0 uyumlu olduğu iddia edilen 3. parti yazılımlar piyasaya çıkmıştır.

Yardım ve kullanım

Visual Basic programlama diline ait tüm komutları ve bunların kullanım kurallarını bilmeniz oldukça güçtür. Bu nedenle programlarınızı hazırlarken birçok defa yardım almak amacıyla bir kitaba ya da internete ihtiyaç duyarız. İnternette programlama üzerine hazırlanmış yardım alabileceğimiz pek çok site mevcuttur. Bunun yanı sıra Visual Basic programlama dili kendi içerisinde de bir yardım menüsü barındırmaktadır. F1 tuşuna basılarak yardım menüsü görüntülenebilir.

Visual Basic'de yardım alabilmemiz için, bunların kütüphanelerini yani yardım içeriğini barındıran MSDN (Microsoft Developer Network)'yi kurmamız gereklidir. MSDN’i Visual Basic kurulumu tamamlandıktan sonra karşınıza gelecek olan uyarı ekranını takip ederek kurabilirsiniz. Ancak Visual Basic kurulum CD'lerinin tamamına ya da MSDN kurulum dosyalarına ihtiyacınız olacaktır.

Yardım ekranı, internet sayfasına çok benzeyen bir görüntüye sahiptir. "Contents" yazan bölümden konu başlıklarına göre istediğiniz başlığı seçerek, "Index" bölümünden tüm başlık ve alt başlıkları alfabetik sıraya uygun şekilde inceleyerek ya da aradığınız konunun ilk harflerini girerek, "Search" bölümünden ise aradığınız konu içeriğini yazıp o konu ile ilgili tüm başlık ve alt başlıklara ulaşarak arama yaptırabilirsiniz. Aranıp bulunan konunun üzeri tıklanarak aynen bir web sayfasında olduğu gibi yan tarafta görüntülenmesi sağlanabilir. "Favorites" kısmı ise arama için değil daha çok eski yapmış olduğumuz aramalara kolay ulaşmak için kullanılır. Örneği araştırıp bulduğunuz bir konu ile ilgili yardım ekranı açık iken, Favorites kısmına gider ve "Add" butonuna basarsanız, orada yer alan listeye o sayfanın eklendiğini göreceksiniz. Bir konu ile ilgili yardım sayfası görüntülenirken, bir sayfaya sığmayabilir bu durumda araç çubuğunda yer alan "Forward" butonu yardımıyla ilerlenebilir. Konu ile ilintili olabileceğini düşündüğünüz bir alt başlığa gitmek için "Next", bir üst başlığa gitmek için ise "Previous" butonu kullanılabilir. Arayıp bulmuş olduğunuz konu ile ilgili açılan sayfanın hemen üstünde "See Also", "Example", "Specifics", "Applies To" ve "Tasks" gibi linklerin birini ya da birkaçını görebilirsiniz. Bunlar eğer var ise bu konuyla ilintili başka konuları, örnekleri, özellikleri, uygulamaları görmenizi sağlar. Ayrıca sayfanın içerisinde, konu anlatımı sırasında altı çizili ve mavi renkte göreceğiniz kelimelerinde, o kelimelerle ilgili yardım sayfalarına sizi yönlendiren birer link olduğunu belirtmemiz gerekir eğer link belirtmezseniz düzgün bir sonuç çıkartamazsınız.

Özellikleri

  • DAO, RDO ve ADO yöntemleri ile SQL, MySQL, Microsoft Access, Paradox ve Oracle gibi çeşitli veri tabanlarına bağlanabilir.
  • Active-X denetimleri ve nesneleri oluşturabilir.
  • Ascii ve İkili dosya biçimleriyle çalışabilir.
  • Nesne tabanlı bir dildir.
  • Wındows API çağrısı ve benzeri harici işlev çağrıları yapabilir.

Örnek kodlar

Yorum Satırları

'Bu 1. öntanımlı kod/yorum satırıdır
REM Bu ise 2. öntanımlı tanım/yorum satırıdır.

Mesaj kutusu

  • Bu örnek kod, bir mesaj penceresi açmayı sağlar, örneğin bu kodu bir butonun içine yazarsanız, programı çalıştırıp o butona bastığınızda küçük bir pencere açılır ve içinde "Merhaba, Dünya!" yazar:

 Private Sub Button1_Clicked() Handles Button1.Click
    ' Button1'e tıklayınca Button 1'un Click Event'i Tetiklenir ve Bu Event'a Bağlı Prosedürler Çalışır.
    MsgBox("Merhaba, Dünya!") 
 End Sub

Basit Yönetimler

  • Bu kod kullanıldığı Form Load'a yazıldığı zaman, Checkbox'umuz işaretli iken Textbox yazılabilir olacak. Fakat işaretli değilse Textbox kapalı kalacak.
 Private Sub FormLoad()
    If checkbox1.Checked = False Then 'CheckBox işaretli değil
        textbox1.Enabled = True 'CheckBox işaretli değilken TextBox'umuz yazı yazılabilir. Yani "enabled" olacak.
    Else
        textbox1.Enabled = False
    End If
 End Sub
  • Bu kod Button1'e yazıldığında Label1'deki text sayı ise 1 artar. Yoksa "Less Than Infinity" hatası alınır.
 Private Sub Button1_Clicked() Handles Button1.Click
    Label1.Text = (Label1.Text) + 1
    'Alttaki kod ise daha karmaşık. Label2'yi x kabul edersek, Label1'e x'in bir fazlasını ekleyecek.
    Label1.Text = (Label1.Text) + (Label2.Text + 1)
    'Alttaki kod öncekilerden daha karmaşık. Label3'ü y kabul edersek, x ile y'nin 1'er fazlasını toplayıp label1'e ekleyecek.
    Label1.Text = (Label1.Text) + ((Label2.Text + 1) + (Label3.Text + 1))
    'En karmaşık olarak alttakini örnek verebiliriz. Label4'ü z kabul edersek, x + 1 ile y+1'i çarpacak ve bunun sonucu ile
    'z'yi çarparak Label1'e ekleyecek.
    Label1.Text = (Label1.Text) + (((Label2.Text + 1) * (Label3.Text + 1)) * Label4.Text)
    'Alttaki komut button'a yazıldığında Label1'deki değer Textbox 1'e eşitlenecek (Less Than hatası yok.)
    Label1.Text = TextBox1.Text
 End Sub

Kod içinde yeşil yazıyla yazan kısım, bir açıklama metnidir. Yani yazmış olduğunuz kodun ne anlama geldiğini istediğiniz şekilde yazabilirsiniz, programınızı daha sonra güncellemek isterseniz ve hangi kodun ne işe yaradığını unutmamak isterseniz, yeni bir satıra geçip veya kodun bulunduğu satırın sonuna bir tane tek tırnak ( ' ) işareti koymalısınız, daha sonra boşluk bırakarak açıklamanızı yazabilirsiniz.

İki sayıyı toplama

  • Bu kod ise iki sayıya işlem yaptırmaya yaramaktadır, örneğin toplama, çıkarma, çarpma, bölme, kalanı gösterme vs. yeni açtığınız bir forma üç tane "TextBox" (metin kutusu) ve bir tane de "Button" (buton) koyunuz. Daha sonra butonun içine şu kodları yazın:

 Private Sub Button1_Click()
    ' Button1'e tıklayınca Text1 ve Text2'deki sayıları toplar, sonucu Text3'te gösterir
    TextBox3.Text = Val(TextBox1.Text) + Val(TextBox2.Text)
 End Sub

İki sayıya işlem yaptırma kodu bu kadar basittir, istediğiniz işlemi yaptırmak için kod içinde geçen artı (+) işareti yerine; eksi (-), çarpma (*), bölme (/), tam sayı bölme (\), bölümün kalanını gösterme (mod) gibi işaretleri ya da kısaltmaları yazabilirsiniz.

Ayrıca bakınız

Dış bağlantılar

Vikikitap
Vikikitap
Vikikitapta bu konu hakkında daha fazla bilgi var:

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">BASIC</span> programlamaya yeni başlayanlar için kullanımı kolay anlaşılır bir programlama dili

BASIC 1964'te John George Kemeny ve Thomas Eugene Kurtz tarafından New Hampshire, ABD'de icat edilmiş, günümüzde de çeşitli türevleri kullanılmakta olan yüksek düzey bir programlama dili. Farklı türevleri birçok işletim sisteminin parçası olarak sunulmuştur.

<span class="mw-page-title-main">C♯</span> programlama dili

C#; Microsoft tarafından .NET Teknolojisi için geliştirilen modern bir programlama dilidir. Sözdizimi C-like bir deneyim sunar.

<span class="mw-page-title-main">Gambas</span> Açık kaynak bilgisayar yazılımı

Gambas, Linux altında görsel programlama yapmaya yarayan bir yazılımdır. Windows altında Visual Basic'le programlama ile uğraşan programcılar ve Linux altında görsel programlamayı öğrenmek isteyen bilgisayar kullanıcıları için iyi bir alternatifdir. Benoit Minisini adlı programcı tarafından açık kaynak modeli ile geliştirilmektedir.

ASP.NET, Microsoft tarafından geliştirilmiş olan bir açık kaynak Web uygulama gelişimi teknolojisidir. Dinamik Web sayfaları, Web uygulamaları ve XML tabanlı Web hizmetleri geliştirilmesine olanak sağlar. Aynı işletme tarafından geliştirilen .NET çatısı'nın yazılım iskeleti parçası ve artık işletmece desteklenmeyen ASP teknolojisinin devamını teşkil etmiştir.

<span class="mw-page-title-main">Programlama</span> bilgisayar probleminin orijinal formülasyonundan çalıştırılabilir bilgisayar programlarına yönlendiren süreç

Programlama ya da diğer adı ile yazılımlama, bilgisayarın donanıma nasıl davranacağını anlatan, bilgisayara yön veren komutlar, kelimeler, aritmetik işlemlerdir. Diğer bir tanımla programlama, bilgisayar programlarının yazılması, test edilmesi ve bakımının yapılması sürecine verilen isimdir.

<span class="mw-page-title-main">HTML</span> işaretleme ve web programlama dili

Hiper Metin İşaretleme Dili web sayfalarını oluşturmak için kullanılan standart metin işaretleme dilidir. Dilin son sürümü HTML5'tir.

XAML, genişletilebilir uygulama biçimlendirme dili. Microsoft'un uygulama arayüzlerinin oluşturulmasını sağlayan tanımlama dili. XAML, geliştiricilerin XML kullanarak tüm .NET kullanıcı arayüz elemanlarının çizimlerini kontrol edebilmelerini sağlar. Her XAML etiketi (tag), özellikleri XML attributeleriyle kontrol edilen bir .NET Framework sınıfına birebir karşılık gelir.

Olaya dayalı programlama, olay güdümlü programlama veya olay yönlendirmeli programlama, programın akışını kullanıcı hareketlerine göre yönlendirebilen(fare-klavye girişleri, benzer tüm olaylar) programlama şeklidir. Geleneksel programlama dillerinde uygulama başlar, bu noktadan program ilerler ve bütün olaylardan sorumludur. Tüm girişlerden program her an sorumludur. Ancak olay yönlendirmeli programlarda istediğiniz uygulanma üzerine yoğunlaşılabilir.

Microsoft Visual Studio, Microsoft tarafından geliştirilen bir tümleşik geliştirme ortamıdır (IDE). Microsoft Windows, Windows Mobile, Windows CE, .NET Framework, .NET Compact Framework ve Microsoft Silverlight tarafından desteklenen tüm platformlar için yönetilen kod ile birlikte yerel kod ve Windows Forms uygulamaları, web siteleri, web uygulamaları ve web servisleri ile birlikte konsol ve grafiksel kullanıcı arayüzü uygulamaları geliştirmek için kullanılır.

Razor, ASP.NET teknolojisinde C# ve Visual Basic ile birlikte dinamik sayfalar oluşturmaya yarayan bir programlama sözdizimidir. Visual Studio 2010 içerisinde ASP.NET MVC 3 projesi geliştirirken ASPX'e alternatif olarak konulmuş bir görüntüleme motoru biçiminde bulunur. HTML ile kod kısmının birbiriyle etkileşiminin daha anlaşılır bir şekilde görüntülenebilmesi amacıyla geliştirilmiştir.

<span class="mw-page-title-main">Yazılım motoru</span> bilgisayar programının merkezi kısmı

Yazılım motoru, bilgisayar biliminde bir yazılımın altyapısı, temeli anlamına gelir. Yazılım motorları programı çalıştırabilmek için de kullanılmaktadır. Bu yazılımlar diğer programlardan farklıdır. Bir programın içerisinde çalışırlar veya bir bütün oluştururlar. Yazılım motorları bir tarayıcının içerisinde JavaScript motoru veya bir oyun motoru gibi çeşitli türlere sahiptirler. Web tarayıcısı içerisinde de JavaScript, AJAX gibi dillerde yazılmış eklentilerin çalışmasını sağlarlar.

<span class="mw-page-title-main">MonoDevelop</span>

MonoDevelop Linux, OS X ve Windows işletim sistemleri için geliştirilmiş bir açık kaynak tümleşik geliştirme ortamıdır. .NET framework ile Windows uygulamaları geliştirenlerin, alternatif olarak Mono kullanarak geliştirme yapmalarına olanak tanımaktadır. Linux ve Mac OS X için .NET teknolojilerini kullanma olanağı sunar.

ReSharper [ˈɹiːˌʃɑːɹpɚ] yahut R# JetBrains tarafından Microsoft'un geliştirme ortamı Visual Studio için yayımlanan bir uzantısıdır. Şu anda desteklenen ReSharper sürümleri Visual Studio 2010, 2012, 2013, 2015 ve güncel yayın öncesi sürüm "15"'tir.

<span class="mw-page-title-main">Visual Studio Code</span>

Visual Studio Code, Microsoft tarafından Windows, Linux ve MacOS için geliştirilen bir kaynak kodu düzenleyicisidir. Hata ayıklama, gömülü Git kontrolü, sözdizimi vurgulama, akıllı kod tamamlama, snippet'ler ve kod yeniden yapılandırma desteği içerir. Ayrıca özelleştirilebilir, böylece kullanıcılar editörün temasını, klavye kısayollarını ve tercihlerini değiştirebilir. Resmi indirme işlemi tescilli bir lisans altında olmasına rağmen, ücretsiz ve açık kaynaktır.

<span class="mw-page-title-main">Metin tabanlı kullanıcı arayüzü</span> bir metin ekranına çıktı vermeye veya onu kontrol etmeye dayalı arabirim türü

Metin tabanlı kullanıcı arayüzü, metinsel kullanıcı arayüzü veya terminal kullanıcı arabirimi olarak da adlandırılır, grafik kullanıcı arayüzlerinin (GUI) icadından bir süre sonra ortaya çıkan ve onu grafik kullanıcı arayüzünden ayırt etmek için türetilen yeni bir terimdir. TUI'de bilgisayar grafikleri metin kipinde görüntülenir. Gelişmiş bir TUI, GUI'ler gibi tüm ekran alanını kullanabilir ve fare ve diğer girişleri kabul edebilir.

Windows Runtime, 2012 yılında ilk olarak Windows 8 ve Windows Server 2012'de tanıtılan platform tabanlı bir uygulama mimarisidir. WinRT, C++/WinRT, C ++/CX, JavaScript-TypeScript, yönetilen kod dilleri C Sharp ve Visual Basic .NET (VB.NET) 'in geliştirilmesini destekler. WinRT uygulamaları, hem x86 hem de ARM mimarisini doğal olarak destekler ve daha fazla güvenlik ve kararlılık sağlamak için sandbox ortamında çalışabilir. WinRT bileşenleri, yerel, yönetilen ve betik dilleri dahil olmak üzere birden fazla dil ve API arasında birlikte çalışabilirlikle tasarlanmıştır.

Microsoft Windows uygulama programlamasında, OLE Otomasyonu, Microsoft tarafından oluşturulan süreçler arası bir iletişim mekanizmasıdır. Başlangıçta Visual Basic olan komut dosyası dilleri tarafından kullanılması amaçlanan Bileşen Nesne Modeli'nin (COM) bir alt kümesine dayanmaktadır, ancak şimdi Windows'ta birkaç dil tarafından kullanılmaktadır. IDispatch arabirimini uygulamak için tüm otomasyon nesneleri gereklidir. Otomasyon denetleyicileri adı verilen uygulamaların, diğer uygulamalar tarafından dışa aktarılan paylaşılan otomasyon nesnelerine erişebildiği ve bunları değiştirebildiği bir altyapı sağlamaktadır. Uygulamaların birbirini kontrol etmesi için daha eski bir mekanizma olan Dinamik Veri Değişimi'nin (DDE) yerini almaktadır. DDE'de olduğu gibi, OLE Otomasyonunda otomasyon denetleyicisi "istemci"dir ve otomasyon nesnelerini dışa aktaran uygulama "sunucu"dur.

Small Basic, Microsoft'un geliştirdiği ve yayımladığı bir programlama dilidir.

<span class="mw-page-title-main">Kaynak kodu düzenleyicisi</span> yazılım kaynak kodunu düzenlemede uzmanlaşmış metin editörü

Kaynak kodu düzenleyicisi, bilgisayar programının kaynak kodunu düzenlemek için özel olarak tasarlanmış bir metin düzenleyici programıdır. Bağımsız bir uygulama olabileceği gibi bir tümleşik geliştirme ortamı (IDE) veya web tarayıcısı içine de yerleştirilebilir. Kaynak kodu düzenleyicileri temel bir programlama aracıdır, çünkü programcıların temel işi kaynak kodu yazmak ve düzenlemektir.