Главная | Соглашение | Публикация статей

"Адские" мифы
Категория: Статьи

Довольно часто с Адой связывают набор устойчивых заблуждений, препятствующих как распространению языка, так и осознанному выбору Ады в качестве языка реализации проекта.
Ада – мертвый язык, на нем сейчас никто не программирует. В действительности, Ада уверенно занимает нишу больших встроенных систем с повышенными требованиями к надежности. По сравнению с "коробочными" продуктами для Windows, такие системы не так заметны, поскольку либо существуют в одном экземпляре (какой смысл тиражировать программу, управляющую движением поездов метро), или распространяются как часть системы, в которую они встроены (бортовое программное обеспечение).
Ада – язык, предназначенный исключительно для военных применений. Ада действительно была разработана при участии Министерства обороны США, однако отсутствуют какие-либо технические, административные или иные причины, препятствующие использованию Ады для разработки гражданских систем. Количество "гражданских" проектов, основанных на этом языке, сегодня сопоставимо с количеством "военных" проектов.
Ада – слишком большой и сложный язык, для того чтобы использовать его в небольшом проекте. Объем и сложность всех современных индустриальных языков практически одинаковы, и чтобы убедиться в этом, достаточно просто сравнить объем их описаний. Этот миф восходит к началу 80-х годов, когда Аду сопоставляли с Паскалем, Фортраном 77 или Бейсиком.
Программистов, знающих Аду, мало, изучение языка с нуля требует чрезмерных усилий и времени. На самом же деле, настоящую трудность представляет отыскание специалистов, понимающих специфику встроенных систем и способных создавать качественные программы для них. Так, например, компания BAE, один из активных пользователей языка Ада, не требует от кандидатов знания этого языка; вместо этого ищутся люди, знакомые со встроенными системами и процессами создания программного обеспечения индустриального качества. После найма таких людей требуется всего две недели для обучения их языку Ада.
Наш личный опыт показывает, что программистам, знакомым с той или иной разновидностью Паскаля, требуется всего несколько дней, чтобы начать разрабатывать несложные программы на Аде.
Существующие Ада-технологии неэффективны; и трансляторы, и порождаемый ими код, отличаются низкой производительностью. Этот миф также восходит к первой половине 80-х годов, когда появились первые реализации Ады, фактически всего лишь доказывавшие "теорему существования Ада-транслятора, соответствующего стандарту". Достаточно провести ряд несложных экспериментов, запрограммировав некоторую модельную задачку на Аде, Паскале и Си/Си++, и сравнив (при сопоставимых параметрах компиляторов) затем скорость компиляции, объем порождаемого кода и скорость его выполнения, чтобы убедиться, что какой-либо специфической неэффективности, свойственной Аде, просто не существует. Можно также отметить, что система программирования GNAT при объеме исходных текстов более 40 Мбайт, на 90% реализована на Аде, и построение ее из исходных текстов (в его ходе она трижды сама себя компилирует) на современном ПК занимает не более получаса.
Существующие реализации Ады крайне дороги. Это верно, однако следует иметь в виду, что существует публично доступная версия системы программирования GNAT, которая бесплатно и на совершенно законных основаниях может быть взята из программного репозитория Нью-йоркского университета (ftp://cs.nyu.edu/pub/gnat) вместе с исходными текстами

"Адские" мифы

Статьи по теме:

Программирование контроллера НГМД
Цифровая логика
Потеря информации – можно ли ее избежать?
Хакеры могут контролировать ПК без ведома их владельцев
Планирование в операционной системе UNIX
Designer/2000 + Developer/2000
Получение изображений со сканера или цифровой камеры
ТИПЫ ЛКС
Windows 7 - Окно В Будущее
Основные физические и логические параметры жестких дисков
World Wide Web в России
Возможности ввода/вывода
WordPad: Автоматический перенос слов
Компания Janet Systems Llc Представила Soa-Платформу На Выставке «E-Kazakhstan»
Анимация На Рабочем Столе Вашего Компьютера
Рынок электронной коммерции: сектор business-to-business
Интегрирование модулей PADS в программную среду предприятия
Некоторые Мысли По Защите От Спама
Нейронный подход
Внедрение Crm Системы Sales Expert 2 В Компании «Сибаэроинж»
Внесение примесей
Уголовно-правовой анализ ст? 274 гл? 28 УК РФ "Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети"
Учет Клиентов, Учет Заказов - Самое Востребованное Программное Обеспечение
Информатизация общества: социальные условия, предпосылки и последствия
Последовательный и прямой доступ
Типы Java программ
Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети
VISA-2000. Виртуальный продавец компьютерной оргтехники
Глобальный уровень
С0SM0S/М
Математическая логика в криптографии
Банковские операции с использованием вычислительной техники
Отличие ЭС от других программных продуктов
Сертификаты TCO и MPRII
Консоль восстановления
ОПЕРАЦИИ СОХРАНЕНИЯ ТЕКСТА
WordPad: Изменение настроек редактора
Структура ПК
Технические методы увеличения безопасности работы за компьютером
Настройка интерфейса редактора Paint
СОЗДАНИЕ ДОКУМЕНТА
Текст программы на языке Basic
Локальные средства (ERwin, BPwin, S-Designor, CASE.Аналитик)
Определение ЭВМ как объекта конструирования
Зрительная работа за компьютером и ее последствия
Операционные системы реального времени для CompactPCI- компьютеров
Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети
Атака На Infinity Gb V2 2
WordPad: Выделение текста начертанием
Открытие документа не связанным с ним приложением
Как Выбрать Принтер?
Использование Агентств Охраны Для Профессионального Поддержания Безопасности
Коммутаторы NetGear
Алее Софтвер Приглашает На Docflow 2008!
Архитектура украинского сегмента сети Internet