ak_12 (ak_12) wrote,
ak_12
ak_12

Categories:

И ещё раз о выборе языка C++ в качестве основного при создании ПО для самолёта F-35



Пройдя по ссылке можно посмотреть видео 2014 года с часовым докладом Билла Эмшоффа (Bill Emshoff) работавшего тогда (возможно и сегодня) в компании Lockheed Martin на должности Senior Staff Software Engineer программы F-35, с рассказом о том с какими трудностями его коллектив столкнулся используя C++ и каким образом эти трудности преодолевались.

Я же хочу отметить что No safety-critical бортовое ПО F-35 сегодня НЕ демонстрирует требуемого уровня надёжности работы (за safety-critical ПО не скажу ничего, F-35 из за ошибок в программах по моему ещё не падали).

Напомню что в 2002-м году для разработки указанного программного обеспечения будущего F-35 был выбран язык программирования C++, и хочу процитировать из уже упоминавшегося документа компании Lockheed Martin Can Ada Stand Up to the Challenges of C/C++ and Java? (pdf) датированного 2004-м годом:

Reliability and Safety of Ada over C++: Ada error rate and cost-to-fix rates are lower than C and C++

Надежность и Безопасность Ada выше чем у C++: Частота ошибок в программах на Ada и затраты на их исправление ниже, чем в C и C++

Ada is at the forefront for safety critical real time systems, although other languages are making an attempt to catch up

Ада находится на переднем крае разработки ПО для систем реального времени критических с точки зрения безопасности, несмотря на то, что другие языки предпринимают попытку догнать

Lockheed Martin should continue to consider Ada where real time, embedded systems are being proposed and safety is an issue.

Lockheed Martin следует продолжать рассматривать язык Ада в качестве основного для встраиваемых систем реального времени с высокими требованиями к надёжности.

Use of other languages, as appropriate, for related system components should be regarded as acceptable where there are technical or strong business environment reasons for their use.

Использование других языков программирования, в случае необходимости, для связанных системных компонентов, следует рассматривать как приемлемое, если существуют технические или веские бизнес-причины для их использования.

Перевёл как смог.

Напомню что технических причин для того чтобы при разработке бортового и наземного ПО F-35 предпочесть C++ не было. Наоборот: Most language experts agreed that Ada was best from a technical standpoint, или по русски: Большинство экспертов согласились, что язык Ада был лучшим с технической точки зрения.

Нашлась серьёзная бизнес-причина, заключавшийся в том что в JSF Trade Study посчитали что не смогут набрать достаточно новых кодеров, особенно свежеиспеченных выпускников колледжей, готовых кодировать на Ada.

По этому предлагаю не придумывать других причин по которым в проекте JSF в качестве основного был выбран язык программирования C++, достаточно тех, что озвучены в документе 2004 года. Давайте придерживаться принципа "бритвы Оккама".

Спасибо за внимание.
Tags: f-35, Авиация, ВВС США
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 9 comments