Program kelime olarak belirli şartlara ve düzene göre yapılması öngörülen işlemlerin bütünü anlamına gelir. Program terimi ise bilgisayara ya da elektronik devre ve mekanik sistemlerden oluşan düzeneklere bir işlemi yaptırmak için yazılan komutlar dizisinin bütünü veya bir kısmı olarak tanımlanır.
Programları bilgisayara komutlar halinde girmek için programlama dilleri kullanılır. Programlama dili, programcının bir bilgisayara ne yapmasını istediğini anlatmasının standartlaştırılmış bir yoludur.dilleridir.
Programcılıkta Temel Kavramlar
Programlama dili, programcının gerekli komutları bilgisayara vermesini sağlayan ve programların yazılmasında kullanılan bir notasyondur. Bilgisayarlar dijital sistemler olduklarından 0 ve 1 ler ile gösterilen ikili (binary) kodlar ile çalışır ve bu kodlara makine dili adı verilir. 0 ve 1 lerin her birine bit denir. Dijital elektronikte de 0 gerilim/akım yok, 1 ise gerilim/akım var anlamına gelir.
Programcıların kodları makine dili ile yazması zor olacağından üst ve orta seviyeli programlama dilleri kullanılır yazılan programlar derleyici ve / veya yorumlayıcı ile makine diline dönüştürülerek çalışır hale getirilir.
Kaynak Program ve Amaç Program
Programcının bir programlama dili ile yazmış olduğu programlara kaynak program (source program) denir. Kaynak programların uzantıları yazıldıkları programlama diline göre değişir. Örneğin; C dilinde yazıldıysa .c, Assembly dilinde yazıldıysa .asm şeklinde olur.
Kaynak program derlenerek makine diline dönüştürülür ve çalıştırılmaya hazır hale getilir. Kaynak programın derlenmesi ile elde edilen makine diline dönüştürülmüş programa amaç program (object program) denir.
Derleyici (Compiler) ve Yorumlayıcı (Interpreter)
Programa dili ile yazılan kaynak programları makine dili ile yazılan amaç programlara çevirmek için derleyiciler kullanılır. Derleyiciler kaynak programları üç adımda amaç programa dönüştürürler.
Bu adımlardan ilki sözel analizdir. Bu adımda kaynak kodu oluşturan kelimeler incelenerek, bunların makine dilinde karşılıkları olup olmadığı kontrol edilir. İkinci adım olan gramer analizinde kaynak kodun yazıldığı programlama dilinin kendi gramer kuralları içinde doğru yazılıp yazılmadığını kontrol eder. Son olarak kod üretimi adımında kaynak programdaki komutlara karşılık gelen makine dili komutları üretilir. Tüm bu adımlar sonunda kaynak program amaça programa çevrilmiş olur.
Fortran, C, C++, C#, Pascal, Delphi, Pic Basic Pro gibi diller derleyici kullanırlar.
PHP, Perl, Lisp gibi diller yorumlayıcı kullanırlar. Yorumlayıcılar program kodlarının başından sonuna kadar her bir satırda belirtilmiş komut ve işlemleri inceleyerek kaynak programın hatalarının düzeltilmesine ve çalıştırılmasına imkan verir. Eğer herhangi bir satırın çalıştırılmasında veya çevrilmesinde bir hata bulunursa çalışmayı durdurur ve hatalı satırı programcıya bildirir.
Yorumlayıcılar kodun okunması ve çevrilmesini programı çalıştırırken yaptığı için hızları düşüktür. Kaynak program satır satır kontrol edilip çalıştırıldığı için yorumlayıcı sadece karşılaştığı ilk hatayı rapor edebilir. Ancak bu hata düzeltildikten sonra bir sonraki hataya kadar ilerleyebilir. Diğer yandan derleyici kaynak programdaki tüm hataları bulabilir, ama hata ayıklama işlemi yorumlayıcılarda daha kolaydır. Özetle, derleyici kaynak programı bir defa çevirir, yorumlayıcı ise programın bir satırında hata varsa çalışırken hatalı satıra gelice durur ve hata mesajı verir. Hata düzeltildikten sonra yeniden ilk satırından başlayarak kodu çevirir.
Son yıllarda derleyici ve yorumlayıcıların üstün yanlarını birleştiren Java ve Python gibi karma diller öne çıkmaktadır.
Program Yazma Aşamaları
Yazılacak olan programın büyüklüğüne göre aşamalar farklılık gösterebilse de temelde basit olarak aynıdır. Program geliştirmenin ilk aşaması problemin belirlenmesidir. Daha sonra belirlenen problem analiz edilerek en uygun çözüm yöntemleri aranır. Programcılıkta en uygun çözüm yolu en az komutla en kısa sürede en doğru ve en hassas çözümü getiren yoldur.
Çözüme karar verildikten sonra programın algoritması ve akış diyagramı hazırlanır. Sonraki aşamada algoritma ve akış diyagramı, programcının tercih ettiği programlama dili ile kodlanır. Program kodlandığı editörde çalıştırılarak yazım hataları düzeltilir ve test edilir.
* Bu makale Robotiksistem tarafından hazırlanmıştır. Robotiksistem.com kaynak gösterilmek kaydıyla kullanılabilir.