25 Aralık 2011 Pazar

Neden 'C' ?

Size bu yazımda C'yi, C'nin güzel yanlarını ve C ile programlamaya girişten biraz bahsedeceğim.
C temelde iki dile dayanır. Bunlar 'B' ve 'BCPL'. Bu iki dilde de her veri (bir kelime) bellekte 16 bit kaplamaktaydı. Bu da programcılara değişkenlerin kullanımında büyük bir zorluk doğruyordu. 'C' ilk olarak 1972 yılında Bell laboratuvarlarında 'Dennis Ritchie' adlı bir programcı tarafından geliştirilmiştir. Bu oluşturduğu dil olan C'nin ataları 'B' ve 'BCPL'in önemli olan birçok kavramlarını, kelime dizimini(syntax) ve daha birçok güçlü özelliklerini kendinde bulundurmuştur. 
İlk başlarda bu dil pek rağbet görmezken sonradan çığır açacak olan 'UNİX' tabanlı işletim sistemlerin geliştirilmesinde kullanılarak büyük bir ün kazanmıştır. Daha sonraları C'nin farklı donanım platformlarında yayılmasından dolayı birbirine benzer fakat genellikle uyumsuz olan birçok çeşidinin meydana gelmesine neden olmuştur. Bu gibi birtakım sebepten dolayı C'nin standart bir versiyonuna acil ihtiyaç olduğunun hükmüne varılmıştır. Sonuç olarak ise Amerika'da oluşturulan bir komite tarafından C'nin bağımsız bir tanımı yapılmıştır ve günümüzde de halen bu tanım kullanılmaktadır.


   Neden 'C' ?

**Orta seviyeli bir dildir. Yazılmış C kodu ile makine kodu arasındaki bağlantı bazı öbür dillerin aksine rahatlıkla kurulabilir.
**Sistem programlama dilidir. Bugün kullanılan işletim sistemleri, çoğu derleyiciler ve kullandığımız çoğu program C ile yazılmıştır.
**Algoritmik bir dil diyebiliriz yani sadece bu dilin kelime dizimini (syntax) bilerek ve nasıl kullanıldığını aşağı yukarı bilmekle olmaz. Dolayısıyla programcının iyi bir algoritmik zekaya sahip olması ona bir avantaj sağlar.
**Önceden bahsettiğim gibi C diğer diller arasında taşınabilirliği en yüksek olan dildir. (Taşınabilirlik, aynı programın farklı donanımlarda ve farklı işletim sistemlerinde işletilebilirliğini ifade eder.)
**İfade gücü yüksek ve okunabilirliği (readability) yüksek olan bir dildir.
**Güçlü bir dil olduğunu ifade edebiliriz. C'ye özgü olan bir çok ifadeyi öbür dillerin çoğu kendine yararlı bulduğu için almıştır. Bunun sayesinde C'yi bilen bir programlamacının öbür dilleri öğrenmesi olduğundan daha kısa sürenin sürdüğünü söyleyebilirim.  
**C esnek bir özelliğe sahiptir. Bundan dolayı bir C programcısının hataya yer vermemesini sağlayacak bir önbilgiye sahip olması gerekir.
***C ile yapılan programlar bulunduğu seviyesi dolayısıyla daha hızlı çalışır. Örnek vermek gerekirse C ile yazılan bir programı ActionScript ile yazılan bir programla karşılaştırmak gerekirse,  C ile yazılan programın kat kat hızlı olduğunu rahatlıkla görebiliriz.
**C öğrenmesi zor olan diller arasında yer alır. C'yi öğrenmek öbür dillere göre daha fazla çaba gerektirir.
**C Programlama dili verimli, basit, fakat güçlü yapısından ve bu dilde geliştirilen uygulamaların taşınabilir olmasından dolayı yaygın olarak kullanılmaktadır.

C ile Programlamaya Giriş !!

Bir C programının iki temel bölümleri şunlardır:
1 -) Önişlemci Direktifleri (Preprocessor Directives)
2 -) Ana Fonksiyon (Main Function)

Önişlemci Direktifleri :
**Önişlemci direktifleri her zaman # işareti ile başlar  ve program derlenmeden önce C önişlemcisi tarafından işletilir.
**Her bir önişlemci direktifinin farklı bir görevi vardır. Mesela #define'nin görevi herhangi sembolik sabitleri ve makroları (işlemleri sembol olarak tanımlar) oluşturmak iken #include'un görevi herhangi bir başlık dosyası (header (.h) ) adı verilen dosyaları programda kullanacağını belirtir yada öbür bir değişle program içerisinde kullanılan fonksiyonlar için gerekli kodları programa dahil etmek için kullanılır diyebiliriz.

Ana Fonksiyon :
**Main() bütün C programlarında bulunması gereken programın ana fonksiyonu yani gövdesidir. Bu ilk çalıştırılacak fonksiyon demektir.

Şimdi size basit bir C programını gösterelim.


  1. #include <stdio.h> // Başlık Dosyası ve Önişlemci Direktifi
  2. int main() // Ana Fonksiyon
  3. {
  4. printf("http://sadece-kod.blogspot.com/ bloguna hoş geldiniz"); //Bu satırı göstermeye yarar.
  5. return 0; //Ana fonksiyonun sonlandırılması
  6. }

Hiç yorum yok:

Yorum Gönder