Programlamanın temelini oluşturacak bu konuyu
anlamadan geçmemeliyiz. Degişkenler bizim elimiz ayağımız olcacak.O
yüzden dikkat!!1-)Sabitler(Constants)
Programın içinde değeri değişmeyen
sabitlerdir.VB'de hazır bu tip değilşkenler olduğu gibi programı
yazarken kendi ellerimizle de tanımlayabiliriz.
02021013 seklindeki bir sabit bir tamsayı
sabittir."MUTASYON" şeklindeki bir sabit ise string türü bir
sabittir.String türü ifadeler sayisal işlemlere
sokulmazlar.Değişkenleri elimizle tanımlarken,code(yazilimi
yazdigimiz pencere)penceresinin general(pencerenin sol köşesindeki
listbox'a bak)kisminda olmalıyız.

Bu programı yazdığınızda,command1 butonuna
tıkladığınızda text kutusunda bilgisayarak yazacaktır. Gördüğünüz
gibi sabit değerleri general kısmında tanımladık.Sabit tanımlamak
için mutlaka ihtiyacımız olan şeyler "const" ve sabitin ismi.Hemen
aklınıza "o baştaki private ne oluyor?"diye soru gelecektir hemen
cevaplıyay&yım Private ifadesini silin programın gene de
çalıştığını göreceksiniz,private ve public, değişkenlerin etkili
olacağı alanları belirlememizde işe yarar.Çoğu zaman private'yi
kullanın çünkü standart.exe olarak açtığınız formlarda public işe
yaramaz, hata verir.Ya da hiç birini kullanmayın,simdi ayrıntıyla
anlatırsam işin başında kafalar karışır.
2-)Değişkenler
Program içerisinde değerleri sürekli olarak
degişebilen veri yapısıdır. x=23 y=12 iken x=x+3 y=x+x dersek x ve
y'nin değerlerini 26 ve 38 yaparak degiştirmiş oluruz.Yani bir
değişkene yeni bir değer atanırsa eski değeri silinecektir.
a-)Degişkenlere isim verme
- Degişken isminin ilk karakteri bir harf
olmalıdır.Rakam değil.
- Diğer karakterler
harf,isim,karakter,alttan çizgi_ v.s.olabailir.
- Harflerin küçük yada büyük olmasının bir
önemi yoktur.
- Değişken isimlerinin uzunluklari 255
karaktere kadar olabilir.
- Değişken isimleri içerisinde diğer
semboller (+,-,/, , vb) bulunmamalidir.
b-)Değişken türleri
Bu bölümde,vb'de program
yazarken,programınızda kullanabileceğiiniz veri türleri
tanıtılacaktır.
variant:
Bu tipte tanımlanmış bir değişkene herhangi
bir tip’te veri yüklenebilir.Yani ne tür bir veri gireceğimizi
bilmediğimiz degişkenlerde Variant kullanabiliriz.Ama dikkat!!Bu
tür degişkenler hafizada 16 byte tan fazla yer kaplarlar.
Örnek:
Private Sub Form_Load()
Dim Ad As Variant , No As Variant
Dim Dogum As Variant
Ad="Emre KUTLU"
Tel="1112222222"
Dogum=#Oct,25,1983#
End Sub
string:
Matematiksel işlemlere sokulamayan veri
tipidir.Iki string ifade arasındaki + isareti bu stringleri
birleştir anlamına gelir.
Örnek:
Private Sub Form_Load()
Const A=20,B=50
Dim C As integer
C=A+B
End Sub
Eger burada tanımlanan degişkenlere daha
büyükk sayılar atanırsa overflow oluşur.
long:
Daha büyük bir aralıkta integer yani tamsayı
tanımlamak için kullanabileceğiimiz bir veri tipidir. Hafizada 4
byte yer kaplar. Kullanılabilecek uç değerler +2,147,483,647 ile
-2,147,483,648 dir.
currency:
Sayısal tipteki veriler için tanımlanmış bir
veri tipidir.Hafizada 8 byte yer kaplarlar. 4 hane ondalık kısmı
olmak üzere toplam 19 haneden oluşur.(nokta hariç) Alabileceği
maximum degerler -922,337,203,685,477.5808 ile
922,337,203,685,477.5807 arasındadır.
date:
Tarih türündeki bilgileri kullanmak için
oluşturulmuş bir veri tipidir. Hafizada 8 byte yer kaplarlar. 1
Ocak ile 31 Aralik 9999 arasındaki tarihleri kullanabilirsiniz
Örnek:
Private Sub Form_Load()
Dim Dogum_tarihi As Date , Olum_Tarihi As Date
Dogum_tarihi =#Oct,25,1955#
Olum _Tarihi=#Oct,6,2002#
End Sub
boolean:
Mantıksal veri tipleri için kullanılır. Iki
seçenekten birisini(True,False) alabilir.Bellekte 2 byte yer işgal
ederler.
byte:
O ile 255 arasindaki tamsayıları ifade etmek
için kullanılabilecek veri tipidir.
Örnek
Private Sub Form_Load()
Dim A As Byte , B As Byte
A =23
B= 143
End Sub
single:
Tam sayı olmayan sayılar için
kullanabileceğimiz bir veri tipidir.Single tipindeki veriler
bellekte 4 byte yer kaplarlar. Negatif sayilar için alabileceği
aralık -3.402823E38 ile –1.401298E-45 ,pozitif sayılar için
alabileceği aralık 1.401298E-45 ile 3.402823E38 arasındadır.
double:
Visual Basic’te kullanılabilecek en büyük
sayısal değerlerin veri tipidir. Hafızada 8 byte yer kaplarlar. 16
haneye kadar hassastırlar. Maximum alabileceği degerler pozitif
sayılar için 4.94065645841247E-324 ile 1.797693134862232E308 ,
negatif sayılar için de -1.797693134862232E308 ile
-4.94065645841247E-324 arasındadır..
Örnek:
Private Sub Form_Load()
DefDbl A-K
Dari=50000
Bugday=600000
Arpa=340.56
End Sub
b-)Tip bildirimi için DIM deyimi
Iyi bir program oluşturmak
için,değişkenlerin tiplerini önceden bildirmek faydalı bir
alışkanlıktır.Tip bildiriminde bulunulmazsa,değişkenlerin tipi
variant olarak atanır.Bu da gereksiz yer kaplamaya neden
olur.Değişkenlerin tipini bildirmede alternatif bir yol Dim
deyimini kullanmaktır.Dim x as integer gibi.
Dim a,b,c,d as double şeklindeki ifade,sedece
d'yi double olarak atayacak,a,b,c değişkenleri ise variant olarak
kalacaktır.
Dogru kullanım ise: Dim A As Double,B As
Double,C As Double,D As Double şeklinde olmalıdır.
c-)Zorunlu tip bildirimi
VB'de tip bildirimi zorunlu değildir.Fakat
yazılımcı isterse bunu zorunlu hale getirebilir.Bunun için şu
adımlar izlenmelidir.
Kod penceresi açılır.
General, declarations kısmı; seçilir.
Bu bölüme option explicit yazılır.

