НЕСМОТРЯ НА ТО ЧТО АДА никогда не считался языком общего назначения — и даже единственным языком Пентагона, он получил достаточно широкое распространение в авиации и других отраслях, где требуются сверхнадежные системы, работающие в режиме реального времени |
Международная организация по стандартизации ISO присвоила статус стандарта последней версии языка программирования Ада — Ada 2012. В версии Ada 2012 появилась функция обеспечения повышенной безопасности, которая уже присутствует в ряде других языков и называется контрактным программированием.
Поскольку язык Ада используется во встроенных системах, предназначенных для решения ответственных задач, стандартизация позволит осторожным пользователям осуществить переход на новую версию, гарантировав, что новые функции работают так, как определено в спецификациях, и будут поддерживаться поставщиками инструментов, совместимых с Ада.
Контрактное программирование поможет разработчикам защитить программы от ошибок и несанкционированного использования. В рамках контрактного программирования разработчик определяет ряд условий, которые проверяются перед запуском процедуры, а также задает диапазон разрешенных выходных значений.
Проверяя в ходе выполнения предварительные и окончательные условия, программа защищает себя от несанкционированного проникновения и от выдачи некорректных или вредоносных данных, что повышает ее устойчивость и безопасность.
Хотя контрактное программирование и получило признание многих авторитетов в программной инженерии, сегодня соответствующие функции реализованы лишь в очень небольшом подмножестве языков, по крайней мере если не учитывать дополнительные модули расширения компилятора. Из широко распространенных языков программирования в стандартном варианте контрактное проектирование поддерживается языком Eiffel.
Контрактное программирование отвечает новому стандарту безопасности DO-178C/ED-12C авиакосмического программного обеспечения, утвержденному Радиотехнической комиссией по аэронавтике (Radio Technical Commission for Aeronautics, RTCA).
Версия Ada 2012 поддерживает и ряд других новых функций. Обновленный язык лучше подходит для работы в многоядерных средах. Разработчики спецификаций постарались сделать язык более выразительным, добавив более мощные итераторы и дополнительные способы построения условных выражений.
Министерство обороны США заказало разработку языка Ада в конце 70-х годов, решив консолидировать возможности различных языков, использовавшихся для создания программ военного назначения.
Несмотря на то что Ада никогда не считался языком общего назначения — и даже единственным языком Пентагона, он получил достаточно широкое распространение в авиации и других отраслях, где требуются сверхнадежные системы, работающие в режиме реального времени.
Версия Ada 2012 стала первым крупным обновлением стандарта Ада за последние семь лет. Пересмотром языка занималась группа Ada Rapporteur Group комитета ISO/IEC (International Electrotechnical Commission) JTC 1 (Joint Technical Committee).
Компания AdaCore уже представила компилятор Ada 2012 и соответствующие инструменты.
Инструменты для работы с программами на языке Ада предлагаются также компаниями Green Hills Software и Atego.