Génie Logiciel. 1 - Présentation du langage Java. Idir AIT SADOUNE

Dimension: px
Commencer à balayer dès la page:

Download "Génie Logiciel. 1 - Présentation du langage Java. Idir AIT SADOUNE"

Transcription

1 1/55 Génie Logiciel 1 - Présentation du langage Idir AIT SADOUNE CentraleSupélec - Département Informatique 3, rue Joliot-Curie, Gif-sur-Yvette cedex < <idir.aitsadoune@centralesupelec.fr> Année scolaire , Séquence 4

2 2/55 Plan

3 3/55 Plan

4 /55 Généralités est un langage de programmation informatique développé par Sun Microsystems en 1995

5 4/55 Généralités est un langage de programmation informatique développé par Sun Microsystems en 1995 et racheté en 2009 par Oracle.

6 5/55 Généralités est un langage de programmation impératif et orienté objet (en tout est objet sauf les types primitifs).

7 5/55 Généralités est un langage de programmation impératif et orienté objet (en tout est objet sauf les types primitifs). Langage impératif un programme est une séquences d instructions exécutées pour modifier des (état du programme).

8 5/55 Généralités est un langage de programmation impératif et orienté objet (en tout est objet sauf les types primitifs). Langage impératif un programme est une séquences d instructions exécutées pour modifier des (état du programme). Langage objet voir le prochain chapitre

9 /55 Généralités permet de développer différents types d applications

10 /55 Généralités permet de développer différents types d applications des applications avec des interfaces graphique (bibliothèque AWT/Swing)

11 6/55 Généralités permet de développer différents types d applications des applications avec des interfaces graphique (bibliothèque AWT/Swing) des applications client-serveur (technologies web, servlets, applets)

12 6/55 Généralités permet de développer différents types d applications des applications avec des interfaces graphique (bibliothèque AWT/Swing) des applications client-serveur (technologies web, servlets, applets) des applications lourdes (Jude, Oracle SQL Worksheet, etc.)

13 /55 Généralités permet de développer différents types d applications des applications avec des interfaces graphique (bibliothèque AWT/Swing) des applications client-serveur (technologies web, servlets, applets) des applications lourdes (Jude, Oracle SQL Worksheet, etc.) des applications pour appareils mobiles/embarqués (J2ME)

14 /55 Généralités permet de développer différents types d applications des applications avec des interfaces graphique (bibliothèque AWT/Swing) des applications client-serveur (technologies web, servlets, applets) des applications lourdes (Jude, Oracle SQL Worksheet, etc.) des applications pour appareils mobiles/embarqués (J2ME) des applications pour l entreprise (J2EE)

15 6/55 Généralités permet de développer différents types d applications des applications avec des interfaces graphique (bibliothèque AWT/Swing) des applications client-serveur (technologies web, servlets, applets) des applications lourdes (Jude, Oracle SQL Worksheet, etc.) des applications pour appareils mobiles/embarqués (J2ME) des applications pour l entreprise (J2EE) et d autres...

16 Les outils nécessaires I Les programmes écrits en sont portables sur différents systèmes d exploitation. Cette portabilité est assurée par la machine virtuelle (JVM). 7/55

17 Les outils nécessaires I Les programmes écrits en sont portables sur différents systèmes d exploitation. Cette portabilité est assurée par la machine virtuelle (JVM). I JRE ( Runtime Environment) : implémente la machine virtuelle de (JVM) 7/55

18 Les outils nécessaires I Les programmes écrits en sont portables sur différents systèmes d exploitation. Cette portabilité est assurée par la machine virtuelle (JVM). 7/55 I JRE ( Runtime Environment) : implémente la machine virtuelle de (JVM) I JDK ( Development Kit) : offre des outils pour développer, compiler, débuguer... des applications

19 8/55 Les outils nécessaires

20 9/55 Plan

21 10/55 Les outils de développement Il existe plusieurs environnements supportant les développements

22 1/55 Eclipse Eclipse est un Environnement de Développement Intégré (IDE) Open source Ecrit en (nécessite une JRE pour s exécuter) Extensible grâce au mécanisme de plugins

23 11/55 Eclipse Eclipse est un Environnement de Développement Intégré (IDE) Open source Ecrit en (nécessite une JRE pour s exécuter) Extensible grâce au mécanisme de plugins Eclipse permet de développer des applications informatiques Prévu pour et d autres besoins et langages de programmation

24 Eclipse : création d un nouveau projet 12/55

25 13/55 Plan

