Bu Vikikitap bağlantısı güçlü yönlerini listeler, bunlardan bazıları şunlardır:
- Programcıya izin veren son derece güçlü, statik ve güvenli bir sistem gerçek dünyayı yansıtan güçlü soyutlamalar oluşturmak ve derleyicinin birçok mantık hatasını hataya dönüşmeden önce tespit etmesine izin verir.
- Modülerlik, böylece derleyici çok büyük yazılım sistemlerinin yapısını kaynaklardan doğrudan yönetir.
- Bilgi gizleme; dil, arayüzleri uygulamadan ayırır ve görünürlük üzerinde ayrıntılı kontrol sağlar.
- Okunabilirlik, programcıların kodu incelemesine ve doğrulamasına yardımcı olur. Ada, programın okuyucusunu yazara tercih eder, çünkü bir program bir kez yazılır ancak birçok kez okunur. Örneğin, sözdizimi tüm belirsiz yapıları yasaklar, bu nedenle Tao Programlama Yasası En Az Şaşırtma Yasasına göre sürprizler yoktur. (Bazı Ada programcıları, genellikle şifreli olan kaynak kodu hakkında konuşmak konusunda isteksizdir; İngilizce düzyazıya yakın olan program metnini tercih ederler.)
- Taşınabilirlik: dil tanımı, derleyicilerin yalnızca birkaç kontrollü yolla farklılık göstermesine olanak tanır. ve aksi takdirde programların anlamını çok kesin bir şekilde tanımlar; Sonuç olarak Ada kaynak metni, derleyiciler ve hedef donanım platformları arasında çok taşınabilir. Çoğu zaman, program herhangi bir değişiklik yapılmadan yeniden derlenebilir.
- Standardizasyon: standartlar, 1970'lerin sonlarında dilin tasarımından bu yana bir hedef ve öne çıkan bir özellik olmuştur. İlk standart, tasarımın başlamasından sadece 3 yıl sonra, 1980'de yayınlandı. Ada derleyicilerinin tümü tam olarak aynı dili destekler; tek lehçe olan SPARK, yalnızca açıklamalı bir alt kümedir ve bir Ada derleyicisi ile derlenebilir.
Okunabilirlik noktası önemlidir çünkü bir yazılım ürününün ömrü, onu kodlamayı / test etmeyi bitirdiğinizde bitmez. En büyük masraf (zaman ve para olarak) o ürünün bakımıdır. Dolayısıyla, ISS olarak uzun bir proje için, hataları ve genel belirsizliği en aza indirerek, bu göreve yardımcı olmak için oluşturulmuş bir dil kullanmak uygun görünüyor.
Bu cevap onu C ile karşılaştırıyor. ve C ++:
Ada, dile yerleştirilmiş bir dizi güvenlik özelliğine sahiptir. (Standardın, dile yerleştirilmiş tanımlanmamış davranışları özetleyen on iki sayfaya sahip olduğu C ile karşılaştırın. Tanımlanmamış davranışların, onları listelemeyecek kadar çok olduğu C ++ ile karşılaştırın.) Bu Ada güvenlik özellikleri önemli olabilir. performans maliyeti ve bu nedenle Ada, bu güvenlik özelliklerini seçici olarak devre dışı bırakma yeteneği de sağlar.
Kullanırsanız C veya C ++ ile aynı güvenlik düzeyine ulaşmanın mümkün olduğunu unutmayın. C veya C ++ dillerinin bir alt kümesi ve bir stil kılavuzuna bağlılık, ancak Ada'da dil ile birlikte gelir.
DÜZENLE (Teşekkürler JCRM): İlk bağlantı da düşük seviyeli programlama desteği:
Ada, gerçek zamanlı, güvenlik açısından kritik ve gömülü sistemler için düşük seviyeli programlamayı destekleyen güçlü özel özelliklere sahiptir. Bu özellikler arasında, diğerlerinin yanı sıra, makine kodu eklemeleri, adres aritmetiği, belleğe düşük seviyeli erişim, verilerin bitsel gösterimi üzerinde kontrol, bit manipülasyonları ve Ravenscar Profili adı verilen iyi tanımlanmış, statik olarak kanıtlanabilir eş zamanlı hesaplama modeli bulunur. >
Çalıştığım yerde, ürünü her seferinde derlemek zorunda kalmadan farklı yapılandırma verilerini yüklemek için adres aritmetiğini ve düşük seviyeli bellek özelliklerini kullanıyoruz ve bu da çok zaman kazandırıyor.