Introduction
En termes de programmation, il y a eu plusieurs volutions successives. Parmi lesquelles on peut citer la programmation procdurale et la programmation oriente objet. Pour voir quel cheminement le programmeur a d suivre pendant ces dernires annes, on propose de mettre en parallle ces deux techniques de programmation puis de mettre laccent sur la programmation oriente objet, sur quelques langages orients objets et environnements de dveloppements intgrs.
I.
programmes en fonction des sous-tches excuter, afin de pouvoir en grer la complexit. Ce type de programmation, tient avant tout compte des traitements et peut tre rsum par la question : Que doit faire le programme ? . Cette approche allge le travail du programmeur, les tests et la maintenance des programmes.
Si vous crivez un compilateur, vous oublierez donc (pour quelques temps) sa tche apparente (traduire un programme dun langage vers un autre) pour vous concentrer sur les structures de donnes quil manipule (texte source, arbre syntaxique, ...) Un programme de comptabilit sera bti, non pas autour de sa fonction principale, mais autour des objets quil traite : comptes, tats, critures, La rsolution dun problme consiste ainsi en une interaction entre diffrents objets. La subdivision classique dun programme en donnes et instructions de traitement est radicalement modifie avec la POO. Elle est supplante par la constitution dobjets synthtisant les donnes et les traitements effectus sur elles. La rsolution dun problme fait exclusivement appel des messages changs entre ces objets.
Crer les produits Classer les produits Modifier les produits Afficher les produits Ajouter les produits au panier Acheter les produits
Dans un systme orient objet l'application entire pourrait ne fonctionner qu'avec quelques objets, chacun responsable d'un aspect prcis du systme:
1.3.2 Tableau de comparaison : Approche par Traitements/Approche par Objets Le tableau suivant permet de comparer entre les deux approches de programmation par traitements dune part et par objets dautre part.
Programmation oriente objet Approche par Traitements Que doit faire le programme ? Principe: Analyse Approche par Objets
descendante qui consiste diviser la non pas sur ce quil fait, mais sur les objets quils tche accomplir en sous-tches moins manipulent auxquels on associe des traitements. complexes. Avantages: facile programmer car elle fait appel un raisonnement logique que chacun sait faire Avantages : la POO privilgie : La rutilisabilit : un composant logiciel doit tre organis autour dune structure de donnes complte et non pas seulement assurer une fonction unique, aussi importante soit-elle. En dautres termes ce ne sont pas des programmes quil faut pouvoir rutiliser, mais bien plutt des structures de donnes compltes. Lextensibilit : Lintrt des mthodes oriente objet dcoule ici dune remarque empirique : si lon observe lvolution dun logiciel dune certaine taille, on constate que les fonctions demandes au systme changent tout au long de sa vie active; les objets auxquels sappliquent ces fonctions, en revanche restent plus stables. Pour prserver la souplesse et lextensibilit du systme, mieux vaut btir sa structure sur ses caractristiques les plus durables.
naturellement. Problmes: Ne favorise pas les critres de : Rutilisabilit : les procdures ne sont pas gnrales, mais adaptes aux sous problmes pour lesquels elles ont t conues. Extensibilit: larchitecture du
logiciel est fonde sur les traitements, or ces derniers sont moins stables que les donnes. Do cette approche est inadapte la conception de gros logiciels.
II.
Le fonctionnement du systme global reposait sur l'change de messages d'information entre les diffrents composants. Chaque composant logiciel tait conu par un spcialiste et possdait ses donnes prives. De mme, le composant tait virtuellement isol du reste du programme par l'ensemble de ses mthodes servant d'interface.
C# est un langage orient objet dvelopp par Microsoft pour permettre la cration d'une large gamme d'applications. Ce langage est conu pour offrir un dveloppement rapide au programmeur C++ sans sacrifier les qualits de puissance et de contrle qui sont la marque du C et du C++.
III.
Un environnement de dveloppement est un ensemble doutils qui, en plus des tches classiques dun langage de programmation offre des fonctionnalits tendues permettant de couvrir une plus large partie du cycle de cration dun logiciel. On peut distinguer des tches telles que : Compilation et dbogage Dploiement de lapplication. Outils de test et de vrification. Outil de cration graphique (icne). Interfaage avec les SGBD. Gnrateur de menus. Un ensemble dassistants.
QCM
Rpondez aux questions en cochant la rponse. 1. La programmation procdurale rpond la question : A Que doit faire le programme ? B C Quelles sont les donnes manipuler ? Sur quoi porte le programme ?
2. La programmation procdurale consiste : A subdiviser les tches rsoudre en sous-tches appeles procdures. B C regrouper en modules les procdures requises. regrouper en procdures les modules requis.
3. La programmation procdurale privilgie : A La modularit B La rutilisabilit C lextensibilit 4. Quel est le plus ancien des langages orientes objets ? A Smalltalk B C++ C Simula 5. La meilleure faon de dcrire les systmes informatiques est de se fonder sur : A ce quils font. B les modules quils manipulent. C les objets quils manipulent. 6. Lexprience a montr que : A les traitements sont ce quil y a de plus stable dans la vie dun programme. B les donnes sont ce quil y a de plus stable dans la vie dun programme. C il est intressant darchitecturer le programme autour de ses traitements. 7. Les mthodes et langages objets ont t invents : A au dbut des annes 70. B la fin des annes 70. C la fin des annes 60.