Le langage par excellence de l'embarqué et des microcontrôleurs est indubitablement le C, car celui-ci offre la proximité adéquate avec le matériel et permet d'atteindre des performances acceptables lorsqu'on ne souhaite pas toucher à l'assembleur. Mais le C arrive avec son lot de difficultés, inhérentes à sa nature permissive, et exige énormément de rigueur de la part du développeur. Des alternatives existent, l'une d'elles est le langage Go et il est parfaitement utilisable sur microcontrôleur.
Loin de moi l'idée de mettre dos à dos des langages qui, par ailleurs, se complètent généralement très bien. Cependant, force est de constater que la permissivité du C semble faire de plus en plus peur, au point qu'on désigne tantôt le langage comme « non sûr », malgré le fait que nombre de failles assez catastrophiques dernièrement concernent des langages de bien plus haut niveau. Quoi qu'il en soit, la tendance est donc à limiter l'utilisation du C (et du C++) pour se tourner vers des langages décrits comme plus robustes. Deux d'entre eux se partagent la vedette dans ce domaine en ce moment : Rust et Go.
Si, comme moi, vous êtes un grand amateur de C (voire d'assembleur), mais que les sirènes de la modernité vous poussent à élargir vos horizons, peut-être hésitez-vous entre Rust, qui est sur le point d'intégrer le noyau Linux et Go, qui compte parmi ses géniteurs nul autre que Ken Thompson (inventeur du langage B, prédécesseur du C de Dennis Ritchie,...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première