17
2009
Değişlik Programcılık Teknikleri, Püf Noktaları
Buyazıda çok işinize yarayacağını sandığım bazı programcılık tekniklerinden söz edeceğim. Fırsat buldukça bu püf noktalarına yenilerini ekleyeceğim. Tabi bu tekniklere ve püf noktalarına destek vermek isteyen olursa seviniriz. Her ne kadar konunun başlığı Programcılık Teknikleri, Püf Noktaları olsa bile bu yazıyı Programcılık Kara Mizahına örnek olsun diye kaleme aldım.
Sınıfları Temizlemek, Belleği Pirüpak Yapmak
Bu püf noktasını bir süre önce bir kitapta gördüm. Bu süper püf noktasının anlatıldığı kitabı alma imkanını bulamamış olanlar bu teknikten mahrum kalmasın diye tekniği özetleyip sizinle paylaşacağım. Püf noktamızın konusu sınıfları temizlemek ama yani sınıfları bellekten temizlemek.
Şimdi bazılarınız diyecekler ki, bizim bildiğimiz nesneler bellekten temizlenirdi şimdi bellekten bir de sınıfları mı temizleyeceğiz? Sınıflarınız kirli ise bunları bellekten mutlaka temizlemeniz gerek. Yoksa bellek berbat olur. Bu işlem için yani sınıf temizleme işlemini GC sınıfının SuppressFinalize() metodu ile aşağıdaki gibi yapabilirsiniz.
System.GC.SuppressFinalize(this); // Bu sınıfı ter temiz yap
Sınıfınızda böyle bir satırı içeren bir metot hazırlayıp kullanabilirsiniz. Sınıfınızda böyle bir metot hazırlayıp kullanmış olmanıza rağmen sınıf bir türlü bellekten temizlenmiyorsa bilgisayarınızı kapatıp tekrar açıp temizleyip bu metodu ikinci kez kullanmanız önerilir(!).Çünkü bazı sınıflar bellekten hemen temizlenmiyorlar.
class kirli_sinif
{
public void sinifi_cilala()
{
System.GC.SuppressFinalize(this); // Bu sınıfı bellekten uçur
}
}
Programın ileri aşamalarında bu sınıfın örneğinı alıp bu metodu işletirseniz bellek temizleme dertlerinizden kurtulursunuz. Ben bu tekniği bulan mesleğinin zirvesindeki bilim adamlarının, yazarların yalancısıyım. Sorumluluk kabul edilmez ama hararetle tavsiye edilir.
Button Nesnelerinin Text Özelliği
Varsayalım ki C# veya başka bir programlama diliyle bir uygulama geliştirdiniz. Doğal olarak formlarda Button nesnelerine yer verdiniz. Button nesnelerinin etiketlerini yani başlık metinlerini yani Text özelliğine dikkat etmelisiniz. Çünkü Button nesnelerine uygun veya motive edici başlık metni seçmezseniz Button nesnelerinin Click olayıyla ilişkilendirdiğiniz metotlar verimli bir şekilde çalışmıyorlar. Örneğin Button nesnesine “Aktar” gibi bir başlık metni yerine “Gözünü Seveyim Güzel Aktar” gibi bir başlık metni seçmeniz halinde programınız hatasız ve daha hızlı çalışacaktır. Madem Button nesnelerinin başlık metinleri bu kadar önemlidir dikkatli olup başka programcılara ait başlık metinlerini kullanmamak gerekmektedir. Rivayetlere göre bu püf noktasını bir öğretim üyesi bulmuş ve Hacettepe mezunu bir bilgisayar mühendisi geliştirmiştir.
Procedure Kullan Gerisini Merak Etme Sen
Programcılar yazdıkları programı överken bazen kullandıkları veritabanın sağlam olduğunu söylerler. Örneğin Access veritabanı SQL Server kadar sağlam ve güvenli değildir. Programlarını pazarlamaya çalışanlara bir önerim var: C# ile geliştirdiğiniz projelerde mümkün mertebe fonksiyon yerine Procedure kullanın. Madem Procedureler daha gelişmiş bir yapıya sahiptir Procedure kullanarak programınızın gücüne güç katabilirsiniz. Ama hocam C#’ta Procedure’ler yok gibi itirazları kabul etmem. Programlarınızı kalitesini artırmak istiyorsanız Procedure kullanmalısın. Sonra program paketinin üzerine “bu programda fonksiyon yerine procedure kullanılmıştır” diye yazmayı unutmayınız.
Dizi Değişken Tanımlama Tekniğinizi Değiştirin
Programcılıkta güncelin uzağında kalmış bazı programcılar C# gibi görece yeni bir programlama dilini kullansalar bile bütün uyarılara rağmen bildiklerini okuyorlar ve dizi değişkenleri aşağıdaki gibi tanımlıyorlar:
private void senin_degil_benim_buton_Click(object sender, EventArgs e)
{
int[] dizini_dovmeyen_dizi = new int[4];
}
Ne yapıyor programcımız burada? Eski ve modası geçmiş usulde 4 elemanlı integer tipinde bir dizi değişken tanımlıyor. Hal bu ki bu dizi değişkeni aşağıdaki gibi tanımlasa programının değeri en az 2 kat artacak ve başı göklere, yani zirvelere erecek. Benden uyarması; akıllı programcılar dizi değişkenkeri aşağıdaki gibi tanımlıyorlar. Bu arada kodunuza using System.Collections; yazmayı unutmayın.
ArrayList dizini_doven_dizici = new ArrayList()
Tabi tanımladığınız dizi değişkenlere ad seçerken bir nebze yaratıcı olun. Başkasına ait değişken adlarını kullanmanın alemi yoktur. Programcıların biraz roman biraz şiir okumaları yani edebiyatla aralarını düzeltmeleri gerekir. Yoksa her program her kaynakta rastlanan değişken adlarına mahkum olurlar ki bu hoş bir durum değildir. Baktıklar ki olmuyorm kendilerine birer “değişken adı bulma uzmanı” bulsunlar. Çünkü değişken adları güzel seçilen programlara yüksek fiyata alıcı bulmak zor değildir.
Benzer Püf Noktaları
Yorumunu Bırak !
Facebook Hayran Sayfamız
En Çok Okunan Yazılar
- Tırnak Bakımının Püf Noktaları Nelerdir ? (58727)
- Google'ın Püf Noktaları (48215)
- Halı Temizliğinde Püf Noktalar: (38119)
- Smf Güvenlik için Püf noktalar.. (32990)
- Pc Soğutma'nın Püf Noktası (26266)
- Tantuni Lavaşı Nasıl Yapılır (25939)
- Ervamatin Nedir ? (25145)
- En Çok Radyasyon Yayan Telefonlar..! (25144)
- Kek Yapmanın Püf Noktaları! (24058)
- Tantuni Nedir Nasıl Yapılır (22340)

Yazar:





