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

Cours d Informatique, DEUG 2 MASS/MIASS UVSQ Présentation générale, rappel de notions acquises, présentation du projet. Gestion de fichiers, application.

Présentations similaires


Présentation au sujet: "Cours d Informatique, DEUG 2 MASS/MIASS UVSQ Présentation générale, rappel de notions acquises, présentation du projet. Gestion de fichiers, application."— Transcription de la présentation:

1 Cours d Informatique, DEUG 2 MASS/MIASS UVSQ Présentation générale, rappel de notions acquises, présentation du projet. Gestion de fichiers, application en JAVA Gestion des évènements, gestion d interfaces en JAVA Gestion des erreurs et exceptions. Applets et HTML Notions de théorie de la complexité Arbres et récursivité Notions de théorie des graphes et applications

2 - problèmes à résoudre - algorithme, boucles - structures de données, variables et type - classes et objet - langage, compilation, interprétation - complexité d un algorithme - algorithmes de tri NOTION ACQUISES :

3 ENTIER : - qui forme un tout, à qui rien ne manque - nombre formé d une somme d unités ENTIER : - k octets consécutifs en mémoire - comparaison, somme, produit,.. avec entiers et réels

4 Programmation orientée par les traitements : programmes impératifs Programmation orientée par les données : programmes objets Notions de type : Implantation mémoire Opération réalisable Définir une entité : Définir le mot Définition générale et complète Définir par les besoins

5 RAPPEL DE NOTIONS - Algorithmes de TRI : 2 principes - Classes et instances (=objets) - Gestion mémoire (application JAVA)

6 Fichiers et entrées-sorties - Notions de fichiers. - Fichiers en JAVA. - Fichiers et flots. - Exemples JAVA.

7 NOTIONS DE FICHIERS : - pour un humain analogie avec la bureautique 3 types = lisible (par un éditeur), de données (par un programme), exécutable (par le système) - pour un programme mode d accès, gestion système, notion de flux exemples pour COBOL, C, JAVA - pour le système (exemple d UNIX) unité de stockage, pas de type à priori

8 COBOL, langage C, JAVA Enregistrements données formatées flux Opérations de base : - Lecture, recherche - Ecriture, Mise à jour - Tri, fusion Type d accès : - séquentiel - séquentiel indexé - direct Stockage : - disque - mémoire - mémoire virtuelle

9 Remarques en vrac : - lien format - type - logiciel - notions de moulinettes ou traducteurs - vision UNIX du « tout fichier »

10 Entrées-Sorties en JAVA Trois types d entrée de données - Arguments du programme, - Saisies par l utilisateur, - Fichiers Deux types de sortie de données - Affichage, - Fichiers FLUX (ou flots) entrants sortants

