Les outils modernes fournis avec la bibliothèque standard du C++11 permettent de combattre les fuites de mémoire et les erreurs plus facilement et plus efficacement. Parfois, les problèmes qui ne semblent apparemment pas dangereux peuvent planter votre application. Nous allons apprendre comment les traquer et les éviter. Traduit par Eric GERARD Lire le tutoriel 9 commentaires
Dans la première partie de Programmation des applications modulaires en C++, je vous ai montré quelques exemples pratiques d'applications modulaires. Ces applications fonctionnent probablement correctement avec vos plugins dédiés. Les problèmes surviennent lorsque vous essayez de mélanger des plugins écrits par vos utilisateurs compilés à l'aide de compilateurs différents (cela peut fonctionner) ou bien pour des systèmes d'exploitation différents (cela ne peut pas fonctionner !).
Lorsque nous concevons de véritables applications, nous ne pouvons utiliser cette approche que très rarement. Nous n'avons la garantie que les plugins, issus de bibliothèques partagées liées dynamiquement, fonctionneront comme ils le doivent que si nous les compilons avec la même version de compilateur et de système d'exploitation que ceux utilisés pour produire les fichiers binaires des applications. La deuxième restriction avec l'approche que j'ai présentée dans les deux derniers articles (introduction et première partie) est que ces programmes fonctionneront seulement avec certains systèmes compatibles UNIX. Si nous avons besoin d'applications modulaires portables, nous devons utiliser des bibliothèques dédiées qui proposent des interfaces portables. Un exemple de ce type de bibliothèques est Poco::SharedLibrary. J'écrirai quelque chose là-dessus plus tard.
Traduit par Eric GERARD
Lire le tutoriel
9 commentaires
Dans l'Introduction à la programmation d'applications modulaires en C++, j'ai décrit quelques exemples simples. Dans cette partie, je vais vous montrer des applications plus sophistiquées qui utilisent également des modules. Les exemples de cette partie seront orientés objet et présenteront une approche plus professionnelle de la programmation d'applications modulaires.
Dans cette partie, je vais vous montrer deux exemples. Le premier est la solution de l'exercice que je vous ai donné à la fin du dernier article. On vous demandait d'écrire une calculatrice qui pouvait additionner des nombres, les soustraire et charger des modules pour effectuer d'autres opérations. Le deuxième exemple, que je vais écrire pour vous, est un interpréteur système (également appelé ligne de commande).
Traduit par Eric GERARD
Lire le tutoriel
9 commentaires
Aujourd'hui, pratiquement toute application peut être étendue avec de nombreux types différents de greffons ou de plugins. Grâce à ceux-ci, nous pouvons écrire de nouvelles fonctions pour nos applications préférées sans les recompiler chaque fois que nous voulons les étendre ou les modifier. Je vais vous dire comment écrire une application modulaire en C++. Traduit par Eric GERARD Lire le tutoriel 9 commentaires