Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
C# Programlama Rehberi - 3
#1
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:

[COLOR="DarkOrange"]BuBirSýnýfIsmi
buBirPrivateMetotVeyaAlanÝsmi[/COLOR]

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:
Code:
• 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.
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  C Programlama Diline Giri Serkan006 0 359 01.05.11, 01:08:42
Last Post: Serkan006
  C Programlama Dilinde lk Programmz Serkan006 0 346 01.05.11, 01:08:28
Last Post: Serkan006
  C Programlama Diline Giri Serkan006 0 368 01.05.11, 00:44:46
Last Post: Serkan006
  C# Programlama Rehberi - 1 TazZ 3 678 19.02.11, 17:16:06
Last Post: TazZ
  C# Programlama Rehberi - 2 TazZ 1 458 19.02.11, 03:48:23
Last Post: TazZ



Users browsing this thread: 1 Guest(s)