@eva_kotova

В чем преимущества использования С++ в embedded?

Имею опыт разработки на си под авр. Прекрасно понимаю почему этот язык используется в эмбеде.
Но на гитхабе автопилоты для БПЛА пишутся преимущественно на с++. Да и в целом большое количество проектов.
В чем преимущество использования с++?
  • Вопрос задан
  • 291 просмотр
Пригласить эксперта
Ответы на вопрос 3
mayton2019
@mayton2019
Bigdata Engineer
ООП и метапрограммирование.
Ответ написан
Комментировать
@dima20155
you don't choose c++. It chooses you
БПЛА, автопилоты сильно сложнее с алгоритмической точки зрения, чем отправить N байт по UART или переложить их в X регистр. Поэтому ответ тут такой же как и на вопрос: Почему для написания современных приложений зачастую используется С++, а не С.
Опять же, не стоит обобщать: довольно немалое количество компаний пишет свои автопилоты на чистом С из-за сертификации, каких-либо бюрократических требований.
Ответ написан
Adamos
@Adamos
C - прекрасный, универсальный, эффективный язык.
Но.
Если вам нужно не один раз написать, отладить и потом полвека пользоваться программой, а постоянно работать с ней и привлекать к разработке новых людей - у С серьезные проблемы с погружением в проект, слишком много подробностей сразу.
С++, благодаря уже стандартным архитектурным решениям ООП, позволяет сделать это погружение легким и постепенным - высокоуровневая логика четко отделена от возни с байтами и можно выбрать ту степень детализации, до которой тебе нужно разобраться с кодом, вообще не влезая на нижние уровни.

Конкретно embedded тут неважен, просто сейчас даже встройка стала достаточно богатой ресурсами, чтобы иметь возможность сместить баланс "оптимальность-гибкость" и "компактность-читаемость" вправо.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы