Günümüzde kullanılan C# diline göre çok gelişmemiş
olan bu dile o kadar ısınmıştık ki artık uygulamalara yetişemez olduk. C çok
eskiden çıkan bir dil fakat gelişimi ve insanların ona yetişmesi çok hızlı idi.
Sırasıyla C,C++,C# ben buna 3D diyorum yani 3 dev demekle yetiniyorum. C dili
bir çok dilin temeli veya üstünde bir dil. Hemen hemen her alanda kullanılmaktadır.
Mesela Javascript,ActionScript... En önemli olan uygulama alanı ise Windows ve
Linux gibi güçlü bir işletim sistemlerinin C de yazılmasıdır. C dilinin
uygulama alanları sadece saydıklarımla sınırlı değildir ama bu alanların
hepsini burda listelemem mümkün değildir.
.NET Framework, programcılara aşina olduğu kod dilini
kullanma özgürlüğü tanıyarak bir devrim gerçekleştirdi. Ve, belli belirtimlere
sadık kalındığı sürece, farklı dillerle yazılmış uygulamaların birbiriyle
etkileşebileceğinin de teminatını verdi.
Evet, .NET diller arası etkileşime olanak tanıyan, bir çok dile destek veren bir platform. Üçüncü parti derleyiciler yazılarak .NET için her an yeni bir dil daha yazılabilir. Ama herşeyden önce, .NET'in beraberinde sunduğu dillere bakmak gerekiyor. Bu diller temel olarak 4 tane: C++, Visual Basic .NET, C# ve J#.NET. Dikkat edilirse bu listede, "ben yeniyim" diye göz kırpan bir tanesi var : C#. Yazımızda, bu yeni dili tanımaya çalışacağız.
Evet, .NET diller arası etkileşime olanak tanıyan, bir çok dile destek veren bir platform. Üçüncü parti derleyiciler yazılarak .NET için her an yeni bir dil daha yazılabilir. Ama herşeyden önce, .NET'in beraberinde sunduğu dillere bakmak gerekiyor. Bu diller temel olarak 4 tane: C++, Visual Basic .NET, C# ve J#.NET. Dikkat edilirse bu listede, "ben yeniyim" diye göz kırpan bir tanesi var : C#. Yazımızda, bu yeni dili tanımaya çalışacağız.
C# (si şarp) herkesin dile getirmiş olduğu gibi C++ ve
Java ‘nın birleşmesiyle oluşmuştur. Henüz nasıl bir birleşme şekli olduğuna
dair tam bir fikrim yok ama C# mükemmel bir kütüphaneye sahip. Bu kütüphaneye
ufak bir göz aşinalığımız olacak ama ilerideki yazılarımızda diğer dillerden
büyük bir farkı olan esnek bir yapıya sahip olmasını inceleyeceğim. Nedir bu
esneklik? Yani Program yazarken "of be bu dilin de bu özelliği yokmuş"
dediğimiz anlar olmuştur. C ile de şüphesiz nesnel programlama yapabiliriz.
Fakat bunu yapabilmek oldukça zordur. C++ ise Nesne yönelimli programlamaya
imkan vermekten öte zaten bu paradigmaya göre tasarlanmıştır ve yapısındaki
araçlar sayesinde bunu kolaylaştırmıştır. İşte C- C++ arasındaki fark bu peki
C#'ın özelliği nedir?
Nesne yönelimli programlamanın günümüzde ne kadar yaygın
olduğunu programlama ile ilgilenen herkes bilmektedir. Nesne Yönelimli
Programlama (NYP) yaklaşımında temel olan prensiplerden birisi bilgi gizleme
(information hiding)'dir. Bu prensibi projelerimizde uygulamak için C#'in sunduğu
en önemli araçlardan biri olan sınıf özellikleri (class properties) konusunu
inceleyeceğiz.
Bildiğiniz gibi, C# dilinde tasarlanmış bir sınıfta
iki temel unsur bulunur. Birincisi sınıfın özellikleri (fields), ikinicisi ise
sınıfın metodlari (methods)'dır. Herhangi bir sınıfın özellikeri sınıfta
tutulan ilişikili verilerlerdir. Diğer taraftan sınıfın bizim için değişik işleri
yapmasını metodları vasıtasıyla sağlarız. Sınıf tasarımı çok önemli bir iş
olup; deneyim, konsantrasyon ve dikkat ister. Sınıfımızın özelliklerini tutan
veriler, program akışı sırasında sınıf dışında değiştirilebilir veya bu değerlere
ulaşmak istenilebilir.
Hiç yorum yok:
Yorum Gönder