Merhabalar arkadaşlar. Bir süredir düşünüyordum, blogda ders anlatmayı. Ancak, projelerimden dolayı erteleyip duruyordum. Öncelikle biraz kendimi tanıtayım. İzmir Ekonomi Üniversitesi, Yazılım mühendisliği öğrencisiyim. Tarımsal yazılımlar, gömülü sistemler ve robotik üzerine uğraşmaktayım. Bilgisayar ile 1999 yılında tanıştım ve 2002 yılından beride programlama tanışıyorum. Hemen vakit kaybetmeden neden C dili ile başlıyoruz sorusuna cevap vermeyim .
Arkadaşlar forumlarda, bilhassa bizim forumumuz da Java ve C# programlama dilinin daha güncel bir dil olduğunu ve onunla başlanmasını şeklinde öneriler vardır. Arkadaşların düşünceleri doğrudur ama hiç bilmeyen biri için bir çok şey anlamsız gelecektir. Bunun sebebi ise %100 object oriented (Nesneye dayalı) programlama dili olmasıdır. Kısaca nedir object oriented ? Aynı özellikleri taşıyan verileri bir araya toplanır ve istenilen bilgi çağrılır. C gibi yordamsal dillerde ise her şey bir aradadır. Öğrenilmesi kolaydır. Daha sonra C++ dili ile object oriented'e geçilmiştir. C++ object oriented'in en geniş dil ailesidir. Bu sebeplerden dolayı C ile başlamayı öneriyorum.
C dili derlemeli bir dildir. Peki derleme(Complier) nedir ? Yıllardır duymuşunuzdur, makina dilini ve halk arasında bilgisayarlar 1 ve 0 çalışır diye bir söz vardır. Bu söz çok doğrudur. Biz klavyeden 'A,B,C' ne yazarsak yazılım, Merkezi işlem birimi (CPU) anlamaz. Onun anladığı tek dil makine dilidir, yani 1 ve 0'lardır. Bu yüzden bizim yazdıklarımızı derleyip makine diline çevirmeliyiz. Peki C programlama dili nasıl complier (derelme) edilir ? Önce bizim yazdığımız komutları Lexical anylazer (Sözel analizci )'den geçer. Bu aşamada, sizin kodlarınızı ne olduğunu çözümler, 2. aşama ise Syntax anylazer , burada komutlarımız doğru yazılıp yazılmadığını anlar. 3. aşama Sementic analyzer burada yazdığımız kodlar anlam kazanır. Sonra olarak code generator ile yeni kodlar oluşturularak object dosyasına, bu dosyada daha sonra compiler edilerek, makina diline dönüşür.
Şimdi DevC++ programı ile Mingw/GCC compileri ile indirerek ilk programımıza başlıyalım. The Dev-C++ Resource Site adresinden indirebilirsiniz. Programı kurduktan sonra,
File ->New->SourceFile yada Control + N diyerek kodlama sayfamızı açıyoruz. .C uzuantılı olarak kaydediyoruz. Mesela byanigli.c , ilkprogramım.c gibi. Hadi şimdi ilk programımızı yazalım.
İlk olarak bir kütüphane eklemeliyiz. Kütüphane nedir ? Bizim program içinde yazacağımız kodları tutan bir sayfadır. Şöyle düşünün, bir tez yazacaksınız ve elinizde bir konu var, Doğal olarak hemen bir kütüphaneye gidip, kütüphanenin veri tabanından konunuz ile ilgili kitapları ararsınız ve ilgili kitaptan gerekli bilgileri toplarsınız. C'de de iş böyledir. Siz bir komut yazdınız ve compiler etmeye başladığınızda, compiler direk kütüphaneyi inceler ve kodun ne olduğunu çözer. Biz de C programlama dilinin standart giriş çıkış kütüphanesini kullanacağız. İlk satıra aşağıdaki komutu yazmalıyız ki , program kütüphanesini dahil edelim.
İnclude Türkçede dahil etmek anlamını taşır. Şimdi sırada tüm kodlarımızın çalışacağı bir main fonksiyonuna ihtiyacımız vardır.Bu fonksiyon bizim programımızın gövdesidir. Aslında aşağıdaki kod anlamsız gelse de hepsinin bir anlamı vardır. şimdilik bir kalıp olarak ezberleyin, fonksiyonlar dersine geldiğimizde detaylı olarak açıklanacaktır. Main fonksiyonu
Şimdi programımızın gövdesini oluşturduk ve ilk olarak ekrana merhaba technopat yazdıralım. Bunun içim printf komutunu kullanmamız gereklidir. printf komutu içine ne yazılırsa yazılsın ekrana basan bir komuttur. Syntaxı inceliyelim.
Burada dikkat edilecek nokta, bakın verilen mesaj (") çift tırnağın içinde. Birde C her komut sonuna ( noktalı virgül konulur. eğer koymazsak compiler komutun bitiğini ve bir alt satıra geçecegini anlayamaz.
Full program
Nasil compiler edeceğiz?
Ardinda run yada F9 basarak programı çalıştırabilirsiniz. Bir sonraki derste görüşmek üzere[/Code]
Dipnot : Eğer üniversite bir gün sizlerle karşılaşırsam ve sınavda getcharları yazarsanız 5şer puandan 10 puan sınav kağıdınızdan kırardım. Sebebi ise gereksizdir. Silip deneyin. Ancak onları yazmasaydık siyah ekran açılıp merhaba technopat yazıp kapanacaktı.
Arkadaşlar forumlarda, bilhassa bizim forumumuz da Java ve C# programlama dilinin daha güncel bir dil olduğunu ve onunla başlanmasını şeklinde öneriler vardır. Arkadaşların düşünceleri doğrudur ama hiç bilmeyen biri için bir çok şey anlamsız gelecektir. Bunun sebebi ise %100 object oriented (Nesneye dayalı) programlama dili olmasıdır. Kısaca nedir object oriented ? Aynı özellikleri taşıyan verileri bir araya toplanır ve istenilen bilgi çağrılır. C gibi yordamsal dillerde ise her şey bir aradadır. Öğrenilmesi kolaydır. Daha sonra C++ dili ile object oriented'e geçilmiştir. C++ object oriented'in en geniş dil ailesidir. Bu sebeplerden dolayı C ile başlamayı öneriyorum.
C dili derlemeli bir dildir. Peki derleme(Complier) nedir ? Yıllardır duymuşunuzdur, makina dilini ve halk arasında bilgisayarlar 1 ve 0 çalışır diye bir söz vardır. Bu söz çok doğrudur. Biz klavyeden 'A,B,C' ne yazarsak yazılım, Merkezi işlem birimi (CPU) anlamaz. Onun anladığı tek dil makine dilidir, yani 1 ve 0'lardır. Bu yüzden bizim yazdıklarımızı derleyip makine diline çevirmeliyiz. Peki C programlama dili nasıl complier (derelme) edilir ? Önce bizim yazdığımız komutları Lexical anylazer (Sözel analizci )'den geçer. Bu aşamada, sizin kodlarınızı ne olduğunu çözümler, 2. aşama ise Syntax anylazer , burada komutlarımız doğru yazılıp yazılmadığını anlar. 3. aşama Sementic analyzer burada yazdığımız kodlar anlam kazanır. Sonra olarak code generator ile yeni kodlar oluşturularak object dosyasına, bu dosyada daha sonra compiler edilerek, makina diline dönüşür.
Şimdi DevC++ programı ile Mingw/GCC compileri ile indirerek ilk programımıza başlıyalım. The Dev-C++ Resource Site adresinden indirebilirsiniz. Programı kurduktan sonra,
File ->New->SourceFile yada Control + N diyerek kodlama sayfamızı açıyoruz. .C uzuantılı olarak kaydediyoruz. Mesela byanigli.c , ilkprogramım.c gibi. Hadi şimdi ilk programımızı yazalım.
İlk olarak bir kütüphane eklemeliyiz. Kütüphane nedir ? Bizim program içinde yazacağımız kodları tutan bir sayfadır. Şöyle düşünün, bir tez yazacaksınız ve elinizde bir konu var, Doğal olarak hemen bir kütüphaneye gidip, kütüphanenin veri tabanından konunuz ile ilgili kitapları ararsınız ve ilgili kitaptan gerekli bilgileri toplarsınız. C'de de iş böyledir. Siz bir komut yazdınız ve compiler etmeye başladığınızda, compiler direk kütüphaneyi inceler ve kodun ne olduğunu çözer. Biz de C programlama dilinin standart giriş çıkış kütüphanesini kullanacağız. İlk satıra aşağıdaki komutu yazmalıyız ki , program kütüphanesini dahil edelim.
Kod:
#include <stdio.h>
İnclude Türkçede dahil etmek anlamını taşır. Şimdi sırada tüm kodlarımızın çalışacağı bir main fonksiyonuna ihtiyacımız vardır.Bu fonksiyon bizim programımızın gövdesidir. Aslında aşağıdaki kod anlamsız gelse de hepsinin bir anlamı vardır. şimdilik bir kalıp olarak ezberleyin, fonksiyonlar dersine geldiğimizde detaylı olarak açıklanacaktır. Main fonksiyonu
Kod:
int main ()
{
getchar();
getchar();
return 0;
}
Şimdi programımızın gövdesini oluşturduk ve ilk olarak ekrana merhaba technopat yazdıralım. Bunun içim printf komutunu kullanmamız gereklidir. printf komutu içine ne yazılırsa yazılsın ekrana basan bir komuttur. Syntaxı inceliyelim.
Kod:
printf("Merhaba Technopat");
Full program
Kod:
#include <stdio.h>
int main()
{
printf("Merhaba Technopat");
getchar();
getchar();
return 0;
}
Nasil compiler edeceğiz?
Ardinda run yada F9 basarak programı çalıştırabilirsiniz. Bir sonraki derste görüşmek üzere[/Code]
Dipnot : Eğer üniversite bir gün sizlerle karşılaşırsam ve sınavda getcharları yazarsanız 5şer puandan 10 puan sınav kağıdınızdan kırardım. Sebebi ise gereksizdir. Silip deneyin. Ancak onları yazmasaydık siyah ekran açılıp merhaba technopat yazıp kapanacaktı.