Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial Internet of Things >> Embarqué

3 raisons de passer du C au C++

Pendant des décennies, il y a eu un débat parmi les ingénieurs en logiciels embarqués pour savoir s'ils devaient utiliser C ou C++. Pour la plupart, les logiciels fournis par les fabricants de microcontrôleurs sont fournis en C et en fait, 56% des logiciels embarqués sont écrits en C selon l'étude de marché 2019 Embedded. Cependant, le C++ gagne lentement en popularité et environ 23 % des nouveaux projets de logiciels embarqués sont écrits en C++. Avec C approchant de son 50 ème anniversaire, il est peut-être temps de commencer la transition du C au C++. Voici trois raisons pour lesquelles les développeurs devraient envisager d'effectuer le changement.

Raison 1 :Amélioration de la mise en œuvre de l'architecture

Le langage de programmation C fournit aux développeurs des fonctionnalités d'encapsulation et de polymorphisme de base via des pointeurs de fonction. Cependant, C est vraiment un langage procédural et ne fournit pas de mécanismes tels que l'héritage ou la composition sans effort supplémentaire. Cela peut rendre la conception architecturale globale du système moins idéale, ce qui peut alors affecter la façon dont le logiciel sera réutilisé et maintenu et même limiter sa flexibilité.

C++ offre aux développeurs la possibilité d'implémenter des modèles de conception véritablement orientés objet, de développer de véritables abstractions et d'implémenter des modèles de conception qui peuvent non seulement être réutilisés d'une application à l'autre, mais également améliorer la flexibilité d'une architecture. Cela permet au logiciel d'être réutilisé, ce qui à son tour peut entraîner un développement de produit plus rapide, des temps de personnalisation plus courts pour les applications clientes parmi de nombreux autres avantages.

Raison n°2 : C++ est un langage moderne en évolution

Dans l'environnement de développement complexe et innovant d'aujourd'hui, les développeurs ont besoin non seulement de solutions matérielles de pointe, mais également de solutions logicielles et linguistiques de pointe. Cela signifie que les langages utilisés pour écrire les logiciels doivent être à jour pour fournir aux développeurs les derniers outils dont ils ont besoin pour implémenter leurs systèmes. La dernière mise à jour du langage C date de 2018, ce qui semble avoir été mis à jour récemment. Cependant, si vous regardez la norme, aucune nouvelle fonctionnalité n'a été ajoutée et les seuls changements ont été de corriger les problèmes de la version précédente qui datait de 2011 ! Oui, il a fallu sept ans pour publier une norme révisée qui corrige les problèmes de cette dernière !

En ce qui concerne le C++, le comité des normes s'est engagé à mettre à jour la norme tous les trois ans ! La prochaine révision est attendue cette année, 2020, la dernière version étant publiée en 2017. Contrairement à C, les nouvelles révisions ne sont pas seulement des corrections de bogues, mais ajoutent plutôt de nouvelles fonctionnalités et fonctionnalités au langage afin qu'il puisse être à jour et fournir les outils nécessaires pour rivaliser avec d'autres langages comme Python. Les nouvelles normes suppriment même les fonctionnalités obsolètes telles que les trigraphes.

Raison n°3 : C++ est un langage plus riche

La plupart des logiciels embarqués que j'ai écrits pour les microcontrôleurs utilisaient le langage de programmation C jusqu'à il y a peut-être 3-4 ans. Le C++ a toujours offert un ensemble de fonctionnalités plus riche que le C, mais il semblait à cette époque que les compilateurs avaient atteint un point où le code compilé était équivalent ou meilleur. C'est à ce moment-là que j'ai commencé à me plonger dans le C++ et à découvrir à quel point le langage était devenu riche et combien il me restait à apprendre sur le langage.

C++ permet aux développeurs de profiter de fonctionnalités telles que :

Ce ne sont que quelques exemples et il y a tellement plus ! Tous ces outils facilitent la programmation d'un système embarqué.

Conclusion

C++ est un langage moderne et évolutif où C semble être statique et évoluer beaucoup plus lentement. En fait, C devient le dinosaure proverbial à une époque où les langages de programmation évoluent rapidement. Alors que les développeurs sont confrontés à une complexité croissante au sein de leurs systèmes, ils ont besoin d'un langage qui leur permet d'être flexible et de maximiser la réutilisation. De nombreuses plaintes des « anciens jours » ne s'appliquent tout simplement plus au C++, surtout compte tenu de l'efficacité des compilateurs C++. S'il y a eu un moment pour commencer la transition vers C++, c'est peut-être bien celui-ci.

Au cours des prochains articles, nous examinerons de plus près le C++ et la manière dont les développeurs peuvent l'exploiter pour concevoir et créer des pilotes pour les microcontrôleurs.


Embarqué

  1. Opérateurs C++
  2. Commentaires C++
  3. Cinq conseils pour passer de la conformité AOBRD à la conformité ELD
  4. Présentation de C++
  5. Constantes/littéraux C++
  6. Opérateurs en C++
  7. Les nombres en C++
  8. Références C++
  9. Modèles C++