1 / 35

Cours d ’Informatique, DEUG 2 MASS/MIASS UVSQ

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

vivi
Download Presentation

Cours d ’Informatique, DEUG 2 MASS/MIASS UVSQ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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. NOTION ACQUISES : - 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

  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. Définir le mot Définition générale et complète Définir par les besoins Définir une entité : Implantation mémoire Notions de type : Opération réalisable Programmation orientée par les traitements : programmes impératifs Programmation orientée par les données : programmes objets

  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 entrants FLUX (ou flots) Deux types de sortie de données - Affichage, - Fichiers sortants

  11. Flux en JAVA : objet associé à une source et/ou une destination de données (interne ou externe) 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)

  12. Nom du flux = indication globale Avec traitement : type de traitement/stockage Préfixe = Sans traitement : type de la source/destination Suffixe = nature (caractères ou octets) et sens (lecture ou écriture) 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 : classe générale de flux d ’entrée dont dérivent les autres (cf. aussi la classeOuputStream) 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 »

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

  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. Capture ? PAS SEULEMENT Tant que 1=1 faire Tant que NON(Evt) faire Rien Selon que Evt=evt1: action1 Evt=evt2: action2 ….. Instruction bloquante ? NON Tant que 1=1 faire Saisir(X) Afficher(X) Appels Système

  20. Logiciel STIMULI Système Act. 2 Act. 1 Act. 3 Act. 4 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 Fenêtres, messages, boutons, sons,.. Clavier, souris, .., micros, ..

  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 1 Bouton 2 Gestion d ’interface - affichage initial - raffraichissement - ... Evt Act. 1 Act. 2 Click + Posit. Gestion des Evènements Système

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

  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 - dessiner - écrire du texte - afficher une image Utilisation des objets de la classe Canvas 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. 4 types possibles : - Souris - Clavier - Action - Autre GESTION DES EVENEMENTS Objet de java.awt.Event Fonction membre public boolean handleEvent Evènement 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 Appel Instruction 2 Instruction 3 Appel Primitive Instruction k opération

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

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

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

  34. Object Throwable Exception Error StackOverflowError OutOfMemoryError RuntimeException Exceptions contrôlées (devant être capturées par le programme) 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 parthrow catch (ClasseException exceptionInterceptee) Bloc Instructions traitant l ’exception capturée ... Public class Clas2 { … public int fonct1 () throws Except1 { try { …. } catch (Exception e1) { throw new Except1 (e1,3); } Clas2 v= new Clas2 (); try { … x=v.fonct1(); } catch (Except1 e) { … }

More Related