1. PROGRAMLAMA DİLLERİ
İyi bir programın temel özellikleri şunlardır:
Doğruluk : Verilen görevlerin tam olarak yerine getirilmesidir.
Dayanıklılık : Beklenmedik hatalardan dolayı programın çalışması
Genişletilebilme : İleri aşamalarda görevlerin değişikliği veya yenilerinin eklenmesi kolay olmalıdır.
Basitlik : Karmaşık tasarımlardan kaçınmak gerekir.
Modülerlik : Program kodları başka programlar içinde de kullanılabilmelidir.
Uyumluluk : Başka bilgisayar ve sistemlerde çalışabilmelidir.
Kontrol edilebilirlik : Hata olabilecek yerlere açıklayıcı hata mesajları konulmalıdır.
Kolay kullanım : Kullanıcı ara birimi kolay olmalı ve rahat öğrenilebilmelidir.
Parçalanabilirlik : Problemin küçük parçalara ayrılarak yazılmasıdır.
Anlaşılırlık : Başkasının yazdığı program elden geçirilirken rahatça okunabilmelidir.
Koruma : Modüller birbirlerine müdahale etmemelidirler.
Dünya problemlerden oluştuğuna göre, Temel olarak bir algoritma, bilgisayara belli bir problemin çözümünü anlatmaktır. pratikte insanların yazabileceği program sayısı ve çeşitliliğinin bitmesi çok zordur. Büyük bir problemin bilgisayara yaptırılması için, genellikle küçük parçalara bölmek gereklidir.
Programlama genellikle zor değildir, ama zaman harcayan bir iştir. Bir pinpon oyununu yazmak, bir savaş uçağının simülasyonunu yapmaktan daha kolaydır. Eğer adım adım bir yeri tarif edebiliyorsanız, program yazabilirsiniz. Bir bilgisayar aptal olduğuna göre ona ne yapacağını adım adım anlatmanız gereklidir.
Arkadaşınıza evinizin yolunu tarif ederken:
1) Yayla mahallesine git
2) Çınar sokağına git
3) Trafik ışıklarından sağa dön
4) İki sokak ileride sola dön
Bir insan için kolay olan bu adımlar bilgisayarda yazıldığında hiçbir anlam ifade etmez:
1) Yayla mahallesine nasıl gideceğim?
2) Çınar sokağını nasıl belirleyeceğim?
3) Işıklardan ne kadar sonra sağa döneceğim?
4) Sola dönünce arabayı nasıl park edeceğim?
1.1. Bilgisayar Programı İçin Neler Bilmeliyim?
Bir programı kullanmaktan çok, yazma konusunda istekli iseniz, zaten program yazmak için gerekli şeye sahipsiniz demektir.
1) İstek: Önünüze ne kadar engel çıksa da, isteğiniz varsa öğrenirsiniz. (Kanuni olmayan bir şey ile
ilgileniyorsanız, hapishanede geçirilecek zamanınız olabilir!)
2)Meraklılık: Bu sayede öğreneceğiniz dil size angarya gibi gelmez.
3) Hayal gücü: Böylece daha ilginç ve faydalı program yapabilirsiniz.
Bilgisayar Türkçe, İngilizce veya başka bir dilden anlamaz. Bilgisayarın fonksiyonel bir beyni olmadığı için insanlar komutlar yazmalıdır. Bu özel dile “programlama dili” denir.
Komutlar bir araya gelerek “program”ı meydana getirir. Belli bir dil ile yazılmış komutlara “kaynak kod” da diyebiliriz.
1.3. Neden Birçok Programlama Dili Vardır?
Her programlama dili özel bir amaca hizmet eder. İnsanlar farklı problemleri çözmek için değişik programlama dilleri yazmışlardır. Temelde bilgisayarlar 1 ve 0’lardan oluşan ikilik sayı* sistemindeki dili anlarlar. Buna “makine dili” denir:
Makine dilinin dezavantajları, hatalı kod yazımının kolay olması ve yazımının uzun sürmesidir. Makine dilinin daha rahat programlanması için 1950’li yıllarda “assembly dili” geliştirilmiştir. “Assembly dili” basit, hatırlanması kolay deyimlerden oluşur.
Programcılar 1 ve 0 ile program yazma yerine “assembly dili”ni geliştirmişlerdir, bilgisayarın bu yazılanlarla ilgili hiçbir fikri yoktur. Bu sebeple programcılar “assembly dil” komutlarını “makine dili”ne çeviren programlar yazmışlardır. Bu programlara “makine dili çeviricisi - assembler” denir. Böylece “assembly dili” ile yazılmış bir kod, bilgisayarın anlayabileceği “makine dili”ne dönüşmüş olur.
Temel olarak makine dilinde; mantıksal işlemler, aritmetik işlemler, dallanma işlemleri ve veri hareket işlemleri yapabiliriz.
“Assembly dili” makine dilinden daha rahat yazılmasına rağmen, hala bazı dezavantajlara sahiptir:
1) Yavaş ve çok yer kaplayan programlar oluşur.
2) Başka dile çevrilmeleri zordur.
3) Çok uzun program yazımına elverişli değildir.
Programcılar donanıma erişimi daha kolay olan, okunaklı, yazımı ve düzenlemesi kolay olan bir dile ihtiyaç duymuşlardır. Bunun üzerine C (1972 doğum yılı

taşınabilir† dili geliştirilmiştir. Cobol (1959) ve FORTRAN (1957) gibi birçok diller de vardır ama hala günümüzde yaygın olarak kullanılan C dili olmuştur.
Ekrana “Selam!” yazan bu örnek İngilizce diline benzer kodlamaya sahiptir. İnsanların konuşma diline yakın olan dillere “yüksek seviye dil” denilmiştir. Aslında programlama dilinin İngilizce olması şart değildir. Kendi dilimizde olan örnek program Tupol‡ ile yazılmıştır.
C programlama dili diğer Cobol ve Fortran gibi dillerden daha basit olduğu için, C dilini makine diline çeviren birçok derleyici yazılmıştır. C dili böylece öyle çok yaygınlaşmıştır ki, bu dile uyumlu olan diller ortaya çıkmıştır. Mesela C++ (c plus plus), Java, Perl, Python ve C# (c sharp) gibi. Şu anda kullanılan tanınmış, tanınmamış birçok program C veya C++ ile yapılmıştır: Windows, Unix, Microsoft Office gibi...
Mühendisler diğer insanların rahatça program yazmaları için Basic (Beginners All Purpose Symbolic Instruction Code - 1964) ve Pascal (1971) gibi diller üretmişlerdir. Basit bir dilden yola çıkılarak istenen dile geçiş yapılır.
Gördüğünüz gibi ekrana bir mesaj yazmak için Basic’te sadece bir satır kod yeterli oluyor. Bu dil sayesinde insanlar kodun yazımı ile uğraşmaya değil, amaçladıkları işe odaklanabiliyorlar.
C ve Basic arasında kalan Pascal ise biraz daha iyi görünümlü, yapısal program yazmayı sağlıyor:
Yüksek seviyeli dillerin genel özelliklerini şöyle özetleyebiliriz:
1) “Makine diline” göre daha şişkin ve yavaş kod meydana getirirler
2) Tüm sistem kaynaklarına ulaşılamayabilir, tabii amacınız disk yardımcı
Programı (Norton SystemWorks&hellip

gibi program yazmak değilse bir derleyici gereklidir. Kısa zamanda program yazmaya başlanır.
3) Öğrenme ve ustalaşma için geçen zaman fazla değildir.
4) Yanlışlıkla sistem kaynaklarının bozulmaması için kalkanları vardır.
5) Okuması ve değiştirmesi kolaydır.
6) Başka bilgisayar çeşitlerinde de çalışabilirler, yani taşınabilirdirler.
Sık sorulan sorular:
1. Assembly dili ile yüksek seviye dil arasındaki hız farkı ne kadardır?
Cevap: Assembly dili yaklaşık 2 ile 20 kat arasında daha hızlıdır.
2. Assembly dili ile yüksek seviye dil arasındaki program tasarım süresi ne kadardır?
Cevap: Assembly dili yaklaşık 10 ile 100 kat arasında daha yavaş sürede tamamlanır.
3. Derleyiciler hangi dilde geliştirilmişlerdir?
Cevap: Önceleri Assembly dili ile yazılmışlardır. Daha sonra yüksek seviye diller güçlendikçe bu diller kullanılarak derleyiciler yazılmıştır.
--------------------------------------------------------------------------------
Konu By_LoRd tarafından (01-11-2008 Saat 17:00 ) değiştirilmiştir..
Hacker KeM@L By_LoRd