Come esempio non esaustivo a proposito del fatto che Ada supporta la progettazione di sistemi software "mission and safety critical", basti sapere, caso più unico che raro, che i compilatori per il linguaggio devono seguire un processo di certificazione che è esso stesso uno standard internazionale (ISO/IEC 18009 - Ada: Conformity Assessment of a Language Processor). Il cosiddetto "ACATS - Ada Conformity Assessment Test Suite" è una suite di test costruita secondo il suddetto standard ed è parte integrante del processo di certificazione svolto da laboratori autorizzati sotto l'autorità del Ada Compiler Assessment Authorit (ACAA).
Ada rappresenta lo stato dell'arte dell'ingegneria del software, e unisce in una soluzione unica principi e tecniche provenienti da diversi paradigmi di programmazione, in particolare programmazione modulare, programmazione orientata agli oggetti, programmazione concorrente e programmazione distribuita.
Sebbene l'interesse del DOD vertesse principalmente sullo sviluppo di applicazioni militari, Ada è un linguaggio general-purpose, ovvero utilizzabile in qualsiasi dominio applicativo. L'origine militare del linguaggio si rivela però nella presenza di caratteristiche molto evolute in materia di sicurezza del codice; per questo motivo, il linguaggio viene ancora oggi usato in molti contesti in cui il corretto funzionamento del software è critico (per esempio sistemi di controllo di velivoli - avionica - e del traffico aereo).
Fra le caratteristiche peculiari di Ada si possono citare:
- programmazione concorrente (task)
- programmazione real-time
- gestione delle eccezioni
- presenza di tipi di dati astratti
- controlli semantici estesi in fase di compilazione
- programmazione distribuita
- possibilità di definire il formato dei dati a livello di bit (utile per il controllo di dispositivi esterni).
Nessun commento:
Posta un commento