4 Temmuz 2013 Perşembe

C# Programlama Rehberi - 3

Implementasyon(Uygulama-Gerçekleştirme)
34. Microsoft’un kod yazarken kullandığı konvensiyoneli takip edin: Bu kodlama tekniğini sadece Microsoft değil sektörde önde gelen bir çok kurum kullanıyor. Eğer inatla kendi kodlama tekniğinizi( nesne isimleri ve değişik alışkanlıklar) kullanırsanız; başka bir C# uzmanının büyük ihitmalle sizin kodlarınızı okumakta zorlanacağının farkında olun. Öte yandan, hangi kodlama konvensiyonunu seçerseniz seçin projenin tamamnında aynı konvensiyonu kullanmaya dikkat edin. Yoksa tutarlılık adına pek başarılı olamazsınız.
35. Kodlama stiliniz ne olursa olsun, proje takımınızda hatta kurumsal çapta standartlarınızı belirleyin ve kullanın: Bu şekilde bir standartlaşmaya giderseniz; herhangi bir arkadaşınızın yazdığı kodu başka bir arkadaşınızın anlaması ve düzeltmesi işi daha adil bir biçimde sağlanır. Standartlaşma ile birlikte, başkasının kodu üzerinde çalışan programcı aşina olduğu stilden dolayı kodu daha kolay anlayacak ve müdahale edebilecektir.
36. Standart Büyük küçük harf kullanım kurllarına uyunuz: Sınıfların, private olmayan metot ve özellikerin ilk harflerini büyük yazınız. Private alanların, özelliklerin ve nesnelerin ilk harflerini küçük yazınız. Tüm alan, özellik, değişken, nesne, metot,arayüz vs. İsimleri arasına alt çizgi koymayın ve ilk kelimeden sonra gelen kelimelerin ilk harfleri büyük olsun. Örnek olarak:
BuBirSınıfIsmi
buBirPrivateMetotVeyaAlanİsmi
37. static final ve temel veritiplerinden olan sabitlerinizin tamamını büyük harfle yazınız: Böylelikle onların derleme zamanı sabitleri oldukları anlaşılsın.
38. private değişkenleriniz için öyle süslü isimler kullanmayın: Genelde değişkenin ilk bir kaç harfi veritipini belirtir. Sonra araya bir alt çizgi en son olarak da değişken ismi kullanılır. Macar notasyonu ( Hungarian ) bu konuda en kötü örnektir. Bu tür bir notasyon kullanmak; kodunuzu kafa karıştırıcı, okunması zor ve bakımını karmaşıklaştırmaktak için çok uygundur! Onun yerine sınıflarınızın ve isim alanlarınızın (namespace) ilgili faaliyet alanını belirlemesine izin verin.
Çevirmenin Notu: Eğer Visual Studio.NET kullanıyorsanız ve kullandığınız/hazırladığınız sınıf kütüphanesi düzgün bir xml dökumantasyonu uygulamışsa böyle karmaşık notasyonlara gerek yoktur.
39. Genel amaçlı metotlar yazıyorsanız tüm standart sınıflarda bulunan bileşenlerini üstüne yazınız: Bunlar temel sınıf olan object’in ToString(), GetHasCode(), Equeals() metotlarıdır. Bu sayede bu metotların sınıfınıza has versiyonları olurki böyle bir alışkanlık endinmek çok zaman işinizi kolaylaştıracaktır.
Çevirmenin Notu: Bu metotların gövdeleri şu şekildedir:
• public override string ToString()
{
}
• public override bool Equals(object obj)
{
}
• public override int GetHashCode()
{
}
40. Bazen bir sınıfın protected üyelerine ulaşmak için onu türetmek ihtiyacı duyabilirsiniz: Bu tür durumlarda çok sayıda ana veri tiplerinin olduğu hissine kapılabiliriz. Eğer türetilen sınıftan ana sınıfa bir tür dönüşümüne ihtiyacımız yoksa, önce ana sınıfa protected erişime izin veren bir sınıf türetin. Sonra bu türeyen sınıfıda türetmek yerine; başka bir sınıf içinde üye değişken olarak kullanın.
41. Eğer iki sınıf arasında bir takım fonksiyonellikler açısından ortaklık(lar) varsa( mesela container ve iterator) birini diğerinin içinde gömün: Bu durum sınıflar arasında ortaklıkları ima ettiği gibi tek bir sınıf ismi (dıştaki sınıf) içinde iki sınıfın da paketlenmesine olanak tanır.
42. İki veya daha fazla sınıfın bir çok özellikleri bakımından ortak olduğunu farkederseiniz onları tamamını birbiri içinde sınıflar olarak yapmaya çalışın: Bu daha az kod yazmanızı ve daha çabuk kodun bakımını yapmanıza olanak tanıyacağı gibi kodunuzun daha uyumlu ve tutarlı olmasını yardımcı olacaktır.
43. Sınıflarınız olgunlaşmadan onları optimize etmenin derdine düşmeyin: Bu biraz da çılgınlık olarak algılanabilir. Öncelikle sistemi oluşturmaya çalışın. Sistemi tam anlamıyla olgunlaştırmadan önce performans peşinde saatlerinizi harcamanızın pek bir anlamı yoktur. Sizin temel amacınız sağlamasını yaptığınız tutarlı bir sistem oluşturmaktır. Eğer gerek olursa kodun üzerinde daha verimli olması için oynayabilirsiniz.
44. Sınıflar içindeki değişkenlerin faaliyet alanlarını olabildiğince kısa tutmaya çalışın: Bu şekilde bir strateji ile hareket etmeniz sizin yanlış yerlerde yanlış nesneleri kullanmanızın ihtimalini düşürmekle birlikte hata ayıklamanızı kolaylaştıracaktır. Mesela, sizin container şeklinde bir nesneniz var ve bunun elemanlarını tektek dolaşan bir takım kodlarınız var diyelim. Metodun ilerleyen kısımlarında yine benzer bir kod parçasına ihtiyaç duydunuz. Üsteki container nesnesini alıp alta direk olarak kullanmanız nesnelerin sınırlarının karışmasından dolayı hataya yolaçabilir.
45. .NET Sınıf kütüphanesinin container(arraylist, stack, queue vs.. ) nesnelerini kullanınız: Bunları kullanmak sizin verimliliğinize büyük katkılar sağlayacaktır.
46. Bir yazılımın sağlam olması için tüm bileşenlerinin sağlam olması gerekir: Kodunuzun tutarlı olması için C#’ın size sunduğu tüm olanakları, erişim kontrolleri, istisnai durum yönetimi, tip kontrolü vs. Kullanın. Ancak bu şekilde projelerinizde emin adımlarla ilerleyebilirsiniz.


Hiç yorum yok:

Yorum Gönder