19 Ağustos 2013 Pazartesi

Kaynak Kodu ve Makina Konu

Problemin çözümü için uygun algoritma kurulduktan sonraki aşama, programın kaynak kodunun yazılmasıdır. Kaynak kodunun yazılması, program geliştirme sürecinin en edebi (literary) kısmıdır. Gerek program akışı, gerekse algoritma, çok detaylı olsalar bile, üsluba ilişkin tercihler olmaktan öteye gidemezler. Bir programın sadece istenen "görevi"; yapması yeterli değildir. Aynı zamanda, o programın kolayca okunabilir nitelikte de olması gerekir. Zira, bir programın hatalarının giderilebilmesi ve sonradan geliştirilebilmesi, ancak onun okunabilir olması halinde mümkün olur.

Program kodlaması da denilen kaynak kodunun yazılması için, genellikle yüksek seviyeli programlama dillerinden birisi kullanılır. Programın kodlanmasında kullanılacak programlama dilinin çözülecek problemin yapısına uygun olması gerekir. Kodlama, esas itibarıyla, akış diyagramında yer alan bilgi düzeninin, seçilen bir programlama dilinin kurallarına uygun olarak bilgisayara aktarılması işlemidir. Bu nedenle, program akışı ve algoritma gerekli ayrıntıları taşıyorsa, programın kodlaması da basit olur. Bununla beraber, uygulamada, program akışı aşamasında önemli detayların atlandığı da görülmektedir.


Programın kodlanmış şekline kaynak program (source program) adı verilir. Kaynak program, insanlar tarafından okunabilen, yazdırılabilen, üzerinde değişiklik yapılabilen bir yapıdadır. Ancak programın bu hali, bilgisayar tarafından anlaşılmaz ve dolayısıyla çalıştırılmaz. Bu nedenle, kaynak programın ek bir işlemle, bilgisayarın anlayabileceği şekle çevrilmesi gerekir. Programın, derleyici veya yorumlayıcılar kullanılarak "0" ve "1" lerden oluşan makine diline dönüştürülmüş son haline objektif kod denilmektedir. Objektif kod, bilgisayar tarafından hemen uygulanabildiği halde, insanlar tarafından kolayca anlaşılamaz. Programdaki gizli bilgiler ve teknikler, ancak objektif kodun ters işlemle kaynak koduna çevrilmesi suretiyle öğrenilebilir. Bunu zorlaştırmak için programlar, objektif kod şeklinde piyasaya sürülmektedir.