чи справді Ада пішла?


17
  • Чи досі люди використовують Ada - (це в основному використовувалося в Міністерстві оборони)
  • Чи всі програми написані на Ада "Спадщина"?
  • Чи все-таки знають Ada

5
Прочитайте спочатку, перш ніж запитати це питання: tiobe.com/index.php/content/paperinfo/tpci/index.html Це популярніше, ніж F # або Assembly, і він насправді має акуратний синтаксис (IMO).
робота

2
Ще одна інформативна сторінка: seas.gwu.edu/~mfeldman/ada-project-summary.html
BlackJack

1
@greenlit, розробники Java до Ада наразі близько 20: 1. Щоб дізнатися більше, спробуйте просканувати публікації вакансій. Який тут ваш кут? Ви сподіваєтесь знайти високооплачувану роботу Ада?
Робота

3
Якщо ви хочете використовувати його в загальному застосуванні, чому важлива популярність? Ви плануєте додавати інші диски?
JeffO

1
@greengit дивись також stackoverflow.com/questions/1078043/why-didnt-ada-make-it - на самому ділі це робив він, ява провів більшу частину свого часу наздоганяє!
NWS

Відповіді:


27

Чи все ще користуються Ада -

Здається, Ada востаннє оновлювалася в 2005 році і там працює робота над Ада 2012 року , тому мова сама по собі ще жива і хитається.

Що стосується використання, Ада вже не призначена для використання в Міністерстві оборони. Більшість робіт, які я бачив і виконував, були в Java, C і C ++, але там також використовується структура .NET, і я навіть чув про проекти, що керують іншими мовами JVM, такими як Scala, залежно від того, як буде використана система. Напевно, в Аді багато коду, тому я не здивуюсь, якщо відбувається багато повторного використання та обслуговування коду. Враховуючи характер оборонних проектів, важко придумати конкретні цифри щодо їх використання.

Існує список проектів та користувачів Ada , але, схоже, останнє оновлення було у червні 2008 року. Там можуть бути новіші списки, але я не міг швидко знайти їх.

Чи всі програми написані на Ада "Спадщина"?

Якщо ви запитуєте, чи є нова розробка Ada, я не здивуюсь, якщо нові системи записуються з нуля в Ада. Я б підозрював, що їх буде занадто багато, але, мабуть, є якісь там. Однак я б підозрював, що більшість Ada, що працюють там, - це обслуговування або модернізація існуючих систем, а не нова розробка.

Чи все-таки знають Ada

Знання в чому-небудь продаються, якщо ви можете знайти когось, хто шукає цей набір навичок. Навіть якщо ви не використовуєте Ada в розробці, я виявив, що знання конкретної мови чи основи змінило мою думку та те, як я використовую інші мови чи рамки. Я б підозрював, що знання Ада дасть вам уявлення про інші методи проектування та конструювання програмного забезпечення також на інших мовах.


5
Я пишу нові системи на Ада :)
NWS

1
C # & .NET також використовується в бізнес-програмах, написаних підрядниками оборони.
Джордж Стокер

@NWS: Деяким чином це виглядає так, що це може запропонувати набагато більш надійну статичну валідацію, ніж це було б можливо в C. Мені цікаво, хоча, наскільки введення субрансляційного типу насправді працює на зменшення залежності від розміру машини. Якщо є, наприклад, дві змінні, задекларовані як тип 0..200, і хоче перевірити, чи є їхній продукт більшим за 250, можна просто порівняти їх продукт з 250 і чи гарантовано він буде працювати, чи не вдасться його скласти у випадках, коли це може вийти з ладу, або він може пройти компіляцію, але провалиться під час виконання, якщо продукт перевищує 32 767?
supercat

