Как стать автором
Обновить

О языках

Время на прочтение2 мин
Количество просмотров6.5K
Автор оригинала: Jack Ganssle
Несколько лет назад поставщик компиляторов Keil (теперь принадлежит ARM) поместил объявление в Embedded Systems Programming magazine (позже известный как Embedded Systems Design, а сейчас embedded.com) о своем новом компиляторе: COBOL для 8051.
Это была шутка, и размещена она была в апрельском номере. Какой смешная и абсурдная идея продукта! COBOL для встраиваемых систем? И COBOL для 8051! Я позвонил президенту компании и поздравил его с отличной шуткой.
А он ответил мне, что они получили запросы на поставку!

Этот пример характеризует определенные подходы в выборе языка для встраиваемых систем. Ожидания оказываются важнее реальности.

Вы не можете прочитать Slashdot или подобные веб-сайты, не увидев дискуссий о языках как есть. Является ли D новейшим отличным способом для написания кода. Или это Свифт? Я все время получаю письма от людей, желающих получить информацию о разработке микропрограммного обеспечения в C #. Не редкость услышать от кого-то, что весь мир движется в сторону Java, и те, кто этого не делают, рискуют навеки отстать.

Что же мы имеем на самом деле? В мире встроенных систем в первом приближении используются только два языка: С и С ++. Данные Embedded.com показывают основной язык, используемый его читателями (я не смог заверстать картинку, обращайтесь к оригиналу, С порядка 60%, С++ порядка 20% в период с 2005 по 2013 с незначительными отклонениями — п.п.).
Как ни удивительно, но С++ никак даже не догоняет С.

При выборе языка следует учитывать наличие разработчиков. Если вы не можете нанять инженеров, которые разбираются в языке досконально, то рассчитывайте на длительное и дорогостоящее обучение или готовьтесь к неудаче.

Меня однажды пригласили помочь с тонущим проектом в Швеции, который делали на C ++. Я думал, что язык был обоснованно выбран для данного приложения. Но почему был сделан именно этот выбор? Вице-президент компании сказал мне, что он прочитал в Business Week, что C++ позволяет ускорить разработку и облегчает повторное использование кода, так что он настоял на его применении.
В фирме было 40 разработчиков, занятых в проекте и все они, за исключением недавнего выпускника, не имели никакого опыта объектно-ориентированного программирования. Оставшиеся 39 пытались научиться по ходу работы. Это путь к катастрофе. Они получали навыки, продвигаясь сквозь проект. Все было бы в порядке, если бы продукт не предназначался для поставки.

С занял это пространство на уже 30 лет, и нет никаких признаков, что он уходит. Он представляет наилучший выбор в данный момент. Я хотел бы, чтобы мы могли перейти к Аде, или, еще лучше, к СПАРКу. Но этого не произойдет, пока не будет доступно достаточное количество обученных инженеров.

Как Вы думаете, С и С ++ с нами навсегда?
Теги:
Хабы:
Всего голосов 16: ↑9 и ↓7+2
Комментарии31

Публикации

Истории

Ближайшие события

19 августа – 20 октября
RuCode.Финал. Чемпионат по алгоритмическому программированию и ИИ
МоскваНижний НовгородЕкатеринбургСтавропольНовосибрискКалининградПермьВладивостокЧитаКраснорскТомскИжевскПетрозаводскКазаньКурскТюменьВолгоградУфаМурманскБишкекСочиУльяновскСаратовИркутскДолгопрудныйОнлайн
3 – 18 октября
Kokoc Hackathon 2024
Онлайн
24 – 25 октября
One Day Offer для AQA Engineer и Developers
Онлайн
25 октября
Конференция по росту продуктов EGC’24
МоскваОнлайн
7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань