Distinction : C++ & Java
En fonction du choix des logiciels :
Une grande partie des logiciels de base (càd le système lui-même) sont développés en langage
C (ou C++).
Le langage Java est essentiellement utilisé dans le développement des modules d’applications,
souvent orientée à l’utilisation sur le Web.
Ils sont des langages très proches l’un à l’autre (car ils sont des langages de 3ème génération,
L3G), mais dans l’architecture matériel, le langage Java est à un niveau plus évolué que le
langage C++.
Le langage 4ème génération (« L4G »)
Ce sont des langages de plus haut niveau. Ils sont utilisés dans le développement des
applications de gestion. On peut faire des paramétrages.
Ex : SAP, Windev
Orientation objet
Dans l’histoire des langages, il y a des langages :
Les tous premiers langages (de « rien du tout ») (non structuré)
Ex : FORTRAN, COBOL
Les langages sont des règles
1970 la naissance de la programmation structurée
Ex : Pascal (un langage spécifique pour l’enseignement de l’algorithme), Boucle,
Alternative
« Algorithme » : une suite ordonnée d’instruction pour passer à un résultat.
Langage C
« Programme = Algorithmes + Structure de données »
La modularité n’est pas assez fine et la réutilisation des modules est un problème : le
changement de la structure de données limite la modularité de l’algorithme.
Pour avoir une bonne réutilisation des modules, il nécessite une modularité beaucoup
plus fine, ce qui entraine une augmentation du nombre de toutes petites modules.
1980 Orientation objet
Ex : C++, Java
Le programme est vu comme résultant de l’interaction d’un ensemble d’objets.
C’est une modularité au niveau d’objet : on crée des tous petits objets.
Objet & classe
Objet
A l’exemple de moduliser un compte bancaire, un objet compose de 2 parties :
o Données (interne) : attributs (ex : soldes, etc.)
o Méthodes : comportements (ex : débiter, créditer, etc.)
Rq : les comportements vont changer l’état des données.
Ex : compte.debiter(1000)
D’où « compte » est un objet
« debiter » est une méthode