@supercat Так Статична перевірка в Аді дуже хороша. Що стосується конкретного запиту, правильне використання підтипів та модульних типів для створення діапазонів для тестування вирішить вашу загадку. Також доступні бібліотеки для дуже великої кількості маніпуляцій, які працюватимуть на 16/32 бітових машинах. Ви читали про систему сильного типу в Ада? Як тільки ви навчитесь правильно ним користуватися, це дуже потужно.
NWS

@NWS: Я переглянув визначення мови Ada, пов’язане зі сторінки Wiki, і, хоча я виявив, де йдеться про визначення числових типів, я не міг знайти дискусії про те, як вони взаємоділи з операторами. Якби Ада вимагала вимагати набору типів даних під час роботи з типами, які точно не відповідають, це здавалося б менш корисним, але я не бачив жодних ознак того, що насправді потрібно. Якби я розробляв мову, у вищезгаданому випадку я б або переконався, що порівняння поводитиметься так, ніби оцінюється з типом, який може містити що-небудь до 40 000, або ще ...
supercat

12

Відповідь: Ні, Ада все ще використовується. Моя компанія використовує Ada для розробки нативних серверних додатків для компаній у виробництві, роздрібній торгівлі, охороні здоров'я та ін.


чи можете ви сказати, які переваги має Ada перед іншими мовами на власних додатках на серверах?
Реймонд Шенон


6

Ада все ще активно використовується в оборонних, критичних завданнях, критичних для безпеки, в режимі реального часу, вбудованих систем.

Тому: поїзди, залізниці, літаки, контроль повітряного руху, супутники, медичні системи, атомні електростанції тощо

для недавнього використання ada див .: це


5

"Був" використаний у відділі оборони? Востаннє перевіряв, все одно це є. Ada все ще така ж життєздатна, як і будь-яка мова для написання нового програмного забезпечення з нуля. Там, де це невигідно, є наявність наявного програмного забезпечення для повторного використання та адаптації та доступність програмістів, які допоможуть вам. Однак він може бути пов'язаний з програмами C або тими, що мають схожий бінарний інтерфейс.

Ада, мабуть, найбільш ідіоматично використовує сильний набір тексту та загальне програмування будь-якої мови, яку я знаю. Цей досвід дуже продається, навіть якщо він не програмує в Ada.


1
Це було призначено для DoD-проектів, до кінця 1990-х (1997-1998, якщо я правильно пам'ятаю). Код Ада все ще існує, але все більше і більше проектів будуються за допомогою C, C ++, Java і навіть таких мов, як Python, починають створювати набіги. Я не кажу, що він не використовується - там є ще тонна коду Ада, яка все ще є хорошою і може бути повторно використана, модифікована або розширена для проектів, і це так. Але не багато нового розвитку використовує Ада.
Томас Оуенс

Я виявив, що шаблони C ++ з автоматичним створенням функцій шаблону є набагато потужнішими та "ідіоматичнішими", ніж дженерики Ada.
Кевін Клайн

1
@Kevin, ідіоматичний посилається на типову модель використання, яка визначає мову, а не наскільки вона "потужна". Не рідкість програмісти на C ++ ходити роками, використовуючи шаблони для стандартних бібліотечних контейнерів, але ніколи не визначаючи своїх. Це невідомо з програмістами та дженериками Ada.
Карл Білефельдт

Зауважимо, що мандат було скасовано, а не його використання.
NWS

1

Я б ризикну сказати, що будь-яка мова, яка коли-небудь була такою популярною і не була специфічною для апаратури в нетехнологічній галузі чи уряді, ніколи не помре за одне покоління.

Компанії, і вдвічі, тому уряд має занадто багато правил та інших проблем, аби лише оновити, бо щось старе. Багато систем у такому віці все одно підтримуються внутрішньо, тому аргумент непідтримки також не лежить з ними.

Відповідь Томаса в цьому випадку хороша, поки Ада не буде, поки все, що базується на техніці до середини 90-х років, не буде замінено на військові, але в цілому подібне питання завжди призводить до подібного роду відповідей, оскільки мови, які мали період значна критична маса ніколи не гине повністю.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.