La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Programmation Orienté Objet en C++ Ricard julien.

Présentations similaires


Présentation au sujet: "Programmation Orienté Objet en C++ Ricard julien."— Transcription de la présentation:

1 Programmation Orienté Objet en C++ Ricard julien

2 Programmation Orienté Objet en C++ 2 Organisation Lundi 8h-12h * 10 semaines Cours / TD / TP Participation Contrôle des connaissances : DS promo 50 % + DS groupe 25% + TP 25% Projet C++ Lundi 2h + 2h * 7 semaines Et aujourdhui : Concept objets et les motivations du C++ Première classe C++ Points syntaxes TP

3 Programmation Orienté Objet en C++ 3 Concept dobjet Modulaire Monolithique Réflexion sur la vie dun logiciel Développement Maintenance Critères de qualités : Correction (ou validité) Extensivité Réutilisabilité Robustesse Modularité

4 Programmation Orienté Objet en C++ 4 Méthodes de conception Méthodes ascendantes Méthodes descendantes Exemple : mikado Exemple : Traitement dun flux dentrées Critères de qualités Compréhension modulaire Continuité modulaire Protection modulaire

5 Programmation Orienté Objet en C++ 5 Définition dun module Interface limité Communication limité Interface explicite Masquage des informations Correspond à des unités syntaxiques du langage Interface Données Fonctions

6 Programmation Orienté Objet en C++ 6 La réutilisabilité Un bon module doit pouvoir : Manipuler plusieurs types différentes Sadapter au différentes structures de données Offrir des opérations sans connaître limplémentation factoriser les opérations communes à un groupe de module Définition de nouvelles techniques: La surcharge La généricité

7 Programmation Orienté Objet en C++ 7 Principe de la conception objet Approche traditionnelle Organiser autour du traitement Algorithmes + Structures de données = Programme Fonction 1 Structures de données Fonction 2 Fonction 3 Fonction n

8 Programmation Orienté Objet en C++ 8 La conception objets Organiser autour des données à manipuler Données Fonctions de manipulations et de traitements Objet

9 Programmation Orienté Objet en C++ 9 Objet en C++ typedef struct { int jour; int mois; int année; } Date; void initData(Data d,int j,int m,int a){ d.jour=j; d.mois=m; d.année=a; } int main(){ Date d; initData(d,2,2,2004); return 0; } Class Date { public : void initData(int j,int m,int a); protected: int _jour; int _mois; int _année; }; Date::initData(int j,int m,int a){ _jour=j; _mois=m; _année=a; } int main(){ Date d; d.initData(2,2,2004); return 0; } Programme C Programme C++

10 Programmation Orienté Objet en C++ 10 Interface dune classe Section public Attributs public Méthodes public Constructeur Destructeur Fonction daccès Section protected Attributs public Méthodes public Section private Attributs public Méthodes public class Date { public : int var1; Date(); ~Date(); void initialiser(int j,int m,int a); void afficher(); int getJour(); int getMois(); int getAnnee(); setJour( int j); setMois(int m); setAnnee(int a); protected: int _jour; int _mois; int _année; void _test(); private: };

11 Programmation Orienté Objet en C++ 11 Implantation dune class Définition des méthodes de la class : Constructeur Destructeur Fonction daccès Date::Date(){ _jour=0; _mois_0; _annee=0; } Date::~Date(){} void Data::afficher(){ cout << "la date : " << _jour ; cout << "/" << _mois ; cout << "/" << _annee << endl; } int Data::getJour() {return _jours;} int Data::getMois() {return _mois;}; int Data::getAnnee(){return _annee;} Data::setJour(int j) {_jour =j;} Data::setMois(int m) {_mois =m;} Data::setAnnee(int a){_annee=a;}

12 Programmation Orienté Objet en C++ 12 Entrée sortie Nouvelle librairie C++ : #include Commentaires printf( bonjours a tous \n); printf( i= %d \n,i); printf( f= %f \n,f); printf( c= %c \n,c); printf( s= %s \n,s); printf( f= %f \n,f); scanf(%d,&i); scanf(%f,&f); scanf(%c,&c); scanf(%s,&s) cout << bonjour a tous !!! << endl; cout << i= << i << endl; cout << f= << f << endl; cout << c= << c << endl; cout << s= << s << endl; cout << f= << f << endl; cin >> i; cin >> f; cin >> c; cin >> s; /* commentaire sur plusieurs lignes */ // Commentaire sur une seul ligne

13 Programmation Orienté Objet en C++ 13 Structure dun programme fonction principal : main int main(){... return ; } int main(int argc, char *argv[]){ /* Programme avec parametres argc : nombre de parametres ( y compris le nom du programme argv : tableau des parametres */ for( int i=0; i< argc;i++) cout << parametre << i << : << argv[i] << endl; return 0; } C:/programme/Debug> programme.exe il fait beau

14 Programmation Orienté Objet en C++ 14 Variables Définition des variables au fur et à mesure Constante Taille de tableaux Passage de paramètres int main(){ int a,b=0; a=12; int c; c=12*a+b; int j=0; for(int i=0; i< c;i++) j+=i; return 0; } const int taille=12; int b; b=taille; taille=b;

15 Programmation Orienté Objet en C++ 15 Allocation dynamique int main(){ int i; const int taille=10; // Allocation int *pointeur= (int*)malloc(sizeof(int)); int *tab= (int*)malloc(sizeof(int)*taille); // utilisation for(i=0;i

16 Programmation Orienté Objet en C++ 16 Tableau en C++ Tableau statique Tableau dynamique int tab[10]; Date tabDate[10]; Int* tab= new int[10]; Date* tabDate= new Date[10];

17 Programmation Orienté Objet en C++ 17 Pointeurs et références Designe une espace mémoire int c; int *p; P = new int ;


Télécharger ppt "Programmation Orienté Objet en C++ Ricard julien."

Présentations similaires


Annonces Google