Présentation PowerPoint
Transcription
Présentation PowerPoint
software academy Programmation orientée-objet en C++ pour l’automatisation et l’embarqué Le C++ pour l’innovation mécatronique Public cible Avec la sophistication des applications, le logiciel est devenu la clé du succès d’un produit mécatronique, en apportant l’opportunité de se démarquer sur les plans des fonctionnalités, des performances et de la facilité d’utilisation. Ce cours est destiné aux développeurs de logiciels professionnels de l’automatisation et du monde de l’embarqué qui souhaitent bénéficier de la puissance offerte par l’orientation objet. Tous les fabricants de machines ont aujourd’hui l’opportunité de faire ce pas, le support du langage C++ étant largement disponible, autant dans le monde de l’embarqué que dans celui des PLC avec de grands acteurs tels que Beckhoff et B&R. La réponse aux besoins toujours plus importants des applications a été jusqu’alors focalisée sur le matériel : augmentation de la puissance de calcul et de la capacité des périphériques. Les opportunités en découlant requièrent de nouvelles solutions logicielles pour gérer l’augmentation des exigences fonctionnelles et la complexification des systèmes mécatroniques. L’approche orientée objet est la réponse du génie logiciel pour gérer la complexité. Appliquée à l’automatisation, elle change la donne et ouvre de nouveaux horizons: ce nouveau paradigme permet de maîtriser la complexité des applications les plus sophistiquées tout en en garantissant la souplesse et l’évolutivité, pour profiter efficacement des opportunités du marché. A la fin du cours, les participants seront capables de développer en C++ et de comprendre comment exploiter efficacement les notions orientées objet. Le langage C++ permet d’exploiter les nouvelles possibilités offertes par le paradigme orienté objet tout en garantissant une exécution temps réel, permettant d’imaginer les applications du futur autrement et d’innover sans limites. Les participants seront notamment sensibilisés aux éléments liés à l’exécution temps-réel d’un processus avec notamment la maîtrise de l’allocation dynamique de mémoire. Exploiter la force de l’orienté objet dans l’automatisation Par rapport à l’approche procédurale, les langages orientés objet offrent des avantages considérables reconnus, en supportant une programmation calquée sur la compréhension naturelle. La structure du logiciel gagne ainsi en clarté et en lisibilité, la maintenance et l’évolution de l’application en sont facilités. De nouvelles perspectives de modularité et d’extensibilité sont ouvertes. Par ailleurs, l’approche orientée objet révolutionne la programmation dans l’automatisation grâce aux notions d’héritage et de polymorphisme qui rationalisent et simplifient de façon drastique les applications. Enfin, en offrant la possibilité de créer un code réutilisable, l’approche orientée objet ouvre la voie de la factorisation du code et décuple ainsi l’efficacité du développeur. 1-jour de cours Connaitre le langage C++ Cette première partie du cours se focalise sur les notions permettant une bonne maîtrise de spécificités du langage C++ : - Structuration d’un projet, espaces de nommage. - les types de données spécifiques du C++. - « Surcharge » des fonctions. - Utilisation de librairies C dans C++. - Notion de « références », exploitation à la place des pointeurs pour des applications plus robustes. - - Exploitation des « exceptions » pour une gestion élégante des erreurs et une meilleure lisibilité du code. Compréhension et maîtrise de l’allocation dynamique de mémoire pour des applications agiles et performantes, compatibles avec les contraintes temps-réel. Puissance de l’orientation objet avec C++ Découverte des possibilités orientées objet du langage C++ : - Créer des fonctionnalités encapsulées et garantir leur indépendance grâce aux modificateurs de visibilité - Les mécanismes orientés objets fondamentaux : notions de méthode, de classe, pointeur «this», accesseurs - constructeur/destructeur : créer et détruire un objet proprement - Instanciation dynamique ou statique des objets - Exploiter les opérateurs en les « surchargeant » Implémenter les principes de l’orientation objet en C++ : héritage, polymorphisme, méthode virtuel. Eléments avancés du langage C++ Exploration des caractéristiques avancées du langage C++ : - La généricité : comprendre les principes et apprendre à l’exploiter, dans le but de générer un code hautement réutilisable. - Aperçu de la Standard Template Library. sensibilisation aux limites de l’utilisation de la STL dans le contexte des applications tempsréel. - Autres bibliothèques disponibles. Objectis SA Avenue des découvertes 18 CH-1400 Yverdon-les-Bains [email protected] www.objectis.ch