11 Deux types de flux : - standards (entrée, sortie, erreur) - défini (package java.io) Deux types d accès : - séquentiel (nature, sens, type) avec ou sans traitement - séquentiels indexés (classe RandomAccessFile) (position en #octets, bidirectionnel) Flux en JAVA : objet associé à une source et/ou une destination de données (interne ou externe)

12 Nom du flux = indication globale Préfixe = Suffixe = nature (caractères ou octets) et sens (lecture ou écriture) Avec traitement : type de traitement/stockage Sans traitement : type de la source/destination SUFFIXES : Flux d entrée Flux de sortie flux de caractères Reader Writer flux d octets InputStream OutputStream

13 PREFIXE SANS TRAITEMENT (ou FILTRE) : Source ou destination Prefixe tableau de caractères CharArray flux d octets InputStream (OutputStream) chaine de caractères String programme Pipe fichiers File tableau d octets ByteArray objet Object

14 PREFIXE AVEC TRAITEMENT/STOCKAGE (ou FILTRE) Traitement Préfixe tampon Buffered concaténation de flux d entrée Sequence conversion de données Data numérotation des lignes LineNumber lecture avec retour arr. PushBack impression Print Voir package java.io

15 InputStream flux1 = new FileInputStream (« file »); InputStream flux2 = new BufferedInputStream (flux1); InputStream flux3 = new LineNumberInputStream (flux2); InputStream flux4 = new DataInputStream (flux3); Flux4 : flot d entrée de données typées, dont on peut compter le nombre de lignes, lues depuis un buffeur capturant les données d un fichier « file » InputStream : classe générale de flux d entrée dont dérivent les autres (cf. aussi la classe OuputStream)

16 FLUX ET FICHIERS Objets des classes java.io.FileInputStream et java.io.FileOuputStream Objets des classes java.io.FileReader et java.io.FileWriter Fichiers d octets : Fichiers de caractères : Fichier « général » : Objet de la classe java.io.File

17 File f = new File(« fichier.mp3 »); FileInputStream fis = new FileInputStream(f); DataInputStream dis = new DataInputStream(fis); Int a = dis.readInt(); short s = dis.readShort(); boolean b = dis.readBoolean(); BufferedReader entree = null; DataInputStream clacier = new DataInputStream(System.in); String nomFicEntr = clavier.readline(); entree = new BufferedReader(new FileReader(nomFicEntr));

18 Interface et Evènements - Principes de la programmation. Évènementielle. - Interface graphiques. - Interface et évènements en JAVA. - Dessiner en JAVA.

19 Programmation évènementielle : concevoir un programme comme une entité normalement inactive qui réagit de facon particulière à chaque événement (prévu) qui intervient. Instruction bloquante ? NON Tant que 1=1 faire Saisir(X) Afficher(X) Capture ? PAS SEULEMENT Tant que 1=1 faire Tant que NON(Evt) faire Rien Selon que Evt=evt1: action1 Evt=evt2: action2 ….. Appels Système

20 Logiciel Act. 1 Act. 2 Act. 3Act. 4 STIMULI Système Exécutions non bloquante

21 Interface (Homme-Machine) : Application et/ou matériels permettant à un utilisateur et un programme de communiquer Interface graphique : interface logicielle consistant en un ensemble d éléments graphiques, dont certains interactifs Clavier, souris,.., micros,.. Fenêtres, messages, boutons, sons,..

22 HISTORIQUE PASCAL : dessins sommaires Positions du curseur Capture retour/chariot C, C++ : associé à des outils externes, (Xmotif,..), dépendants du système JAVA : bibliothèque propre

23 Bouton 1Bouton 2 Gestion d interface - affichage initial - raffraichissement -... Gestion des Evènements Act. 1Act. 2 Système Click + Posit. Evt

24 Component Choice Checkbox Container Button Canvas Window Dialog Frame Applet Panel Composition d autres composants Groupe d objet dans une fenêtre Fenêtres indépendantes Fenêtres simples sans menu Fenêtres principales Boutons

25 Positionnement d éléments graphiques dans une fenêtre FRAME Utilisation du champs LayoutManager d un Container FlowLayout (gauche à droite, haut en bas) BorderLayout (Nord, sud, est, ouest, centre) GridLayout (grille carrées )... Valué par la fonction membre setLayout Ajout d un élément graphique dans une fenêtre FRAME Fonction membre add : add (Component c) add (Component c, int i) add (String s, Component c);

26 Import java.awt.*; class exemple1 { static public void main () { Window w= new Frame (« exemple »); w.setlayout (new FlowLayout ()); w.add(new Label (« UN »); w.add (« Center », new Label (« DEUX »)); w.resize (200,200); w.show(); } exemple UN DEUX

27 DEFINITION DE ZONES DE DESSIN Utilisation des objets de la classe Canvas - dessiner - écrire du texte - afficher une image Redéfinition obligatoire de la méthode de tracage : paint(Graphics G) G : objet de la classe Graphics associé au contexte graphique dans lequel on veut dessiner

28 GESTION DES EVENEMENTS Evènement Objet de java.awt.Event 4 types possibles : - Souris - Clavier - Action - Autre Fonction membre public boolean handleEvent Méthode de Gestion Spécifique

29 Gestion des erreurs et Exceptions - Types de gestion d erreurs. - Exceptions : principe en JAVA. - Exceptions en JAVA : classes et. Exemples.

30 GESTION DES ERREURS Ordinateur Système Processus Instruction 1 Instruction 2 Instruction 3 Instruction k Appel Primitive opération

31 Processus X=Instruction 1 Instruction 2 X=Instruction 3 If X==-1 exit(-1); IF X==-1 { …. }... IF Z>0 Instruction k Solution 1 : gérer au coup par coup

32 Processus Instruction 1 Instruction 2 Instruction 3 Instruction k In next part, possibly :err1, err2, err3 If err1 : action1 If err2 : action2 If err3 : action3

33 Partie de code Système ex1 ex2 ex3 Capture et traitement des exceptions TRY THROW (autom.) CATCH (ou de base) Toute exception doit être explicitement levée (mais pas forcément explicitement capturée)

34 Object Throwable Error Exception RuntimeExceptionExceptions contrôlées (devant être capturées par le programme) StackOverflowError OutOfMemoryError NullPointerException IndexOutOfBoundsException IOExceptionArithmeticException Capturée par le gestionnaire de base si pas d autre traitement prévu

35 try Bloc instructions try susceptible de lever des exceptions automatiquement ou par throw catch (ClasseException exceptionInterceptee) Bloc Instructions traitant l exception capturée Clas2 v= new Clas2 (); try { … x=v.fonct1(); } catch (Except1 e) { … } Public class Clas2 { … public int fonct1 () throws Except1 { try { …. } catch (Exception e1) { throw new Except1 (e1,3); }...


Télécharger ppt "Cours d Informatique, DEUG 2 MASS/MIASS UVSQ Présentation générale, rappel de notions acquises, présentation du projet. Gestion de fichiers, application."

Présentations similaires


Annonces Google