OberonCore https://forum.oberoncore.ru/ |
|
"Ада: плюсы и минусы" https://forum.oberoncore.ru/viewtopic.php?f=26&t=3547 |
Страница 1 из 1 |
Автор: | Илья Ермаков [ Суббота, 20 Август, 2011 19:26 ] |
Заголовок сообщения: | "Ада: плюсы и минусы" |
http://www.algonet.ru/?ID=55711 Ада - плюсы и минусы Компания Reifer Consultants в конце 2000 г. выполнила сравнительный анализ языков программирования Ада и Си/Си++ применительно к военным проектам. Для Ады результаты выглядят довольно пессимистично, поэтому в качестве контраргументов приводится мнение специалистов компании Ada Core Technologies Inc. . Ада превосходит Си/Си++ по качеству стандартизации языка, уровню типизации данных, возможностям системы прерываний и степени повторного использования кода, а также в средствах создания высоконадежных систем реального времени. Этот язык имеет ряд несомненных преимуществ перед Си/Си++ в том, что касаеся реализации абстрактных типов, наличия средств строгого контроля за параметрами функций и выходом индексов за границы массивов (80% ошибок, возникающих при создании программ на Си/Си++, связано именно с этим), машинно-независимого представления двоичных значений (вместо битовых операций выполняется выборка полей записи) и гибких средств организации многозадачности. Вместе с тем Ада уступает Си/Си++ в поддержке новых ОС, а также в наличии богатых стандартных библиотек, хороших средств сопровождения, отладки и формирования современных графических интерфейсов. Но в стандарт Ады входят автоматически формируемые спецификации для стыковки с другими языками программирования, и на практике вместе с Адой применяются математические библиотеки Фортрана, системные функции, написанные на Си, классы Java для работы с Интернетом и т. д. Спецификация ASIS для разработчиков инструментальных оболочек нередко используется при создании оболочек для других языков. Поэтому на рынке предлагаются интегрированные среды разработки, например, для Си++ и Ады, которые нередко дополняются системами конфигурационного управления, версионного контроля и др. Ада проигрывает Си/Си++ в перспективе: практически не планируется выпуск оптимизирующих Ада-компиляторов, ухудшается ситуация с обучением, технической поддержкой и справочной литературой. В сравнении с 1994 г., когда ПО на Аде разрабатывали 16 компаний и насчитывалось 693 обновляемые версии Ада-компиляторов, в 1999-м эти показатели значительно снизились -- до 8 компаний и 64 компиляторов, а к 2009-му останется всего две фирмы и не появится ни одной новой версии. Надо при этом отметить, что компании нередко просто сливаются или укрупняются. Среднегодовой объем рынка системного ПО для Ады - около 80 млн. долл. Одна из причин, по которой сокращается число разработчиков компиляторов, -- накладываемое сертификационной комиссией МО США требование о реализации полного стандарта этого достаточно сложного языка. Но зато такое требование значительно повышает степень переносимости Ада-приложений на уровне исходных текстов - она более высокая, чем у Java-программ. В рамках проекта по модификации системы ПРО THAAD стоимость Ада-компилятора для новой аппаратной платформы оценивается в сумму порядка 1 млн. долл., а для его выполнения потребуется 18 месяцев. С другой стороны, современные средства разработки на Аде содержат независимое ядро кодогенерации и подключаемые компоненты для различных целевых платформ, поэтому стоимость Ада-компилятора для новой платформы сопоставима со стоимостью аналогичного продукта для Си++. Число курсов по этому языку в колледжах и университетах США не снизилось, хотя количество новых книг по Аде сократилось до нуля. При этом Ада настолько прозрачна семантически и синтаксически, что изучить ее гораздо проще, чем, например, Java. Программистам, знающим Си++, перейти на Аду не составит особого труда - достаточно прочитать учебник пятилетней давности (стандарт не допускает языковых подмножеств или расширений, как это характерно для диалектов Си/Си++). По результатам анализа 1500 проектов стоимость одной СК на Аде 95 сравнялось со стоимостью СК на Си++ - а по сравнению с СК на других языках 3-го поколения она ниже всего в два раза. С учетом сегодняшних расходов на сопровождение и развитие разница вообще оказывается не в пользу Ады, хотя данный язык как раз и создавался с целью снижения доли таких расходов в стоимости проекта. Но конкурировать с рынком обучения, сопровождения и услуг для Си/Си++ компаниям, поставляющим Ада-продукты, не под силу, хотя рыночный успех тех или иных технологий, как показали примеры Бейсика или OS/2, практически не связан с их объективными возможностями и реально не оказывает влияния на выбор ИТ для специфических военных задач. Средства разработки на Аде сегодня самодостаточны и ориентированы в первую очередь на сверхдолгие по меркам коммерческой ИТ-индустрии проекты. В ближайшее время в МО США только один из десяти проектов будет реализован на Аде. Такое соотношение объясняется общей нехваткой ИТ-специалистов и организационными проблемами. В то же время пока не видно схожих с Адой решений, включающих в себя соответствующие технологические и архитектурные средства создания систем реального времени. Различные материалы по Аде можно найти на сайте www.adaresource.org. |
Автор: | Иван Кузьмицкий [ Суббота, 20 Август, 2011 20:58 ] |
Заголовок сообщения: | Re: "Ада: плюсы и минусы" |
Цитата: ...рыночный успех тех или иных технологий, как показали примеры Бейсика или OS/2, практически не связан с их объективными возможностями... Это пора в граните отливать, что ли...
|
Автор: | fevdokimov [ Пятница, 26 Август, 2011 16:39 ] |
Заголовок сообщения: | Re: "Ада: плюсы и минусы" |
Все представленные материалы давно устарели. Есть ли новые аналитические выкладки? |
Автор: | fevdokimov [ Пятница, 26 Август, 2011 16:42 ] |
Заголовок сообщения: | Re: "Ада: плюсы и минусы" |
Вопрос к Илье. Если не ошибаюсь, то на форуме проскакивала информация о том, что Вы собирались организовать курс по изучению ADA. Получилось или нет и какие результаты обучения??? |
Автор: | Илья Ермаков [ Воскресенье, 28 Август, 2011 21:40 ] |
Заголовок сообщения: | Re: "Ада: плюсы и минусы" |
Планы по Аде относились к 2006-му году... По мере углубления работы с КП/ББ Ада просто отпала, как избыточная, в контексте наших задач (и производственных, и образовательных). Сейчас я могу принять решение о применении Ады, только если понадобится платформа иная, чем x86, либо если нужно будет делать сложный срочный проект с параллельностью-распределённостью (если не срочный, то изворачиваемся и на КП). |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |