Monday, March 5, 2012

Cours en programmation : les g�neralit� en JAVA



 1   - Qu�est-ce que Java ?

Le langage Java a �t� introduit par la soci�t� SUN en 1995. Il poss�de de nombreuses caract�ristiques 
-   C�est un langage orient� objet
-  C�est un langage compil� : avant d��tre ex�cut�, il doit �tre traduit dans le langage de la machine sur laquelle il doit fonctionner
-          Il emprunte sa syntaxe en grande partie du langage C




-  Les programme Java peuvent �tre ex�cut�s sous forme d�applications ind�pendantes ou distribu�es � travers le r�seau et ex�cut�es par un navigateur Internet sous forme d�applets.

2        Pourquoi utiliser Java ? 

2.1  Le monde sans Java

Avec les langages �volu�s courant (C++, C, etc.) nous avons pris l�habitude de coder sur une machine identique � celle qui ex�cutera nos applications ; la raison est fort simple : � de rares exceptions pr�s les compilateurs ne sont pas multi-plateformes et le code g�n�r� est sp�cifique � la machine qui doit accueillir. Nous devons alors utiliser ncompilateurs diff�rents sur nmachines. Aujourd�hui, la g�n�ralisation des interfaces graphiques et l�usage de langage plus �volu�s compliquent encore d�avantage le probl�me. Ainsi pour d�velopper une application destin�es � plusieurs syst�mes d�exploitation avec ses diff�rentes couches de librairies et d�interfaces ; les API de ces interfaces �tant toutes diff�rentes. Ainsi nos applications sont fortement d�pendantes des ressources (y compris graphique) du syst�me h�te, d�pendantes des API des interfaces utilis�es, et le code produit ne peut s�ex�cuter que sur le syst�me pour lequel il a �t� initialement produit.

2.2  Le monde avec Java 

Tout d�abord, Java simplifie le processus de d�veloppement : quelle que soit la machine sur laquelle on code, le compilateur fournit le m�me code. Ensuite, quel que soit le syst�me utilis� cet unique code est directement op�rationnel:  En effet, la compilation d�un source Java produit du pseudo-code (byte code) Java qui sera ex�cut� par tout interpr�teur Java sans aucune modification ou recompilation. Cet � interpr�teur � est couramment d�nomm� � machine virtuelle Java �.

3        Utilisation du JDK (Kit de d�veloppement Java)

Permet le d�veloppement de programmes en Java. Il est constitu� de plusieurs outils tel que :

-          javac.exe : compilateur
-          java.exe : interpr�teur
-          jdb.exe : debugger�
et d�une importante librairies de classe (API).

T�l�chargement :


Configuration :

Chemin d�acc�s aux ex�cutables

En supposant que vous avez choisi la version windows 98. Vous devez modifier la variable PATHdu fichier autoexec.bat :

-          Ouvrez � l�aide d�un �diteur de texte, le fichier autoexec.batse trouvant dans la racine du disque dur
-          Localisez la ligne commen�ant par set path et ajoutez � la fin de celle-ci : set path = c:\jdk1.2\bin

La variable d�environnement �path� indique � Windows le chemin d�acc�s qu�il doit utiliser pour trouver les programmes ex�cutables.  Windows cherche les programmes ex�cutables tout d�abord dans le dossier � partir duquel la commande est tap�e, puis dans les dossiers dont les chemins d�acc�s sont indiqu�s par la variable � path �.
  
Chemin d�acc�s aux classes Java

Le chemin d�acc�s aux classes Java peut �tre configur� exactement de la m�me fa�on � l�aide de la variable classpath.

4        Syntaxe du langage Java

4.1  Type de variables

En Java on dispose des m�mes types qu�en langage C (int, float, char�). On dispose d�en plus du type boolean (1 bit). Ce type a deux valeurs possibles false et true (initialisation � false).

4.2  Op�rateurs

Op�rateurs arithm�tiques

+          -           *          /           %         ++       --

Op�rateurs d�affectation

=          +=       -=        *=        /=

Op�rateurs de comparaison

<          >          <=       >=

Op�rateurs logiques

!           &&      ||         


4.3  Structures de contr�le et d�branchements

Boucles r�p�titives

while               do�while                  for

Instructions pour faire des choix       

if�else           switch�case

5 Principe de la programmation en Java : l�orient� objet

Un programme structur� (Pascal, C�) est compos� de fonctions ind�pendantes constitu�es d�instructions simples et structur�s.  Ainsi, les donn�es et les fonctions qui op�rent sur elles sont s�par�es. Les donn�es apparaissent g�n�ralement en t�te du programme et sont donc visibles de toutes les fonctions qui suivent. Cette organisation pose le grave probl�me des effets de bord. En entrant dans une fonction, on est jamais assur� de trouver les donn�es dans l��tat attendu, car n�importe quelle autre fonction, m�me si ce n�est pas son r�le, peut les modifier. De plus, � cause de cette s�paration entre donn�es et fonctions, de profonds bouleversements du programme sont n�cessaires quand les structures de donn�es sont modifi�es. La solution � ces probl�mes est la programmation objet. Elle est bas�e sur trois principes fondamentaux : l�encapsulation, l�h�ritage, et le polymorphisme.

5.1 L�encapsulation

L�encapsulation des donn�es est le premier et le plus important des concepts de la programmation objet. Il stipule que les donn�es et les fonctions qui op�rent sur elles sont encapsul�es dans des objets. Les seules fonctions a �tre autoris�es � modifier les donn�es d�un objet sont les fonctions appartenant � cet objet. Depuis l�ext�rieur d�un objet, on ne peut le modifier que par des fonctions faisant office d�interface. Ainsi, il n�est plus � craindre que des fonctions modifient ind�ment des donn�es.

5.2 L�h�ritage  

Les objets, comme les donn�es, poss�dent un type que l�on appelle classe. Les classes peuvent �tre organis�es en hi�rarchies, chaque classe h�ritant de sa classe m�re ou super-classe. L�h�ritage est ainsi source d��conomie de code, une classe peut �tre d�finie comme la descendante d�une classe (ou sous-classe).


5.3 Le polymorphisme 

Le troisi�me principe de base de la programmation objet est le polymorphisme. Il passe plus inaper�u que les pr�c�dentS. Des fonctions diff�rentes dans les classes diff�rentes peuvent prendre le m�me nom. Ainsi, dans une hi�rarchie de classes d��l�ments graphiques la fonction dessiner( ) aura le m�me nom pour un polygone ou un cercle, cependant les techniques utilis�es pour dessiner ces �l�ments sont diff�rentes. Le polymorphisme est beaucoup plus puissant qu�il n�y para�t � premi�re vue. Il fait �conomiser des identificateurs de fonctions et rend les notations plus lisibles.

No comments:

Post a Comment