26 4/55 Premier programme en 1 p u b l i c c l a s s H e l l o W o r l d { 2 3 p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 4 // I n s e r e z v o t r e code i c i 5 System. out. p r i n t l n ( " H e l l o World! " ) ; 6 } 7 } Un contient au moins une classe (mot clef class).

27 14/55 Premier programme en 1 p u b l i c c l a s s H e l l o W o r l d { 2 3 p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 4 // I n s e r e z v o t r e code i c i 5 System. out. p r i n t l n ( " H e l l o World! " ) ; 6 } 7 } Un contient au moins une classe (mot clef class). Le programme principal (le point de départ de l exécution) se trouve dans la fonction/méthode main.

28 Programme plus complet en 1 i m p o r t j a v a. u t i l. S c a n n e r ; 2 3 p u b l i c c l a s s F a c t o r i e l l e { 4 5 p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 6 // D e c l a r a t i o n d e s v a r i a b l e s 7 i n t n ; 8 i n t f a c t ; 9 i n t i ; 10 // L e c t u r e c l a v i e r d un e n t i e r 11 S c a n n e r s i n = new S c a n n e r ( System. i n ) ; 12 n = s i n. n e x t I n t ( ) ; 13 // i n i t i a l i s a t i o n du r e s u l t a t 14 f a c t = 1 ; 15 f o r ( i=1 ; i <=n ; i++) { 16 f a c t = f a c t i ; 17 } 18 // a f f i c h a g e du r e s u l t a t 19 System. out. p r i n t l n ( f a c t ) ; 20 s i n. c l o s e ( ) ; 21 } 22 } 15/55

29 16/55 Commentaires Commenter un programme = Expliquer en langage naturel ce que le code fait Doit expliquer le raisonnement qui a aboutit au programme Ne doit pas alourdir le code 1 // commentaire s u r une s e u l e l i g n e 2 3 / 4 commentaire 5 s u r p l u s i e u r s l i g n e s 6 /

30 16/55 Commentaires Commenter un programme = Expliquer en langage naturel ce que le code fait Doit expliquer le raisonnement qui a aboutit au programme Ne doit pas alourdir le code 1 // commentaire s u r une s e u l e l i g n e 2 3 / 4 commentaire 5 s u r p l u s i e u r s l i g n e s 6 / Essentiel pour : Documenter un programme Travailler en équipe Rendre un programme réutilisable

31 Eclipse : création d une nouvelle classe 17/55

32 Eclipse : exécution d un 18/55

33 19/55 Plan

34 20/55 ordinateur

35 1/55 Mémoire La mémoire est un ensemble de cases/mots mémoires

36 21/55 Mémoire La mémoire est un ensemble de cases/mots mémoires Les données et les instructions d un programme sont stockés dans les cases mémoires

37 21/55 Mémoire La mémoire est un ensemble de cases/mots mémoires Les données et les instructions d un programme sont stockés dans les cases mémoires Une donnée est représentée en programmation par une variable

38 2/55 La déclaration d une variable Création et nommage d une nouvelle variable 1 <Type de l a v a r i a b l e > <Nom de l a v a r i a b l e > ;

39 2/55 La déclaration d une variable Création et nommage d une nouvelle variable 1 <Type de l a v a r i a b l e > <Nom de l a v a r i a b l e > ; Fonctionnement 1. Réserve une case dans la mémoire pour stocker la valeur

40 2/55 La déclaration d une variable Création et nommage d une nouvelle variable 1 <Type de l a v a r i a b l e > <Nom de l a v a r i a b l e > ; Fonctionnement 1. Réserve une case dans la mémoire pour stocker la valeur 2. Donne un nom (identificateur) à cette case mémoire pour y accéder Stocker une valeur Lire la valeur stockée

41 23/55 La déclaration d une variable Contraintes Contient uniquement des lettres, des chiffres ou le caractère _ Commence par une lettre ou le caractère _ Pas d accent Ne doit pas être un mot clef du langage

42 23/55 La déclaration d une variable Contraintes Contient uniquement des lettres, des chiffres ou le caractère _ Commence par une lettre ou le caractère _ Pas d accent Ne doit pas être un mot clef du langage Conventions Première lettre est une minuscule Si plusieurs mots : mots accolés les uns aux autres les mots après le premier commencent par une majuscule Le nom désigne explicitement le contenu de la variable

43 23/55 La déclaration d une variable Contraintes Contient uniquement des lettres, des chiffres ou le caractère _ Commence par une lettre ou le caractère _ Pas d accent Ne doit pas être un mot clef du langage Conventions Première lettre est une minuscule Si plusieurs mots : mots accolés les uns aux autres les mots après le premier commencent par une majuscule Le nom désigne explicitement le contenu de la variable Exemples 1 i n t n o m b r e D e P a r t i c i p a n t s ; 2 i n t v a l e u r 2 ;

44 24/55 L affectation Initialisation ou modification de la valeur d une variable 1 <Nom de l a v a r i a b l e > = <E x p r e s s i o n > ;

45 24/55 L affectation Initialisation ou modification de la valeur d une variable 1 <Nom de l a v a r i a b l e > = <E x p r e s s i o n > ; Attention = n est pas l opérateur d égalité

46 24/55 L affectation Initialisation ou modification de la valeur d une variable 1 <Nom de l a v a r i a b l e > = <E x p r e s s i o n > ; Attention = n est pas l opérateur d égalité Déroulement 1. Evaluation de l expression 2. Stockage du résultat dans la variable

47 24/55 L affectation Initialisation ou modification de la valeur d une variable 1 <Nom de l a v a r i a b l e > = <E x p r e s s i o n > ; Attention = n est pas l opérateur d égalité Déroulement 1. Evaluation de l expression 2. Stockage du résultat dans la variable Exemples 1 n o m b r e D e P a r t i c i p a n t s = 25 ; 2 v a l e u r 2 = ;

48 24/55 L affectation Initialisation ou modification de la valeur d une variable 1 <Nom de l a v a r i a b l e > = <E x p r e s s i o n > ; Attention = n est pas l opérateur d égalité Déroulement 1. Evaluation de l expression 2. Stockage du résultat dans la variable Exemples 1 n o m b r e D e P a r t i c i p a n t s = 25 ; 2 v a l e u r 2 = ; affectation simultanée 1 i n t n o m b r e D e P a r t i c i p a n t s = 25 ;

49 25/55 Les types en Attention En, une variable ne peut contenir que des valeurs du type donné!

50 25/55 Les types en Attention En, une variable ne peut contenir que des valeurs du type donné! Les de type numérique 1 // Le t y p e b y t e ( 1 o c t e t ) l e s e n t i e r s 2 b y t e t e m p e r a t u r e = 64 ; 3 // Le t y p e s h o r t ( 2 o c t e t s ) l e s e n t i e r s 4 s h o r t v i t e s s e M a x = ; 5 // Le t y p e i n t ( 4 o c t e t s ) l e s e n t i e r s 6 i n t t e m p e r a t u r e S o l e i l = ; 7 // Le t y p e l o n g ( 8 o c t e t s ) l e s e n t i e r s 8 l o n g a n n e e L u m i e r e = L ; 9 // Le t y p e f l o a t ( 4 o c t e t s ) l e s nombres a v e c une v i r g u l e f l o t t a n t e 10 f l o a t p i = f ; 11 // Le t y p e d o u b l e ( 8 o c t e t s ) l e s nombres a v e c une v i r g u l e f l o t t a n t e 12 d o u b l e d i v i s i o n = d ;

51 26/55 Les types en Les stockant un caractère 1 c h a r c a r a c t e r e ; 2 c a r a c t e r e = A ;

52 26/55 Les types en Les stockant un caractère 1 c h a r c a r a c t e r e ; 2 c a r a c t e r e = A ; Les de type booléen 1 b o o l e a n q u e s t i o n ; 2 q u e s t i o n = t r u e ;

53 26/55 Les types en Les stockant un caractère 1 c h a r c a r a c t e r e ; 2 c a r a c t e r e = A ; Les de type booléen 1 b o o l e a n q u e s t i o n ; 2 q u e s t i o n = t r u e ; Les de type String 1 S t r i n g p h r a s e ; 2 p h r a s e = " T i t i e t G r o s m i n e t " ; 3 4 S t r i n g s t r = new S t r i n g ( ) ; 5 s t r = "Une a u t r e c h a i n e de c a r a c t e r e s " ; 6 7 S t r i n g c h a i n e = new S t r i n g ( " Et une de p l u s! " ) ;

54 27/55 Les expressions en Les opérateurs arithmétiques + : additionner deux numériques - : soustraire deux numériques * : multiplier deux numériques / : diviser deux numériques % : renvoyer le reste de la division entière

55 27/55 Les expressions en Les opérateurs arithmétiques + : additionner deux numériques - : soustraire deux numériques * : multiplier deux numériques / : diviser deux numériques % : renvoyer le reste de la division entière Exemples 1 i n t x, y, z ; // D e c l a r a t i o n d e s v a r i a b l e s 2 3 x = ; // x v a u t 4 4 y = 2 6 ; // y v a u t 12 5 z = y / x ; // z v a u t 3 6 z = ( 1+3 ) / ( 2 6 ) ; // z v a u t 3 7 x = 5 % 2 ; // x v a u t 1 8 y = 99 % 8 ; // y v a u t 3 9 z = x % y ; // z v a u t 1 10 z = ( 5%2 )%( 99%8 ) ; // z v a u t 1

56 28/55 Le transtypage Attention L expression doit être du même type que la variable!

57 28/55 Le transtypage Attention L expression doit être du même type que la variable! Le transtypage consiste à convertir un type de données en un autre 2 cas de figure : 1. Sans perte d information 2. Avec perte d information

58 28/55 Le transtypage Attention L expression doit être du même type que la variable! Le transtypage consiste à convertir un type de données en un autre 2 cas de figure : 1. Sans perte d information 2. Avec perte d information Sans perte d information 1 i n t i = 3 ; 2 d o u b l e d = i ; // d v a u t 3. 0

59 28/55 Le transtypage Attention L expression doit être du même type que la variable! Le transtypage consiste à convertir un type de données en un autre 2 cas de figure : 1. Sans perte d information 2. Avec perte d information Sans perte d information 1 i n t i = 3 ; 2 d o u b l e d = i ; // d v a u t 3. 0 Avec perte d information 1 <Nouveau Type> <V a r i a b l e > = (<Nouveau Type>) <E x p r e s s i o n > ; 2 3 d o u b l e d = 3. 4 ; 4 i n t i = ( i n t ) d ; // i v a u t 3

60 29/55 Les constantes La déclaration d une constante 1 s t a t i c f i n a l <t y p e C o n s t a n t e > <nomconstante> = <v a l e u r C o n s t a n t e >;

61 29/55 Les constantes La déclaration d une constante 1 s t a t i c f i n a l <t y p e C o n s t a n t e > <nomconstante> = <v a l e u r C o n s t a n t e >; Exemple 1 s t a t i c f i n a l d o u b l e RATE = ;

62 30/55 Plan

63 31/55 Instructions de lecture La lecture avec la classe Scanner 1 // C e c i i m p o r t e l a c l a s s e S c a n n e r du package j a v a. u t i l 2 i m p o r t j a v a. u t i l. S c a n n e r ; 3 4 p u b l i c c l a s s Main { 5 6 p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 7 S c a n n e r s c = new S c a n n e r ( System. i n ) ; 8 S t r i n g s t r = s c. n e x t L i n e ( ) ; 9 i n t i = s c. n e x t I n t ( ) ; 10 d o u b l e d = s c. n e x t D o u b l e ( ) ; 11 l o n g l = s c. nextlong ( ) ; 12 b y t e b = s c. n e x t B y t e ( ) ; 13 // Etc. 14 } 15 }

64 32/55 Instructions d affichage L affichage avec la méthode System.out.print 1 i m p o r t j a v a. u t i l. S c a n n e r ; 2 3 p u b l i c c l a s s Main { 4 p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 5 S c a n n e r s c = new S c a n n e r ( System. i n ) ; 6 System. out. p r i n t ( " S a i s i s s e z un e n t i e r : " ) ; 7 i n t i = s c. n e x t I n t ( ) ; 8 System. out. p r i n t l n ( " Vous a v e z s a i s i : " + i ) ; 9 //On v i d e l a l i g n e 10 s c. n e x t L i n e ( ) ; 11 System. out. p r i n t ( " S a i s i s s e z une c h a i n e : " ) ; 12 S t r i n g s t r = s c. n e x t L i n e ( ) ; 13 System. out. p r i n t l n ( " Vous a v e z s a i s i : " + s t r ) ; 14 } 15 }

65 32/55 Instructions d affichage L affichage avec la méthode System.out.print 1 i m p o r t j a v a. u t i l. S c a n n e r ; 2 3 p u b l i c c l a s s Main { 4 p u b l i c s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 5 S c a n n e r s c = new S c a n n e r ( System. i n ) ; 6 System. out. p r i n t ( " S a i s i s s e z un e n t i e r : " ) ; 7 i n t i = s c. n e x t I n t ( ) ; 8 System. out. p r i n t l n ( " Vous a v e z s a i s i : " + i ) ; 9 //On v i d e l a l i g n e 10 s c. n e x t L i n e ( ) ; 11 System. out. p r i n t ( " S a i s i s s e z une c h a i n e : " ) ; 12 S t r i n g s t r = s c. n e x t L i n e ( ) ; 13 System. out. p r i n t l n ( " Vous a v e z s a i s i : " + s t r ) ; 14 } 15 } 1 >> S a i s i s s e z un e n t i e r : 12 2 >>Vous a v e z s a i s i : 12 3 >> S a i s i s s e z une c h a i n e : C e n t r a l e S u p e l e c 4 >>Vous a v e z s a i s i : C e n t r a l e S u p e l e c

66 33/55 Plan

67 34/55 Les expressions booléennes Les opérateurs de comparaison ==,! =, <, >, <=, >= génèrent des booleans à partir de comparaison de valeurs

68 34/55 Les expressions booléennes Les opérateurs de comparaison ==,! =, <, >, <=, >= génèrent des booleans à partir de comparaison de valeurs Les opérateurs booléans A B = A or B (OR logique) A && B = A and B (AND logique)! A = not A (NOT logique)

69 34/55 Les expressions booléennes Les opérateurs de comparaison ==,! =, <, >, <=, >= génèrent des booleans à partir de comparaison de valeurs Les opérateurs booléans A B = A or B (OR logique) A && B = A and B (AND logique)! A = not A (NOT logique) Attention A et B doivent être des expressions générant des booléans

70 35/55 Instruction : if Bloc d instruction exécuté si la condition est vraie, sinon un autre est exécuté 1 i f ( c o n d i t i o n ) { 2 commande1 ; 3 } 1 i f ( c o n d i t i o n ) { 2 commande1 ; 3 } 4 e l s e { 5 commande2 ; 6 } 1 i f ( c o n d i t i o n 1 ) { 2 commande1 ; 3 } 4 e l s e i f ( c o n d i t i o n 2 ) { 5 commande2 ; 6 } 7 e l s e { 8 commande3 ; 9 }

71 36/55 Instruction : if Exemple 1 i f ( i < 0 ) { 2 System. out. p r i n t l n ( "Ce nombre e s t n e g a t i f! " ) ; 3 } 4 e l s e { 5 i f ( i == 0 ) 6 System. out. p r i n t l n ( "Ce nombre e s t n u l! " ) ; 7 e l s e 8 System. out. p r i n t l n ( "Ce nombre e s t p o s i t i f! " ) ; 9 }

72 37/55 Plan

73 8/55 Instructions de boucle Répéter un bloc d instruction un certain nombre de fois

74 8/55 Instructions de boucle Répéter un bloc d instruction un certain nombre de fois Une boucle s exécute tant qu une condition est remplie

75 8/55 Instructions de boucle Répéter un bloc d instruction un certain nombre de fois Une boucle s exécute tant qu une condition est remplie En, il existe trois formes de boucles : 1. boucle while 2. boucle do while 3. boucle for

76 39/55 La boucle while Permet d exécuter un bloc d instruction tant qu une condition est vraie

77 39/55 La boucle while Permet d exécuter un bloc d instruction tant qu une condition est vraie 1 w h i l e ( c o n d i t i o n ) { 2 i n s t r u c t i o n 1 ; 3 } 4 i n s t r u c t i o n 2 ; 1. On évalue condition 1.1 Si condition est vraie, on exécute le bloc instruction1 et on recommence au niveau de condition (aller à 1) 1.2 Si condition est fausse, on saute à instruction2

78 40/55 La boucle while Exemple 1 S c a n n e r s c = new S c a n n e r ( System. i n ) ; 2 i n t x = s c. n e x t I n t ( ) ; 3 4 i n t i = 1 ; 5 w h i l e ( ( i+1 ) ( i+1 ) <= x ) { 6 i = i + 1 ; 7 } 8 System. out. p r i n t ( " La r a c i n e c a r r e e e n t i e r e " ) ; 9 System. out. p r i n t l n ( " de " + x + " e s t : " + i ) ;

79 41/55 La boucle do... while Permet d exécuter une première fois un bloc d instruction, puis de le répéter tant qu une condition est vraie.

80 41/55 La boucle do... while Permet d exécuter une première fois un bloc d instruction, puis de le répéter tant qu une condition est vraie. 1 do { 2 i n s t r u c t i o n 1 ; 3 } w h i l e ( c o n d i t i o n ) 4 i n s t r u c t i o n 2 ; 1. On exécute le bloc instruction1 2. On évalue la condition 2.1 Si condition est vraie, on recommence au niveau du bloc instruction1 (aller à 1) 2.2 Si condition est fausse, on saute à instruction2

81 42/55 La boucle do... while Exemple 1 i n t c p t = 3 ; 2 3 do { 4 c p t = c p t 1 ; 5 } w h i l e ( c p t >= 0 ) ;

82 43/55 La boucle for Permet d exécuter un bloc d instruction tant qu une condition est vraie La condition implique une variable de contrôle modifiée à chaque itération

83 43/55 La boucle for Permet d exécuter un bloc d instruction tant qu une condition est vraie La condition implique une variable de contrôle modifiée à chaque itération 1 f o r ( i n i t ; c o n d i t i o n ; maj ) { 2 i n s t r u c t i o n 1 ; 3 } 4 i n s t r u c t i o n 2 ; 1. On initialise la variable de contrôle avec init 2. On évalue la condition 2.1 Si condition est vraie, on exécute instruction1 puis maj et on va à l étape Si condition est fausse, on saute à instruction2

84 44/55 La boucle for Exemple 1 S c a n n e r s c = new S c a n n e r ( System. i n ) ; 2 i n t n = s c. n e x t I n t ( ) ; 3 4 i n t f a c t = 1 ; 5 f o r ( i n t i=1 ; i <=n ; i++) { 6 f a c t = f a c t i ; 7 } 8 System. out. p r i n t l n ( f a c t ) ;

85 45/55 Les raccourcis pour l affectation Les opérateurs arithmétiques somme += nb somme = somme + nb fact *= nb fact = fact * nb solde -= nb solde = solde - nb

86 45/55 Les raccourcis pour l affectation Les opérateurs arithmétiques somme += nb somme = somme + nb fact *= nb fact = fact * nb solde -= nb solde = solde - nb Incrémentation et décrémentation x++ x+= 1 x = x + 1 y- - y-= 1 y = y - 1

87 46/55 Plan

88 47/55 Définition Tableau Ensemble fini de de même type reprérées par des indices Ces s appellent éléments de tableau indice 0 1 i n élément

89 48/55 Déclaration des tableaux en Un tableau occupe un espace mémoire désigné par une où plusieurs Ces sont des références au tableau

90 48/55 Déclaration des tableaux en Un tableau occupe un espace mémoire désigné par une où plusieurs Ces sont des références au tableau Déclaration d une variable référence à un tableau 1 i n t [ ] montableau ; montableau

91 48/55 Déclaration des tableaux en Un tableau occupe un espace mémoire désigné par une où plusieurs Ces sont des références au tableau Déclaration d une variable référence à un tableau 1 i n t [ ] montableau ; Création du tableau et liaison avec la référence 1 montableau = new i n t [ 4 ] ; montableau

92 49/55 Manipulation des tableaux en Initialisation d un tableau Par défaut : 0, 0.0 ou false

93 49/55 Manipulation des tableaux en Initialisation d un tableau Par défaut : 0, 0.0 ou false On peut initialiser le tableau à la création 1 i n t [ ] montableau = new i n t [ ] {3, 5, 1, 4} ; 2 i n t [ ] montableau = {3, 5, 1, 4} ;

94 49/55 Manipulation des tableaux en Initialisation d un tableau Par défaut : 0, 0.0 ou false On peut initialiser le tableau à la création 1 i n t [ ] montableau = new i n t [ ] {3, 5, 1, 4} ; 2 i n t [ ] montableau = {3, 5, 1, 4} ; Manipulation d un tableau L accès à un élément se fait avec montableau[indice] La taille d un tableau est donnée par montableau.length

95 49/55 Manipulation des tableaux en Initialisation d un tableau Par défaut : 0, 0.0 ou false On peut initialiser le tableau à la création 1 i n t [ ] montableau = new i n t [ ] {3, 5, 1, 4} ; 2 i n t [ ] montableau = {3, 5, 1, 4} ; Manipulation d un tableau L accès à un élément se fait avec montableau[indice] La taille d un tableau est donnée par montableau.length 1 i n t [ ] montableau = new i n t [ 4 ] ; 2 3 f o r ( i n t i=0 ; i <montableau. l e n g t h ; i++) { 4 montableau [ i ] = i 2 ; 5 }

96 50/55 Les références sur les tableaux en taba 1 i n t [ ] taba = new i n t [ 4 ] ;

97 50/55 Les références sur les tableaux en taba tabb 1 i n t [ ] taba = new i n t [ 4 ] ; 2 i n t [ ] tabb = new i n t [ 4 ] ;

98 50/55 Les références sur les tableaux en taba tabb 1 i n t [ ] taba = new i n t [ 4 ] ; 2 i n t [ ] tabb = new i n t [ 4 ] ; 3 taba [ 1 ] = 3 ; 3

99 50/55 Les références sur les tableaux en taba tabb 1 i n t [ ] taba = new i n t [ 4 ] ; 2 i n t [ ] tabb = new i n t [ 4 ] ; 3 taba [ 1 ] = 3 ; 4 tabb = taba ; 3

100 50/55 Les références sur les tableaux en taba tabb 1 i n t [ ] taba = new i n t [ 4 ] ; 2 i n t [ ] tabb = new i n t [ 4 ] ; 3 taba [ 1 ] = 3 ; 4 tabb = taba ; 5 tabb [ 1 ] = 7 ; 7

101 51/55 à plusieurs dimensions en Extension des définitions précédentes : à chaque dimension correspond une paire de crochets [ ]

102 51/55 à plusieurs dimensions en Extension des définitions précédentes : à chaque dimension correspond une paire de crochets [ ] Indiquer lors de la déclaration/création : le type des éléments et les dimensions

103 51/55 à plusieurs dimensions en Extension des définitions précédentes : à chaque dimension correspond une paire de crochets [ ] Indiquer lors de la déclaration/création : le type des éléments et les dimensions Exemples 1 d o u b l e [ ] [ ] [ ] tab 1 = new d o u b l e [ 3 ] [ 4 ] [ 3 ] ; 2 i n t [ ] [ ] tab 2 = new i n t [ ] [ ] {{1, 2}, {3, 4}, {5, 6}} ; 3 i n t [ ] [ ] tab 3 = {{1, 2}, {3, 4}, {5, 6}} ;

104 52/55 Plan

105 53/55 Déclaration Forme générale 1 s t a t i c t y p e R e s u l t a t nomfonction ( t y p e 1 param 1,..., t y p e n paramn ) { 2 i n s t r u c t i o n s 3 r e t u r n v a l e u r R e s u l t a t ; 4 }

106 53/55 Déclaration Forme générale 1 s t a t i c t y p e R e s u l t a t nomfonction ( t y p e 1 param 1,..., t y p e n paramn ) { 2 i n s t r u c t i o n s 3 r e t u r n v a l e u r R e s u l t a t ; 4 } Cas particulier : pas de résultat retourné 1 s t a t i c v o i d nomfonction ( t y p e 1 param 1,..., t y p e n paramn ) { 2 i n s t r u c t i o n s 3 }

107 54/55 Déclaration sont déclarées dans une classe et ne peuvent pas être imbriquées

108 54/55 Déclaration sont déclarées dans une classe et ne peuvent pas être imbriquées Exemple 1 c l a s s Exemple { 2 3 s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 4 S c a n n e r s c = new S c a n n e r ( System. i n ) ; 5 i n t n = s c. n e x t I n t ( ) ; 6 i n t n C a r r e = c a r r e ( n ) ; 7 System. out. p r i n t l n ( n + "^2 = " + n C a r r e ) ; 8 } 9 10 s t a t i c i n t c a r r e ( i n t x ) { 11 r e t u r n x x ; 12 } 13 }

109 55/55 Signature et fonctions homonymes En, lorsqu on appelle une fonction, elle est recherchée par sa signature Signature = nom de fonction + type des arguments Il est possible de déclarer des fonctions homonymes Même nom de fonctions avec des arguments différents (nombre et type) On parle de surcharge de fonction

110 55/55 Signature et fonctions homonymes En, lorsqu on appelle une fonction, elle est recherchée par sa signature Signature = nom de fonction + type des arguments Il est possible de déclarer des fonctions homonymes Même nom de fonctions avec des arguments différents (nombre et type) On parle de surcharge de fonction Exemple 1 c l a s s Exemple { 2 3 s t a t i c v o i d main ( S t r i n g [ ] a r g s ) { 4 S c a n n e r s c = new S c a n n e r ( System. i n ) ; 5 i n t n = s c. n e x t I n t ( ) ; 6 i n t n C a r r e = c a r r e ( n ) ; 7 d o u b l e d = s c. n e x t D o u b l e ( ) ; 8 d o u b l e d C a r r e = c a r r e ( d ) ; 9 } s t a t i c i n t c a r r e ( i n t x ) { r e t u r n x x ; } 12 s t a t i c d o u b l e c a r r e ( d o u b l e x ) { r e t u r n x x ; } 13 }

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7

Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7 Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Langage Java. Classe de première SI

Langage Java. Classe de première SI Langage Java Table des matières 1. Premiers pas...2 1.1. Introduction...2 1.2. Mon premier programme...2 1.3. Les commentaires...2 2. Les variables et les opérateurs...2 3. La classe Scanner...3 4. Les

Plus en détail

as Architecture des Systèmes d Information

as Architecture des Systèmes d Information Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes

Plus en détail

Structure d un programme et Compilation Notions de classe et d objet Syntaxe

Structure d un programme et Compilation Notions de classe et d objet Syntaxe Cours1 Structure d un programme et Compilation Notions de classe et d objet Syntaxe POO 1 Programmation Orientée Objet Un ensemble d objet qui communiquent Pourquoi POO Conception abstraction sur les types

Plus en détail

Programmation Orientée Objet

Programmation Orientée Objet Programmation Orientée Objet Mohamed Tounsi Institut Supérieur d'informatique et de Multimédia Sfax Septembre 2014 Mohamed Tounsi (ISIMS) Programmation Orientée Objet Septembre 2014 1 / 16 Responsable

Plus en détail

Chapitre I Notions de base et outils de travail

Chapitre I Notions de base et outils de travail Chapitre I Notions de base et outils de travail Objectifs Connaître les principes fondateurs et l historique du langage Java S informer des principales caractéristiques du langage Java Connaître l environnement

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

Présentation du PL/SQL

Présentation du PL/SQL I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur

Plus en détail

Initiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr

Initiation à JAVA et à la programmation objet. raphael.bolze@ens-lyon.fr Initiation à JAVA et à la programmation objet raphael.bolze@ens-lyon.fr O b j e c t i f s Découvrir un langage de programmation objet. Découvrir l'environnement java Découvrir les concepts de la programmation

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 I. Objectif du TP TP1 : Initiation à Java et Eclipse Programmation Mobile Initiation à l environnement Eclipse et aux notions de base du langage Java. II. Environnement

Plus en détail

Bases Java - Eclipse / Netbeans

Bases Java - Eclipse / Netbeans Institut Galilée PDJ Année 2014-2015 Master 1 Environnements Java T.P. 1 Bases Java - Eclipse / Netbeans Il existe plusieurs environnements Java. Il est ESSENTIEL d utiliser la bonne version, et un environnement

Plus en détail

Java Licence Professionnelle CISII, 2009-2010

Java Licence Professionnelle CISII, 2009-2010 Licence Professionnelle CISII, 2009-2010 Cours 1 : Introduction à Java A. Belaïd abelaid@loria.fr Cours disponible sur le site : http://www.loria.fr/~abelaid puis Teaching 1 Fonctionnement 12 séances :

Plus en détail

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

TD3: tableaux avancées, première classe et chaînes

TD3: tableaux avancées, première classe et chaînes TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première

Plus en détail

Généralités sur le Langage Java et éléments syntaxiques.

Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques. Généralités sur le Langage Java et éléments syntaxiques....1 Introduction...1 Genéralité sur le langage Java....1 Syntaxe de base du Langage...

Plus en détail

Java Licence Professionnelle CISII, 2009-10

Java Licence Professionnelle CISII, 2009-10 Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation

Plus en détail

Eclipse atelier Java

Eclipse atelier Java Eclipse atelier Java Table des matières 1. Introduction...2 2. Télécharger eclipse...3 3. Installer eclipse...3 4. Premier lancement d eclipse...3 5. Configurer eclipse pour faire du Java...5 6. Développer

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf

Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations

Plus en détail

Cours 1: Java et les objets

Cours 1: Java et les objets Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/

Plus en détail

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40 Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr

Plus en détail

Structurer ses données : les tableaux. Introduction à la programmation

Structurer ses données : les tableaux. Introduction à la programmation Structurer ses données : les tableaux Introduction à la programmation Plan du document Introduction Introduire la notion de type Types primitifs Types composés Tableaux de type primitif Page 2 Notion de

Plus en détail

Programme Compte bancaire (code)

Programme Compte bancaire (code) using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; Programme Compte bancaire (code) namespace compte_bancaire /// Classe Program public

Plus en détail

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr . Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le

Plus en détail

INITIATION AU LANGAGE JAVA

INITIATION AU LANGAGE JAVA INITIATION AU LANGAGE JAVA I. Présentation 1.1 Historique : Au début des années 90, Sun travaillait sur un projet visant à concevoir des logiciels simples et performants exécutés dans des PDA (Personnal

Plus en détail

Organigramme / Algorigramme Dossier élève 1 SI

Organigramme / Algorigramme Dossier élève 1 SI Organigramme / Algorigramme Dossier élève 1 SI CI 10, I11 ; CI 11, I10 C24 Algorithmique 8 février 2009 (13:47) 1. Introduction Un organigramme (ou algorigramme, lorsqu il est plus particulièrement appliqué

Plus en détail

1. Langage de programmation Java

1. Langage de programmation Java 1. Langage de programmation Java 1.1. Définitions Langage de 3e génération le plus utilisé actuellement Portabilité : exécutable sur tout types d'ordinateurs quel que soit le système d'exploitation (Windows,

Plus en détail

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java

Cours 1 : Introduction. Langages objets. but du module. contrôle des connaissances. Pourquoi Java? présentation du module. Présentation de Java Langages objets Introduction M2 Pro CCI, Informatique Emmanuel Waller, LRI, Orsay présentation du module logistique 12 blocs de 4h + 1 bloc 2h = 50h 1h15 cours, 45mn exercices table, 2h TD machine page

Plus en détail

Java c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/2012. 1 - Vue générale 2 - Mon premier programme 3 - Types de Programme Java

Java c est quoi? Java. Java. Java : Principe de fonctionnement 31/01/2012. 1 - Vue générale 2 - Mon premier programme 3 - Types de Programme Java 1 - Vue générale 2 - Mon premier programme 3 - Types de Programme 1 2 c est quoi? Technologie développée par SUN Microsystems lancée en 1995 Dans un des premiers papiers* sur le langage JAVA, SUN le décrit

Plus en détail

Projet de Veille Technologique

Projet de Veille Technologique Projet de Veille Technologique Programmation carte à puce - JavaCard Ing. MZOUGHI Ines (i.mzoughi@gmail.com) Dr. MAHMOUDI Ramzi (mahmoudr@esiee.fr) TEST Sommaire Programmation JavaCard Les prérequis...

Plus en détail

Notions fondamentales du langage C# Version 1.0

Notions fondamentales du langage C# Version 1.0 Notions fondamentales du langage C# Version 1.0 Z 2 [Notions fondamentales du langage Csharp] [Date : 25/03/09] Sommaire 1 Tout ce qu il faut savoir pour bien commencer... 3 1.1 Qu est ce qu un langage

Plus en détail

Java c est quoi? Java pourquoi?

Java c est quoi? Java pourquoi? Grandes lignes du cours Cours JAVA : Le bases du langage Java. Version 3.02 Julien Sopena 1 1 julien.sopena@lip6.fr Équipe REGAL - INRIA Rocquencourt LIP6 - Université Pierre et Marie Curie Licence professionnelle

Plus en détail

Environnements de développement (intégrés)

Environnements de développement (intégrés) Environnements de développement (intégrés) Introduction aux EDI, la plateforme Eclipse Patrick Labatut labatut@di.ens.fr http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure

Plus en détail

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation ING 01 LANGAGUE JAVA Durée : 21 heures 1090 HT / jour Dates : à définir en 2012 Concevoir et développer des programmes en langage Java Comprendre le fonctionnement de la machine virtuelle S approprier

Plus en détail

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme

Rappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation

Plus en détail

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de

Plus en détail

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique

Institut Supérieure Aux Etudes Technologiques De Nabeul. Département Informatique Institut Supérieure Aux Etudes Technologiques De Nabeul Département Informatique Support de Programmation Java Préparé par Mlle Imene Sghaier 2006-2007 Chapitre 1 Introduction au langage de programmation

Plus en détail

Éléments de programmation et introduction à Java

Éléments de programmation et introduction à Java Éléments de programmation et introduction à Java Jean-Baptiste Vioix (jean-baptiste.vioix@iut-dijon.u-bourgogne.fr) IUT de Dijon-Auxerre - LE2I http://jb.vioix.free.fr 1-20 Les différents langages informatiques

Plus en détail

Java DataBaseConnectivity

Java DataBaseConnectivity Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage

Plus en détail

Aide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr

Aide mémoire UML & Java 1ère partie : Introduction. marc.lemaire@u-cergy.fr Aide mémoire UML & Java 1ère partie : Introduction marc.lemaire@u-cergy.fr 9 septembre 2014 1 2014 v1.11 Table des matières 1 Généralités 6 1.1 Notations utilisées.....................................

Plus en détail

4. Groupement d objets

4. Groupement d objets Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux

Plus en détail

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores INTRODUCTION AUX SYSTEMES D EXPLOITATION TD2 Exclusion mutuelle / Sémaphores Exclusion mutuelle / Sémaphores - 0.1 - S O M M A I R E 1. GENERALITES SUR LES SEMAPHORES... 1 1.1. PRESENTATION... 1 1.2. UN

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

Plus en détail

Premiers Pas en Programmation Objet : les Classes et les Objets

Premiers Pas en Programmation Objet : les Classes et les Objets Chapitre 2 Premiers Pas en Programmation Objet : les Classes et les Objets Dans la première partie de ce cours, nous avons appris à manipuler des objets de type simple : entiers, doubles, caractères, booléens.

Plus en détail

Programmation C++ (débutant)/instructions for, while et do...while

Programmation C++ (débutant)/instructions for, while et do...while Programmation C++ (débutant)/instructions for, while et do...while 1 Programmation C++ (débutant)/instructions for, while et do...while Le cours du chapitre 4 : le for, while et do...while La notion de

Plus en détail

DotNet. Plan. Les outils de développement

DotNet. Plan. Les outils de développement DotNet Les outils de développement Version 1.03 du 16/10/2006 par Jacky Renno Plan La machine virtuelle Le kit de développement Le kit de langage Le Visual Studio.NET Le serveur web IIS 6.0 Le modeleur

Plus en détail

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions

Plus en détail

Cours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan

Cours de C++ François Laroussinie. 2 novembre 2005. Dept. d Informatique, ENS de Cachan Cours de C++ François Laroussinie Dept. d Informatique, ENS de Cachan 2 novembre 2005 Première partie I Introduction Introduction Introduction Algorithme et programmation Algorithme: méthode pour résoudre

Plus en détail

Initiation à l algorithmique

Initiation à l algorithmique Informatique S1 Initiation à l algorithmique procédures et fonctions 2. Appel d une fonction Jacques TISSEAU Ecole Nationale d Ingénieurs de Brest Technopôle Brest-Iroise CS 73862-29238 Brest cedex 3 -

Plus en détail

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr

Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Le Langage C Version 1.2 c 2002 Florence HENRY Observatoire de Paris Université de Versailles florence.henry@obspm.fr Table des matières 1 Les bases 3 2 Variables et constantes 5 3 Quelques fonctions indispensables

Plus en détail

Annexe : La Programmation Informatique

Annexe : La Programmation Informatique GLOSSAIRE Table des matières La Programmation...2 Les langages de programmation...2 Java...2 La programmation orientée objet...2 Classe et Objet...3 API et Bibliothèque Logicielle...3 Environnement de

Plus en détail

Une introduction à Java

Une introduction à Java Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)

Plus en détail

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3.

1. Structure d un programme C. 2. Commentaire: /*..texte */ On utilise aussi le commentaire du C++ qui est valable pour C: 3. 1. Structure d un programme C Un programme est un ensemble de fonctions. La fonction "main" constitue le point d entrée pour l exécution. Un exemple simple : #include int main() { printf ( this

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

UE C avancé cours 1: introduction et révisions

UE C avancé cours 1: introduction et révisions Introduction Types Structures de contrôle Exemple UE C avancé cours 1: introduction et révisions Jean-Lou Desbarbieux et Stéphane Doncieux UMPC 2004/2005 Introduction Types Structures de contrôle Exemple

Plus en détail

Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle - 2012-2013 P. Bonnet

Programmation VBA/Excel. Programmation VBA. Pierre BONNET. Masters SMaRT & GSI - Supervision Industrielle - 2012-2013 P. Bonnet Programmation VBA Pierre BONNET 21 La programmation VBA Historiquement, la programmation sous Excel avait comme fonction d'automatiser une succession d'actions faites dans la feuille à l'aide de la souris.

Plus en détail

Programmation en Java IUT GEII (MC-II1) 1

Programmation en Java IUT GEII (MC-II1) 1 Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)

Plus en détail

Initiation à LabView : Les exemples d applications :

Initiation à LabView : Les exemples d applications : Initiation à LabView : Les exemples d applications : c) Type de variables : Créer un programme : Exemple 1 : Calcul de c= 2(a+b)(a-3b) ou a, b et c seront des réels. «Exemple1» nom du programme : «Exemple

Plus en détail

I-JVM: une machine virtuelle Java pour l isolation de composants dans OSGi

I-JVM: une machine virtuelle Java pour l isolation de composants dans OSGi I-JVM: une machine virtuelle Java pour l isolation de composants dans OSGi Nicolas Geoffray 1, Gaël Thomas 1, Gilles Muller 1, Pierre Parrend 2, Stéphane Frénot 3, Bertil Folliot 1 nicolas.geoffray@lip6.fr

Plus en détail

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

IN 102 - Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C IN 102 - Cours 1 Qu on le veuille ou non, les systèmes informatisés sont désormais omniprésents. Même si ne vous destinez pas à l informatique, vous avez de très grandes chances d y être confrontés en

Plus en détail

Apprendre Java en 154 minutes

Apprendre Java en 154 minutes Apprendre Java en 154 minutes Tutorial Java 1.6 - HESB-TI Stéphanie Calderara José R. Beuret Quentin Cosendey Mai 2008 Table des matières 1 Objet, classe et modificateur 3 1.1 Le premier pas..........................

Plus en détail

Évaluation et implémentation des langages

Évaluation et implémentation des langages Évaluation et implémentation des langages Les langages de programmation et le processus de programmation Critères de conception et d évaluation des langages de programmation Les fondations de l implémentation

Plus en détail

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions

1 Définition et Appel d une fonction. V. Phan Luong. Cours 4 : Fonctions Université de Provence Licence Math-Info Première Année V. Phan Luong Algorithmique et Programmation en Python Cours 4 : Fonctions La construction de fonctions dans un langage de programmation permet aux

Plus en détail

SNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources

SNT4U16 - Initiation à la programmation 2014-2015. TD - Dynamique de POP III - Fichiers sources SNT4U16 - Initiation à la programmation Licence SVT 2 ème année 2014-2015 TD - Dynamique de POP III - Fichiers sources contacts : mathias.gauduchon@univ-amu.fr, melika.baklouti@univ-amu.fr, xavier.giraud@univ-amu.fr,

Plus en détail

Machines virtuelles. Brique ASC. Samuel Tardieu sam@rfc1149.net. Samuel Tardieu (ENST) Machines virtuelles 1 / 40

Machines virtuelles. Brique ASC. Samuel Tardieu sam@rfc1149.net. Samuel Tardieu (ENST) Machines virtuelles 1 / 40 Machines virtuelles Brique ASC Samuel Tardieu sam@rfc1149.net École Nationale Supérieure des Télécommunications Samuel Tardieu (ENST) Machines virtuelles 1 / 40 Machines virtuelles La compilation peut

Plus en détail

ÉVALUATION DE LA MAINTENABILITÉ DE S3MDSS AVEC L OUTIL SONAR

ÉVALUATION DE LA MAINTENABILITÉ DE S3MDSS AVEC L OUTIL SONAR ETS-RT - 2009-000 ÉVALUATION DE LA MAINTENABILITÉ DE S3MDSS AVEC L OUTIL SONAR HASSENE LAARIBI ETS-RT - 2009-000 ÉVALUATION DE LA MAINTENABILITÉ DE S3MDSS AVEC L OUTIL SONAR RAPPORT TECHNIQUE DE L ÉTS

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

Les tableaux de bord de pilotage de nouvelle génération. Copyright 2002-2008 PRELYTIS

Les tableaux de bord de pilotage de nouvelle génération. Copyright 2002-2008 PRELYTIS Les tableaux de bord de pilotage de nouvelle génération Sommaire PRELYTIS en quelques mots LiveDashBoard : principes directeurs et positionnement La couverture fonctionnelle Démonstration Les packages

Plus en détail

Vulgarisation Java EE Java EE, c est quoi?

Vulgarisation Java EE Java EE, c est quoi? Paris, le 1 Février 2012 Vulgarisation Java EE Java EE, c est quoi? Sommaire Qu est ce que Java? Types d applications Java Environnements Java Versions de Java Java EE, c est quoi finalement? Standards

Plus en détail

Cours Informatique Master STEP

Cours Informatique Master STEP Cours Informatique Master STEP Bases de la programmation: Compilateurs/logiciels Algorithmique et structure d'un programme Programmation en langage structuré (Fortran 90) Variables, expressions, instructions

Plus en détail

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...

Licence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez

Plus en détail

OCL - Object Constraint Language

OCL - Object Constraint Language OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object

Plus en détail

Algorithmique et structures de données I

Algorithmique et structures de données I Algorithmique et structures de données I Riadh Ben Messaoud Université 7 novembre à Carthage Faculté des Sciences Économiques et de Gestion de Nabeul 1ère année Licence Fondamentale IAG 1ère année Licence

Plus en détail

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation.

Université du Québec à Chicoutimi. Département d informatique et de mathématique. Plan de cours. Titre : Élément de programmation. Université du Québec à Chicoutimi Département d informatique et de mathématique Plan de cours Titre : Élément de programmation Sigle : 8inf 119 Session : Automne 2001 Professeur : Patrice Guérin Local

Plus en détail

Système de Virtualisation pour une application de gestion commerciale d entreprise

Système de Virtualisation pour une application de gestion commerciale d entreprise Système de Virtualisation pour une application de gestion commerciale d entreprise Travail d Etude et de Recherche Master 1 STIC Informatique ETUDIANTS FIDAN AYHAN SAHLOUL SAHBI BOSQUET SYLVAIN COUNDOUL

Plus en détail

CATALOGUE FORMATIONS 2015. DOMAINE Bases de données

CATALOGUE FORMATIONS 2015. DOMAINE Bases de données DOMAINE Bases de données Version 1.0 - Octobre 2014 1, 2, 3 juin 2015 1, 2, 3 octobre 2015 CATALOGUE Analyse et conception d une base de données Elaboration de fiches de collecte de données Techniques

Plus en détail

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013

UML Diagramme de communication (communication diagram) Emmanuel Pichon 2013 UML Diagramme de communication (communication diagram) 2013 Diagramme de communication (communication diagram) Utilisation / objectifs Sens Ce diagramme présente des objets, des acteurs, des liens et des

Plus en détail

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Plus en détail

Programmation Orientée Objet application au langage Java Version Novembre 2007

Programmation Orientée Objet application au langage Java Version Novembre 2007 Programmation Orientée Objet application au langage Java Version Novembre 2007 Mickaël BARON - 2007 mailto:baron.mickael@gmail.com ou mailto:mickael.baron@serli.com SERLI informatique SERLI : www.serli.com

Plus en détail

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs)

Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) Modularité Extensions Suivant les langages de programmation, modules plus avancés : modules imbriqués modules paramétrés par des modules (foncteurs) généricité modules de première classe : peuvent être

Plus en détail

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués International Journal of Engineering Research and Development e-issn: 2278-067X, p-issn: 2278-800X, www.ijerd.com Volume 7, Issue 5 (June 2013), PP.99-103 Solution A La Gestion Des Objets Java Pour Des

Plus en détail

RN2-Programmation Orientée Objet - JAVA CH 1 Introduction à la POO et Java

RN2-Programmation Orientée Objet - JAVA CH 1 Introduction à la POO et Java RN2-Programmation Orientée Objet - JAVA CH 1 à la POO et Java Licence Professionnelle 2006 Agnès Guerraz INRIA Rhône-Alpes agnes.guerraz@inria.fr LP UPMF, Grenoble Septembre 2006 Ce cours reprend en grande

Plus en détail

Plate formes mobiles. Utilisation. Contexte 9/29/2010 IFC 2. Deux utilisations assez distinctes :

Plate formes mobiles. Utilisation. Contexte 9/29/2010 IFC 2. Deux utilisations assez distinctes : Plate formes mobiles IFC 2 Markus Jaton Utilisation Deux utilisations assez distinctes : Téléphones évolués (Nokia, Motorola) Smartphones (Apple,, Windows) La téléphonie est en stagnation, alors que les

Plus en détail

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2

Anne Tasso. Java. Le livre de. premier langage. 10 e édition. Avec 109 exercices corrigés. Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Anne Tasso Java Le livre de premier langage 10 e édition Avec 109 exercices corrigés Groupe Eyrolles, 2000-2015, ISBN : 978-2-212-14154-2 Table des matières Avant-propos Organisation de l ouvrage..............................

Plus en détail

Introduction à Java. Philippe Genoud. Philippe.Genoud@imag.fr. http://www.inrialpes.fr/helix/people/genoud/ensjava

Introduction à Java. Philippe Genoud. Philippe.Genoud@imag.fr. http://www.inrialpes.fr/helix/people/genoud/ensjava Introduction à Java Philippe Genoud Philippe.Genoud@imag.fr http://www.inrialpes.fr/helix/people/genoud/ensjava http://membres-liglab.imag.fr/genoud/ensjava/m2cci/ 1 JAVA c'est quoi? Une technologie développée

Plus en détail

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing

03/04/2007. Tâche 1 Tâche 2 Tâche 3. Système Unix. Time sharing 3/4/27 Programmation Avancée Multimédia Multithreading Benoît Piranda Équipe SISAR Université de Marne La Vallée Besoin Programmes à traitements simultanés Réseau Réseau Afficher une animation en temps

Plus en détail

Plan du cours 2014-2015. Cours théoriques. 29 septembre 2014

Plan du cours 2014-2015. Cours théoriques. 29 septembre 2014 numériques et Institut d Astrophysique et de Géophysique (Bât. B5c) Bureau 0/13 email:.@ulg.ac.be Tél.: 04-3669771 29 septembre 2014 Plan du cours 2014-2015 Cours théoriques 16-09-2014 numériques pour

Plus en détail

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile

TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface

Plus en détail

SUPPORT DE COURS. Langage C

SUPPORT DE COURS. Langage C Dpt Informatique 2010-2011 SUPPORT DE COURS Langage C Semestre 1 par : «CaDePe» Marie-Françoise Canut Marianne de Michiel André Péninou Table des Matières 1 Généralités...8 1.1 Introduction aux langages

Plus en détail

Polycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5

Polycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5 UNIVERISTE MOHAMMED PREMIER Faculté des Sciences d Oujda Oujda - Maroc Polycopié Cours Programmation Orientée Objet sous Java Programme : Filière SMI S5 Pr. El Mostafa DAOUDI Département de Mathématiques

Plus en détail

Installation et prise en main

Installation et prise en main TP1 Installation et prise en main Android est le système d'exploitation pour smartphones, tablettes et autres appareils développé par Google. Pour permettre aux utilisateurs d'installer des applications

Plus en détail

R, Bonnes pratiques. Christophe Genolini

R, Bonnes pratiques. Christophe Genolini R, Bonnes pratiques Christophe Genolini 1 Table des matières 1 Des bonnes pratiques, pour quoi faire? 4 2 Choix de l éditeur de texte 4 3 Architecture du code 6 4 Variables 10 5 Commentaires et documentation

Plus en détail

Cours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle.

Cours No 3 : Identificateurs, Fonctions, Premières Structures de contrôle. Université Montpellier-II UFR des Sciences - Département Informatique - Licence Informatique UE GLIN302 - Programmation Applicative et Récursive Cours No 3 : Identificateurs, Fonctions, Premières Structures

Plus en détail