bunu yaptıktan sonra programınızı
yazarsanız,ve eğer degiskenleri tanımlamadıysanız,programı da
ohalde çalıştırdıysanız hata verecektir.

d-)Degişkenlerin geçerlilik bölgesi
Aksi belirtilmediği sürece vb'de tanımlanan
değişkenler sadece tanımlandıkları; prosedür (command1_click,text1_change...
bir prosedürdür)içinde geçerlidir.
Bazi değişkenleri prosedürler arası;
kullanmanız gerekebilir,prosedürler arası değer alıp, verme
ihtimaliniz olabilir.Böyle durumlarda modül düzeyinde değişkenlere
ihtiyaç vardır,bu tip değişkenleri ancak general, declarations
kısmında tanımlayarak elde edebiliriz.

e-)değişkenlerin static Ve dinamik
durumları
Aksi belirtilmediği sürece tanımladığıimiz
değişkenler dinamiktir;yani olay, prosedürün her
çalışmasında(mesela, her command1_click olduğunda)bir önceki işlem
sonundaki hesaplanmış değeri saklamazlar.Fakat değişkeninizi
tanımlarken Dim X As integer değil de Static X As integer olarak
tanımlarsanız her prosedür çalıştığındanda 1 önceki procedure
sonundaki hesaplanmış değeri saklar onun üstünden işlem yapar.
|