- Optimizasyon -
  - Ana Sayfa
  - Rastgele İpucu
  - Genel Optimizasyon
  - String Optimizasyonu

- Makale -
  - XP Stili Görünümü
  - Package&Deployment     Wizard Sorunları
  - InnoSetup ile Kurulum     Paketi Hazırlama


- Ayın İpucu -
Kontrollere veri gönderirken, onları gizleyin. Örneğin, bir listbox'ta 1000 tane string göstermek istiyorsunuz. Önce, 'Visible' özelliğini 'false' yapın, stringleri ekleyin, ve tekrar 'true' yaparak görünür hale getirin. Böylece listbox'ın her eklemede kendini yenilemesine gerek kalmayacak ve daha hızlı işlem yapacaktır. İşlem bittikten sonra kendisini bir kere yenilemesi yeterli olacaktır.
Visual Basic Optimizasyonu

Ana Sayfa > String Optimizasyonu > Bölüm 3

Bölüm 1 > Bölüm 2 > Bölüm 4

Variant değişkeni kullanmayın

Aslında basit olmasına rağmen genellikle ihmal edilir. Her değişken, parametre ya da fonksiyonun veri tipi tanımlanmalıdır. Eğer işlenecek veri metin biçiminde ise, veri tipi string olarak tanımlanmalıdır. Türünü belirtmediğiniz takdirde, varsayılan olarak variant türü seçilir. Variant türü kendi kullanım alanına sahiptir ancak böyle değil. Variant türü değişken genellikle performans kaybı demektir.

Bu yüzden programlarınıza Option Explicit cümlesini ekleyin ve tüm değişkenleri Dim ifadesi ile tanımlayın. Fonksiyonlarınızı da gözden geçirin ve uygun tipi vermeye özen gösterin.

Dolar işaretliler daha hızlı

Aşağıdaki fonksiyonlar string değişkenler için kullanıldıklarında yavaş çalışırlar.

Left(), Mid(), Right(), Chr(), ChrW()
UCase(), LCase(), LTrim(), RTrim(), Trim(),
Space(), String(), Format(), Hex(), Oct(),
Str(), Error


Bunlar variant tipi fonksiyonlarıdır. Variant değer alırlar ve variant değer döndürürler. Veritabanı programlama işiyle uğraşıyorsanız bu fonksiyonlar işe yarayabilir (değer Null olabilir).

Peki sorun nerede? Bu fonksiyonlar hantaldır. String değişkenler ile uğraşıyorsanız yukarıdakileri unutun ve aşağıdaki şeklini kullanın.

Left$(), Mid$(), Right$(), Chr$(), ChrW$()
UCase$(), LCase$(), LTrim$(), RTrim$(), Trim$(),
Space$(), String$(), Format$(), Hex$(), Oct$(),
Str$(), Error$

AscW ve ChrW$ kulanın

VB Unicode karakter kodlamasını kullanır. Unicode da her string, karakter başına 2 byte harcar.
Eğer Unicode karakter kodlamasına ihtiyaç duymayacak bir program yazıyorsanız bu ipucu işinize yarayabilir. Şu fonksiyonlara bir bakalım:

Asc(), Chr$()

Sorun ne? Tabi ki bunlar daha yavaş işlem yaparlar. Eğer hız konusunu önemsiyorsanız bir de bunları deneyin:

AscW(), ChrW$()

Aslında bu fonksiyonlar birbirinden farklıdır ve farklı değer döndürürler. Ancak ASCII/Ansi (0-127) kodlamasını kullandığınızda birbirine eşit olduklarını göreceksiniz.

Bölüm 2 > Bölüm 3 > Bölüm 4
 

Faydalı Linkler
 > vbnet.mvps.org
 > msdn.microsoft.com
 > vbasicmaster.com
 > www.freevbcode.com
 > planet-source-code.com
 > www.vbturk.net
 > www.mutasyon.net
 
Visual Basic Optimizasyonu Sitesi en iyi 800x600 çözünürlükte görüntülenebilmekte
ve tüm browser'larda sorunsuz çalışmaktadır.