11.12.2009

C Diline Kısa Bir Başlangıç


Bilgisayar, diğer bütün teknolojik aletler gibi hayatımızı kolaylaştıran bir aygıttır. İçinde bin türlü şeyler var anlatsam roman olur. Herkesin bildiği gibi iki temel unsurdan oluşur kendileri. Yazılım ve donanım. Donanıma, bilgisayarın dışından görülebilen kısmıdır dersek yanlış olmaz. Ama sadece donanım yeterli değil elbette bilgisayarın çalışması için. Donanıma eklenmiş ya da başka bir tabir ile gömülmüş yazılımlar olmadan bilgisayar çalışmaz. Yazılım dediğimiz merete de bilgisayarın donanım dediğimiz parçaları arasındaki kordinasyonu sağlayan şeylerdir denilebilir.

Bilgisayar,kabaca söylemek gerekirse verilen bilgiyi alan, işleyen ve sonucu da bize gösteren bir aygıttır. Hiçbir bilgisayar (başta donanım olmadan tabi) yazılımsız çalışmaz. Normal bir kullanıcı için yazılım pek bir şey ifade etmez; ama biz programcılar için çok şeydir. İşte C dilini de bunun için öğrenmemiz gerekli. Sadece C yeterli değil; fakat başlangıç olarak güzel olur diye düşünüyorum.



Bilgisayar sadece makine dilinden anlar daha doğrusu anladığı tek dil makine dilidir. Bu 16'lık sistemden oluşan bir programlama tipidir. Makine dilini anlamak çok zordur ve bunu anlamak için bilgisayarın donanım özelliklerini mutlaka bilmemiz gereklidir. Buna güzel bir örnek vermemiz gerekirse C de ekrana yazmamızı sağlayan "printf();" gibi çok basit bir fonksiyon, makine dilinde 1A BB 0D D5 FF C2... gibi çok daha karmaşık ve hiçbir anlam ifade etmeyen haldedir. Haliyle bunu anlamak ve işleme sokmak çok zor ve zahmetli bir iştir. Programlama dilleri bu işi kolaylaştırmak için vardır dersek sanırım yanlış olmaz. Bu arada unutmadan makine dili programlama dilleri arasında en alt seviyedir. Bu işin zorluğunu bilen insanlar bunu biraz olsun kolaylaştırmak için Assembler Dili 'ni yazmışlardır. Assembler dili, makine dillerine göre nispeten daha kolay olsa da karmaşıklığı yüzünden daha pratik ve kolay bir dil bulma arayışına son verememiştir.

Gel zaman git zaman çeşitli dil denemelerinden sonra C dilini icat etmişler. C, işlerimizi ve dolayısıyla hayatımızı çok daha kolaylaştırmaktadır. C, orta seviye bir programlama dilidir. Bunun anlamı hem yazması kolay hem de üst seviye dillere göre daha çok erişim hakkımızın olduğudur. Üst seviye diller ise BASIC, PASCAL vs. gibi dillerdir. Üst seviye dillerde, yazması göreceli olarak daha kolay olsada C ile yapılabilecekler daha çoktur.

Program yazmadan önce algoritma kavramını iyi bilmek gerekir. Algoritma, yine kaba bir tabir ile yapacağımız işleri belirli bir düzen içinde ve doğru bir biçimde yapmamız için oluşturduğumuz plandır denilebilir. Algoritmaya da kolay ve anlaşılır bir örnek vermek gerekir ise bir büfenin yanına gittiniz ve sigara alacaksınız diyelim , adımları yazalım.

1) Adamdan bir paket sigara istersiniz.
2) Adam arkasını dönüp pakete uzanır.
3) Paketi alır.
4) Size uzatır.
5) Siz cebinizden para çıkarırsınız.
6) Adama uzatırsınız.
7) Adam para üstünü size uzatır.
8) Parayı cebinize koyarsınız.
9) Arkanızı dönüp gidersiniz.

Her programlama dili için bu geçerlidir aslında. İşte C de ya da başka bir dilde program yazarken algoritma yazmak işimizi müspet ölçüde kolaylaştırır. Giriş için bu kadar yeter sanırım, ileride C'nin daha da içine girme ümidiyle..

2 yorum:

  1. Algoritma'nın büfe'den sigara alma örneğiyle anlatıldığına şlk efa şahit oldum :) Değişik ve ilgi çekici olmuş.

    YanıtlaSil
  2. Evet sıradan örnek vermemek için daha değişik bir yol çizmek istedim algoritma örneğinde. Amacım biraz ilgi çekmekti daha kalıcı olduğunu düşünerek yazdım aslında..
    Umarım daha kalıcı olmuştur:):):)
    Bir daha unutulmaz..

    YanıtlaSil