Ada (programlama dili)

Vikipedi, özgür ansiklopedi
12.24, 28 Ocak 2021 tarihinde Justinianus (mesaj | katkılar) tarafından oluşturulmuş 24744776 numaralı sürüm ({{kaynaksız}} etiketi eklendi (Twinkle ile))
Ada
ParadigmasıÇok paradigmalı
İlk çıkışı[1980] 40 yıl önce
TasarımcıMIL-STD-1815/Ada1983: Jean Ichbiah; Ada1995: Tucker Taft; Ada2005: Tucker Taft
Kararlı sürümAda 2005 (1 şubat, 2016; 4 yıl önce)
Tip sistemistatik, güçlü, dinamik, güvenli, yalın
Önemli uygulamalarıGNAT
LehçeleriAda 83, Ada 95, Ada 2005
EtkilendikleriALGOL 68, Pascal, C++ (Ada 95), Smalltalk (Ada 95), Java (Ada 2005)
EtkiledikleriC++, Eiffel, PL/SQL, VHDL, Ruby, Java, Seed7
Olağan dosya uzantıları.adb, .ads
Web sitesiwww.adaic.org
AilesiPascal

Ada, yapısal, statik tipli, zorunlu, geniş spektrumlu ve nesne yönelimli bir üst düzey bilgisayar programlama dilidir. Pascal ve diğer dillerin genişletilmiş halidir. Gömülü design-by-contract (DbC), Güçlü yazımı, Açık eşzamanlı, Senkronize mesaj geçişi, Korunmuş objeli ve belirsiz bir dildir. Ada kod güvenliğini ve sürdürebilirliğini derleyicide hataları bularak geliştirdi.

Ada fransız bilgisayar bilimcisi Jean Ichbiah ve ekibi tarafından Amerika Birleşik Devletleri Savunma Bakanlığı ile sözleşmeli olarak geliştirildi. Ordudaki çeşitli donanımları çalıştıracak ortak bir yazılım olarak düşünülmüştür. Temel alınan diller arasında ALGOL, Pascal ve PL/1 vardı ama C yoktu.

İngiliz şairi Lord Byron'ın 1834'te ilk bilgisayar makinesi sayılacak Charles Babbage'in analitik makinesini destekleyen kızı Lady Ada Lovelace (1815-1852)'ın ismini taşır. 95'te dinamik iletimi içeren nesne yönelimli programlama desteği dahil edildi.

Özellikler

Ada çok gelişmiş yazılım sistemlerinin gelişimi için oluşturulmuştur. Ada paketleri ayrı ayrı derlenebilir ve dahası, tutarlılık kontrolü için yürütme olmadan Ada paket tayini ayrı ayrı derlenebilir. Bu, yürütme başlamadan önce kurulum safhasındaki problemlerin bulunmasına imkân sağlar. Derleme zamanındaki kontroller, farklı dillerdeki oluşabilecek fark edilmeyen hataları azaltmak için desteklendi.

Ada'nın özellikleri Güçlü yazımı, modüler programlama mekanikleri (paketler), paralel işleme (görev ve mesaj senkronizasyonu), hata işleme ve genel programlamayı kapsar.

Ada'nın sözdizimi, temel işlemleri gerçekleştirme yöntemlerinin yolunu en aza indirir ve İngilizce anahtar kelimelerini tercih eder (mesela "or else" ve "and then") veya sembolleri tercih eder ("||" ve "&&"). Ada basit "+", "-", "*","/" matematik operatörleri kullanır ancak diğer sembolleri kullanmaktan kaçınır. Kod blokları "declare","begin", "and", ve "end" ile sınırlıdır ve ancak döngülerle (if ... end if, loop ... end loop) birlikte kullanılır.

Ada çok geniş uygulamalar geliştirilmek için tasarlanmıştır. Ada'nın paketleri ayrı ayrı şekilde derlenebilir. Ada'nın paket özellikleri aynı zamanda tutarlılığı kontrol etmek için gerekli uygulamalar olmadan da derlenebilir. Bu da geliştirilen uygulamanın erken safhasında hatayı tespit etme imkanı sağlar.

Çok sayıda derleyici kontrolcüsü çalıştırılana kadar tespit edilemeyen hataları tespit edebilmesi için gereken komutların projeye eklenmesi dışında kendisi hataları tespit edebilir. Güçlü yazımlara bağlılığı birçok sıradan kod hatalarını (yanlış parametre, dizi ihlalleri, geçersiz referanslar, eşleşmeyen tipler, vb.) derleme sırasında veya çalışma sırasında tespit etmede yarar sağlar. Eşzamanlı çalışma dilin bir parçası olduğu için derleyeci bazı durumlarda potensiyel sorunları tespit edebilir. Ayrıca derleyici hatalı tanımları,