Éléments de programmation et introduction à Java

publicité
Éléments de programmation et introduction à Java
Jean-Baptiste Vioix
([email protected])
IUT de Dijon-Auxerre - LE2I
http://jb.vioix.free.fr
1-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Repères historiques
Une brève histoire de l’informatique
L’évolution du matériel
1941 : Konrad Zuse conçoit le Z3, premier ordinateur programmable réalisé à partir
de relais électromécanique (f = 5,33 Hz / puissance = 20 Flops).
2nde guerre mondiale : Colossus et l’ENIAC utilisent des tubes à vide pour casser les
codes de la machine Enigma.
1947 : J. Bardeen, W. Shockley et W. Brattain inventent le transistor.
1971 : Intel lance le processeur 4004 (f = 740 kHz ).
1978-1979 : Intel lance les 8086 et 8088, puis IBM lance le PC (f = 4,77 MHz) en
1981 . . .
L’évolution de la programmation
vers 1840 : Ada Lovelace écrit le premier programme pour la machine de Babbage.
1942-1946 : Konrad Zuse élabore Plankalkül de manière théorique.
1952 : Grace M. Hopper developpe le compilateur A0
1954 : FORTRAN conçu chez IBM est le premier langage de programmation
complet (variables nommées, expressions complexes, sous programmes).
2006 : plus de 2500 langages inventoriés, environ 50 très utilisés.
http://jb.vioix.free.fr
2-20
Les différents langages informatiques
Langages informatique
Les langages informatiques
Langages de programmation
La majorité des tâches informatiques font appels à des langages de programmation.
Le but est d’automatiser des tâches, résoudre des problèmes, interagir avec
l’utilisateur,. . .
Langages pour des applications particulières
Mise en forme de données : HTML, XHTML, CSS, Latex, wiki, . . .
Définition de données : XML (SVG, OpenDocument, MathML, . . . )
Accès aux bases de données : SQL
VHDL, VRML, Matlab, Lilypond, machines à commande numériques, . . .
http://jb.vioix.free.fr
3-20
Les différents langages informatiques
Langages informatique
Les langages informatiques
Langages de programmation
La majorité des tâches informatiques font appels à des langages de programmation.
Le but est d’automatiser des tâches, résoudre des problèmes, interagir avec
l’utilisateur,. . .
Langages pour des applications particulières
Mise en forme de données : HTML, XHTML, CSS, Latex, wiki, . . .
Définition de données : XML (SVG, OpenDocument, MathML, . . . )
Accès aux bases de données : SQL
VHDL, VRML, Matlab, Lilypond, machines à commande numériques, . . .
http://jb.vioix.free.fr
3-20
Les différents langages informatiques
Langages informatique
Les langages informatiques
Langages de programmation
La majorité des tâches informatiques font appels à des langages de programmation.
Le but est d’automatiser des tâches, résoudre des problèmes, interagir avec
l’utilisateur,. . .
Langages pour des applications particulières
Mise en forme de données : HTML, XHTML, CSS, Latex, wiki, . . .
Définition de données : XML (SVG, OpenDocument, MathML, . . . )
Accès aux bases de données : SQL
VHDL, VRML, Matlab, Lilypond, machines à commande numériques, . . .
http://jb.vioix.free.fr
3-20
Les différents langages informatiques
Langages informatique
Les langages informatiques
Langages de programmation
La majorité des tâches informatiques font appels à des langages de programmation.
Le but est d’automatiser des tâches, résoudre des problèmes, interagir avec
l’utilisateur,. . .
Langages pour des applications particulières
Mise en forme de données : HTML, XHTML, CSS, Latex, wiki, . . .
Définition de données : XML (SVG, OpenDocument, MathML, . . . )
Accès aux bases de données : SQL
VHDL, VRML, Matlab, Lilypond, machines à commande numériques, . . .
http://jb.vioix.free.fr
3-20
Les différents langages informatiques
Langages informatique
Les langages informatiques
Langages de programmation
La majorité des tâches informatiques font appels à des langages de programmation.
Le but est d’automatiser des tâches, résoudre des problèmes, interagir avec
l’utilisateur,. . .
Langages pour des applications particulières
Mise en forme de données : HTML, XHTML, CSS, Latex, wiki, . . .
Définition de données : XML (SVG, OpenDocument, MathML, . . . )
Accès aux bases de données : SQL
VHDL, VRML, Matlab, Lilypond, machines à commande numériques, . . .
http://jb.vioix.free.fr
3-20
Les différents langages informatiques
Langages informatique
Les langages informatiques
Langages de programmation
La majorité des tâches informatiques font appels à des langages de programmation.
Le but est d’automatiser des tâches, résoudre des problèmes, interagir avec
l’utilisateur,. . .
Langages pour des applications particulières
Mise en forme de données : HTML, XHTML, CSS, Latex, wiki, . . .
Définition de données : XML (SVG, OpenDocument, MathML, . . . )
Accès aux bases de données : SQL
VHDL, VRML, Matlab, Lilypond, machines à commande numériques, . . .
http://jb.vioix.free.fr
3-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages impératifs
Les langages impératifs
Présentation des langages impératifs
Historiquement, ce sont les premiers langages dont le but était de faciliter l’écriture
des programmes.
Les instructions se regroupent en 4 types :
Manipulation de la mémoire : assignation, lecture et opérations arithmétiques.
Branchements sans condition (déplacement dans la mémoire programme)
Branchements conditionnels (permettent d’effectuer un saut si une condition est
vérifiée).
Boucles inconditionnelles (nombre de répétitions fixe) ou conditionnelles (sur un test).
Ces instructions sont proche du code machine, la compilation est très simple.
Quelques langages impératifs
Par principes tous les assembleurs sont des langages impératifs.
Les langages les plus anciens sont souvent des langages impératifs : C, Pascal,
FORTRAN,. . .
De nombreux langages modernes supportent la programmation impérative : Java,
Perl, Python,. . .
http://jb.vioix.free.fr
4-20
Les différents langages informatiques
Langages fonctionnels
Langages fonctionnels
Présentation des langages fonctionnels
La gestion de la mémoire est l’élément critique de la programmation impérative.
La programmation fonctionnelle propose une approche très différente de la mémoire,
aucune affectation n’est prévue.
Un programme est une application (au sens mathématique), un chaı̂nage de
fonctions simples.
Quelques langages fonctionnels
Les principaux langages fonctionnels sont Lisp et Scheme (présent, par exemple,
dans Gimp pour la programmation de plugins).
La bibliothèque Guile présente dans Gnome permet d’incorporer Scheme dans
n’importe qu’elle application (GnuCash, Lilypond, . . . ).
http://jb.vioix.free.fr
5-20
Les différents langages informatiques
Langages fonctionnels
Langages fonctionnels
Présentation des langages fonctionnels
La gestion de la mémoire est l’élément critique de la programmation impérative.
La programmation fonctionnelle propose une approche très différente de la mémoire,
aucune affectation n’est prévue.
Un programme est une application (au sens mathématique), un chaı̂nage de
fonctions simples.
Quelques langages fonctionnels
Les principaux langages fonctionnels sont Lisp et Scheme (présent, par exemple,
dans Gimp pour la programmation de plugins).
La bibliothèque Guile présente dans Gnome permet d’incorporer Scheme dans
n’importe qu’elle application (GnuCash, Lilypond, . . . ).
http://jb.vioix.free.fr
5-20
Les différents langages informatiques
Langages fonctionnels
Langages fonctionnels
Présentation des langages fonctionnels
La gestion de la mémoire est l’élément critique de la programmation impérative.
La programmation fonctionnelle propose une approche très différente de la mémoire,
aucune affectation n’est prévue.
Un programme est une application (au sens mathématique), un chaı̂nage de
fonctions simples.
Quelques langages fonctionnels
Les principaux langages fonctionnels sont Lisp et Scheme (présent, par exemple,
dans Gimp pour la programmation de plugins).
La bibliothèque Guile présente dans Gnome permet d’incorporer Scheme dans
n’importe qu’elle application (GnuCash, Lilypond, . . . ).
http://jb.vioix.free.fr
5-20
Les différents langages informatiques
Langages fonctionnels
Langages fonctionnels
Présentation des langages fonctionnels
La gestion de la mémoire est l’élément critique de la programmation impérative.
La programmation fonctionnelle propose une approche très différente de la mémoire,
aucune affectation n’est prévue.
Un programme est une application (au sens mathématique), un chaı̂nage de
fonctions simples.
Quelques langages fonctionnels
Les principaux langages fonctionnels sont Lisp et Scheme (présent, par exemple,
dans Gimp pour la programmation de plugins).
La bibliothèque Guile présente dans Gnome permet d’incorporer Scheme dans
n’importe qu’elle application (GnuCash, Lilypond, . . . ).
http://jb.vioix.free.fr
5-20
Les différents langages informatiques
Langages fonctionnels
Langages fonctionnels
Présentation des langages fonctionnels
La gestion de la mémoire est l’élément critique de la programmation impérative.
La programmation fonctionnelle propose une approche très différente de la mémoire,
aucune affectation n’est prévue.
Un programme est une application (au sens mathématique), un chaı̂nage de
fonctions simples.
Quelques langages fonctionnels
Les principaux langages fonctionnels sont Lisp et Scheme (présent, par exemple,
dans Gimp pour la programmation de plugins).
La bibliothèque Guile présente dans Gnome permet d’incorporer Scheme dans
n’importe qu’elle application (GnuCash, Lilypond, . . . ).
http://jb.vioix.free.fr
5-20
Les différents langages informatiques
Langages déclaratifs
Langages déclaratifs
Présentation des langages déclaratifs
Les programmations fonctionnelles et impératives s’intéressent à l’écriture de la
solution d’un problème.
La programmation déclarative est basée sur la description des éléments et des
besoins (le cas échéant).
Quelques langages déclaratifs
Prolog permet la programmation par contraintes de manière déclarative (on spécifie
le problème et ses contraintes, non pas la méthode pour résoudre).
Les langages comme XML et ses dérivés sont considérés comme déclaratifs.
http://jb.vioix.free.fr
6-20
Les différents langages informatiques
Langages déclaratifs
Langages déclaratifs
Présentation des langages déclaratifs
Les programmations fonctionnelles et impératives s’intéressent à l’écriture de la
solution d’un problème.
La programmation déclarative est basée sur la description des éléments et des
besoins (le cas échéant).
Quelques langages déclaratifs
Prolog permet la programmation par contraintes de manière déclarative (on spécifie
le problème et ses contraintes, non pas la méthode pour résoudre).
Les langages comme XML et ses dérivés sont considérés comme déclaratifs.
http://jb.vioix.free.fr
6-20
Les différents langages informatiques
Langages déclaratifs
Langages déclaratifs
Présentation des langages déclaratifs
Les programmations fonctionnelles et impératives s’intéressent à l’écriture de la
solution d’un problème.
La programmation déclarative est basée sur la description des éléments et des
besoins (le cas échéant).
Quelques langages déclaratifs
Prolog permet la programmation par contraintes de manière déclarative (on spécifie
le problème et ses contraintes, non pas la méthode pour résoudre).
Les langages comme XML et ses dérivés sont considérés comme déclaratifs.
http://jb.vioix.free.fr
6-20
Les différents langages informatiques
Langages déclaratifs
Langages déclaratifs
Présentation des langages déclaratifs
Les programmations fonctionnelles et impératives s’intéressent à l’écriture de la
solution d’un problème.
La programmation déclarative est basée sur la description des éléments et des
besoins (le cas échéant).
Quelques langages déclaratifs
Prolog permet la programmation par contraintes de manière déclarative (on spécifie
le problème et ses contraintes, non pas la méthode pour résoudre).
Les langages comme XML et ses dérivés sont considérés comme déclaratifs.
http://jb.vioix.free.fr
6-20
Les différents langages informatiques
Langages orientés objet
Langages orientés objet
Présentation des langages orienté objet
Un des paradigme de programmation le plus utilisée et la programmation orienté
objet.
Un programme est composé de briques logicielles, les objets qui contiennent des
données et des méthodes pour communiquer avec les autres objets.
Les objets peuvent être ensuite combinés, modifiés,. . . pour obtenir un
comportement spécifique.
La POO (Programmation Orienté Objet) permet une forte réutilisation du code et
une modélisation (UML) aisée des problèmes informatiques.
Quelques langages orientés objet
La majorité des langages actuels supporte la POO, souvent en complément de la
programmation impérative.
Des langages comme Ruby, Smalltalk sont fondamentalement orientés objet.
http://jb.vioix.free.fr
7-20
Les différents langages informatiques
Langages orientés objet
Langages orientés objet
Présentation des langages orienté objet
Un des paradigme de programmation le plus utilisée et la programmation orienté
objet.
Un programme est composé de briques logicielles, les objets qui contiennent des
données et des méthodes pour communiquer avec les autres objets.
Les objets peuvent être ensuite combinés, modifiés,. . . pour obtenir un
comportement spécifique.
La POO (Programmation Orienté Objet) permet une forte réutilisation du code et
une modélisation (UML) aisée des problèmes informatiques.
Quelques langages orientés objet
La majorité des langages actuels supporte la POO, souvent en complément de la
programmation impérative.
Des langages comme Ruby, Smalltalk sont fondamentalement orientés objet.
http://jb.vioix.free.fr
7-20
Les différents langages informatiques
Langages orientés objet
Langages orientés objet
Présentation des langages orienté objet
Un des paradigme de programmation le plus utilisée et la programmation orienté
objet.
Un programme est composé de briques logicielles, les objets qui contiennent des
données et des méthodes pour communiquer avec les autres objets.
Les objets peuvent être ensuite combinés, modifiés,. . . pour obtenir un
comportement spécifique.
La POO (Programmation Orienté Objet) permet une forte réutilisation du code et
une modélisation (UML) aisée des problèmes informatiques.
Quelques langages orientés objet
La majorité des langages actuels supporte la POO, souvent en complément de la
programmation impérative.
Des langages comme Ruby, Smalltalk sont fondamentalement orientés objet.
http://jb.vioix.free.fr
7-20
Les différents langages informatiques
Langages orientés objet
Langages orientés objet
Présentation des langages orienté objet
Un des paradigme de programmation le plus utilisée et la programmation orienté
objet.
Un programme est composé de briques logicielles, les objets qui contiennent des
données et des méthodes pour communiquer avec les autres objets.
Les objets peuvent être ensuite combinés, modifiés,. . . pour obtenir un
comportement spécifique.
La POO (Programmation Orienté Objet) permet une forte réutilisation du code et
une modélisation (UML) aisée des problèmes informatiques.
Quelques langages orientés objet
La majorité des langages actuels supporte la POO, souvent en complément de la
programmation impérative.
Des langages comme Ruby, Smalltalk sont fondamentalement orientés objet.
http://jb.vioix.free.fr
7-20
Les différents langages informatiques
Langages orientés objet
Langages orientés objet
Présentation des langages orienté objet
Un des paradigme de programmation le plus utilisée et la programmation orienté
objet.
Un programme est composé de briques logicielles, les objets qui contiennent des
données et des méthodes pour communiquer avec les autres objets.
Les objets peuvent être ensuite combinés, modifiés,. . . pour obtenir un
comportement spécifique.
La POO (Programmation Orienté Objet) permet une forte réutilisation du code et
une modélisation (UML) aisée des problèmes informatiques.
Quelques langages orientés objet
La majorité des langages actuels supporte la POO, souvent en complément de la
programmation impérative.
Des langages comme Ruby, Smalltalk sont fondamentalement orientés objet.
http://jb.vioix.free.fr
7-20
Les différents langages informatiques
Langages orientés objet
Langages orientés objet
Présentation des langages orienté objet
Un des paradigme de programmation le plus utilisée et la programmation orienté
objet.
Un programme est composé de briques logicielles, les objets qui contiennent des
données et des méthodes pour communiquer avec les autres objets.
Les objets peuvent être ensuite combinés, modifiés,. . . pour obtenir un
comportement spécifique.
La POO (Programmation Orienté Objet) permet une forte réutilisation du code et
une modélisation (UML) aisée des problèmes informatiques.
Quelques langages orientés objet
La majorité des langages actuels supporte la POO, souvent en complément de la
programmation impérative.
Des langages comme Ruby, Smalltalk sont fondamentalement orientés objet.
http://jb.vioix.free.fr
7-20
Les différents langages informatiques
Compilés/interprétés
Langages compilés vs. langages interprétés
Langages compilés : C, C++, Fortan,. . .
Les instructions sont traduites en langage machine par un compilateur qui optimise
le code (espace mémoire, vitesse,. . . ).
Le code obtenu ne peut être exécuté que sur une machine compatible.
Langages interprétés : BASIC, ECMAScript (Javascript,. . . ), bash,. . .
Les instructions sont converties “à la volée” lors de l’exécution du programme, d’où
une vitesse moindre.
Les langages interprétés sont indépendant de la plate-forme d’exécution (en
théorie. . . ).
Langage semi-interprété : Perl, Python, Ruby,. . .
Certains langages interprétés utilisent une représentation intermédiaire entre la
source et le code machine pour optimiser le programme.
Cette approche permet d’utiliser des langages interprétés avec des vitesses
d’exécution proches des langages compilées.
http://jb.vioix.free.fr
8-20
Les différents langages informatiques
Compilés/interprétés
Langages compilés vs. langages interprétés
Langages compilés : C, C++, Fortan,. . .
Les instructions sont traduites en langage machine par un compilateur qui optimise
le code (espace mémoire, vitesse,. . . ).
Le code obtenu ne peut être exécuté que sur une machine compatible.
Langages interprétés : BASIC, ECMAScript (Javascript,. . . ), bash,. . .
Les instructions sont converties “à la volée” lors de l’exécution du programme, d’où
une vitesse moindre.
Les langages interprétés sont indépendant de la plate-forme d’exécution (en
théorie. . . ).
Langage semi-interprété : Perl, Python, Ruby,. . .
Certains langages interprétés utilisent une représentation intermédiaire entre la
source et le code machine pour optimiser le programme.
Cette approche permet d’utiliser des langages interprétés avec des vitesses
d’exécution proches des langages compilées.
http://jb.vioix.free.fr
8-20
Les différents langages informatiques
Compilés/interprétés
Langages compilés vs. langages interprétés
Langages compilés : C, C++, Fortan,. . .
Les instructions sont traduites en langage machine par un compilateur qui optimise
le code (espace mémoire, vitesse,. . . ).
Le code obtenu ne peut être exécuté que sur une machine compatible.
Langages interprétés : BASIC, ECMAScript (Javascript,. . . ), bash,. . .
Les instructions sont converties “à la volée” lors de l’exécution du programme, d’où
une vitesse moindre.
Les langages interprétés sont indépendant de la plate-forme d’exécution (en
théorie. . . ).
Langage semi-interprété : Perl, Python, Ruby,. . .
Certains langages interprétés utilisent une représentation intermédiaire entre la
source et le code machine pour optimiser le programme.
Cette approche permet d’utiliser des langages interprétés avec des vitesses
d’exécution proches des langages compilées.
http://jb.vioix.free.fr
8-20
Les différents langages informatiques
Compilés/interprétés
Langages compilés vs. langages interprétés
Langages compilés : C, C++, Fortan,. . .
Les instructions sont traduites en langage machine par un compilateur qui optimise
le code (espace mémoire, vitesse,. . . ).
Le code obtenu ne peut être exécuté que sur une machine compatible.
Langages interprétés : BASIC, ECMAScript (Javascript,. . . ), bash,. . .
Les instructions sont converties “à la volée” lors de l’exécution du programme, d’où
une vitesse moindre.
Les langages interprétés sont indépendant de la plate-forme d’exécution (en
théorie. . . ).
Langage semi-interprété : Perl, Python, Ruby,. . .
Certains langages interprétés utilisent une représentation intermédiaire entre la
source et le code machine pour optimiser le programme.
Cette approche permet d’utiliser des langages interprétés avec des vitesses
d’exécution proches des langages compilées.
http://jb.vioix.free.fr
8-20
Les différents langages informatiques
Compilés/interprétés
Langages compilés vs. langages interprétés
Langages compilés : C, C++, Fortan,. . .
Les instructions sont traduites en langage machine par un compilateur qui optimise
le code (espace mémoire, vitesse,. . . ).
Le code obtenu ne peut être exécuté que sur une machine compatible.
Langages interprétés : BASIC, ECMAScript (Javascript,. . . ), bash,. . .
Les instructions sont converties “à la volée” lors de l’exécution du programme, d’où
une vitesse moindre.
Les langages interprétés sont indépendant de la plate-forme d’exécution (en
théorie. . . ).
Langage semi-interprété : Perl, Python, Ruby,. . .
Certains langages interprétés utilisent une représentation intermédiaire entre la
source et le code machine pour optimiser le programme.
Cette approche permet d’utiliser des langages interprétés avec des vitesses
d’exécution proches des langages compilées.
http://jb.vioix.free.fr
8-20
Les différents langages informatiques
Compilés/interprétés
Langages compilés vs. langages interprétés
Langages compilés : C, C++, Fortan,. . .
Les instructions sont traduites en langage machine par un compilateur qui optimise
le code (espace mémoire, vitesse,. . . ).
Le code obtenu ne peut être exécuté que sur une machine compatible.
Langages interprétés : BASIC, ECMAScript (Javascript,. . . ), bash,. . .
Les instructions sont converties “à la volée” lors de l’exécution du programme, d’où
une vitesse moindre.
Les langages interprétés sont indépendant de la plate-forme d’exécution (en
théorie. . . ).
Langage semi-interprété : Perl, Python, Ruby,. . .
Certains langages interprétés utilisent une représentation intermédiaire entre la
source et le code machine pour optimiser le programme.
Cette approche permet d’utiliser des langages interprétés avec des vitesses
d’exécution proches des langages compilées.
http://jb.vioix.free.fr
8-20
Les différents langages informatiques
Machine virtuelle
Machines virtuelles
Principe des machines virtuelles
Afin de pouvoir exécuter du code compilé sur plusieurs plate-formes, certains
langage utilisent des machines virtuelles.
Le code est compilé pour une machine virtuelle, un logiciel se comportant comme un
système informatique.
Seule la machine virtuelle change d’un système à l’autre assurant ainsi la
compatibilité du code.
Les machines virtuelles récentes proposent la “compilation à la volée”, conduisant
ainsi à une exécution rapide du code.
Exemples de machines virtuelles
Java propose la machine virtuelle JVM (Java Virtual Machine) pour exécuter les
programmes.
L’environement .NET de Microsoft utilise la machine virtuelle CLI.
Perl 6 utilisera la machine Parrot,. . .
http://jb.vioix.free.fr
9-20
Les différents langages informatiques
Machine virtuelle
Machines virtuelles
Principe des machines virtuelles
Afin de pouvoir exécuter du code compilé sur plusieurs plate-formes, certains
langage utilisent des machines virtuelles.
Le code est compilé pour une machine virtuelle, un logiciel se comportant comme un
système informatique.
Seule la machine virtuelle change d’un système à l’autre assurant ainsi la
compatibilité du code.
Les machines virtuelles récentes proposent la “compilation à la volée”, conduisant
ainsi à une exécution rapide du code.
Exemples de machines virtuelles
Java propose la machine virtuelle JVM (Java Virtual Machine) pour exécuter les
programmes.
L’environement .NET de Microsoft utilise la machine virtuelle CLI.
Perl 6 utilisera la machine Parrot,. . .
http://jb.vioix.free.fr
9-20
Les différents langages informatiques
Machine virtuelle
Machines virtuelles
Principe des machines virtuelles
Afin de pouvoir exécuter du code compilé sur plusieurs plate-formes, certains
langage utilisent des machines virtuelles.
Le code est compilé pour une machine virtuelle, un logiciel se comportant comme un
système informatique.
Seule la machine virtuelle change d’un système à l’autre assurant ainsi la
compatibilité du code.
Les machines virtuelles récentes proposent la “compilation à la volée”, conduisant
ainsi à une exécution rapide du code.
Exemples de machines virtuelles
Java propose la machine virtuelle JVM (Java Virtual Machine) pour exécuter les
programmes.
L’environement .NET de Microsoft utilise la machine virtuelle CLI.
Perl 6 utilisera la machine Parrot,. . .
http://jb.vioix.free.fr
9-20
Les différents langages informatiques
Machine virtuelle
Machines virtuelles
Principe des machines virtuelles
Afin de pouvoir exécuter du code compilé sur plusieurs plate-formes, certains
langage utilisent des machines virtuelles.
Le code est compilé pour une machine virtuelle, un logiciel se comportant comme un
système informatique.
Seule la machine virtuelle change d’un système à l’autre assurant ainsi la
compatibilité du code.
Les machines virtuelles récentes proposent la “compilation à la volée”, conduisant
ainsi à une exécution rapide du code.
Exemples de machines virtuelles
Java propose la machine virtuelle JVM (Java Virtual Machine) pour exécuter les
programmes.
L’environement .NET de Microsoft utilise la machine virtuelle CLI.
Perl 6 utilisera la machine Parrot,. . .
http://jb.vioix.free.fr
9-20
Les différents langages informatiques
Machine virtuelle
Machines virtuelles
Principe des machines virtuelles
Afin de pouvoir exécuter du code compilé sur plusieurs plate-formes, certains
langage utilisent des machines virtuelles.
Le code est compilé pour une machine virtuelle, un logiciel se comportant comme un
système informatique.
Seule la machine virtuelle change d’un système à l’autre assurant ainsi la
compatibilité du code.
Les machines virtuelles récentes proposent la “compilation à la volée”, conduisant
ainsi à une exécution rapide du code.
Exemples de machines virtuelles
Java propose la machine virtuelle JVM (Java Virtual Machine) pour exécuter les
programmes.
L’environement .NET de Microsoft utilise la machine virtuelle CLI.
Perl 6 utilisera la machine Parrot,. . .
http://jb.vioix.free.fr
9-20
Les différents langages informatiques
Machine virtuelle
Machines virtuelles
Principe des machines virtuelles
Afin de pouvoir exécuter du code compilé sur plusieurs plate-formes, certains
langage utilisent des machines virtuelles.
Le code est compilé pour une machine virtuelle, un logiciel se comportant comme un
système informatique.
Seule la machine virtuelle change d’un système à l’autre assurant ainsi la
compatibilité du code.
Les machines virtuelles récentes proposent la “compilation à la volée”, conduisant
ainsi à une exécution rapide du code.
Exemples de machines virtuelles
Java propose la machine virtuelle JVM (Java Virtual Machine) pour exécuter les
programmes.
L’environement .NET de Microsoft utilise la machine virtuelle CLI.
Perl 6 utilisera la machine Parrot,. . .
http://jb.vioix.free.fr
9-20
Les différents langages informatiques
Machine virtuelle
Machines virtuelles
Principe des machines virtuelles
Afin de pouvoir exécuter du code compilé sur plusieurs plate-formes, certains
langage utilisent des machines virtuelles.
Le code est compilé pour une machine virtuelle, un logiciel se comportant comme un
système informatique.
Seule la machine virtuelle change d’un système à l’autre assurant ainsi la
compatibilité du code.
Les machines virtuelles récentes proposent la “compilation à la volée”, conduisant
ainsi à une exécution rapide du code.
Exemples de machines virtuelles
Java propose la machine virtuelle JVM (Java Virtual Machine) pour exécuter les
programmes.
L’environement .NET de Microsoft utilise la machine virtuelle CLI.
Perl 6 utilisera la machine Parrot,. . .
http://jb.vioix.free.fr
9-20
La langage Java
Presentation
Présentation du langage Java
Historique du langage Java
Java est lancé par Sun Microsystems en 1995.
L’idée était de créer un langage multi-plateformes (”Write once, run anywhere”).
Java propose dès sa première version une forte orientation réseaux (connexions
faciles, applet,. . . )
La lenteur des premières version ainsi que des démêlés judiciaires ont ralenti le
développement de Java.
Présent et futur de Java
Java est devenu un logiciel libre (licence GPL) en novembre 2006.
Java est présent sur toutes les plate-formes informatiques grand public (Windows,
MacOS, Linux,. . . ).
La compilation just-in-time rend les application suffisamment rapide pour ne pas
léser l’utilisateur.
http://jb.vioix.free.fr
10-20
La langage Java
Presentation
Présentation du langage Java
Historique du langage Java
Java est lancé par Sun Microsystems en 1995.
L’idée était de créer un langage multi-plateformes (”Write once, run anywhere”).
Java propose dès sa première version une forte orientation réseaux (connexions
faciles, applet,. . . )
La lenteur des premières version ainsi que des démêlés judiciaires ont ralenti le
développement de Java.
Présent et futur de Java
Java est devenu un logiciel libre (licence GPL) en novembre 2006.
Java est présent sur toutes les plate-formes informatiques grand public (Windows,
MacOS, Linux,. . . ).
La compilation just-in-time rend les application suffisamment rapide pour ne pas
léser l’utilisateur.
http://jb.vioix.free.fr
10-20
La langage Java
Presentation
Présentation du langage Java
Historique du langage Java
Java est lancé par Sun Microsystems en 1995.
L’idée était de créer un langage multi-plateformes (”Write once, run anywhere”).
Java propose dès sa première version une forte orientation réseaux (connexions
faciles, applet,. . . )
La lenteur des premières version ainsi que des démêlés judiciaires ont ralenti le
développement de Java.
Présent et futur de Java
Java est devenu un logiciel libre (licence GPL) en novembre 2006.
Java est présent sur toutes les plate-formes informatiques grand public (Windows,
MacOS, Linux,. . . ).
La compilation just-in-time rend les application suffisamment rapide pour ne pas
léser l’utilisateur.
http://jb.vioix.free.fr
10-20
La langage Java
Presentation
Présentation du langage Java
Historique du langage Java
Java est lancé par Sun Microsystems en 1995.
L’idée était de créer un langage multi-plateformes (”Write once, run anywhere”).
Java propose dès sa première version une forte orientation réseaux (connexions
faciles, applet,. . . )
La lenteur des premières version ainsi que des démêlés judiciaires ont ralenti le
développement de Java.
Présent et futur de Java
Java est devenu un logiciel libre (licence GPL) en novembre 2006.
Java est présent sur toutes les plate-formes informatiques grand public (Windows,
MacOS, Linux,. . . ).
La compilation just-in-time rend les application suffisamment rapide pour ne pas
léser l’utilisateur.
http://jb.vioix.free.fr
10-20
La langage Java
Presentation
Présentation du langage Java
Historique du langage Java
Java est lancé par Sun Microsystems en 1995.
L’idée était de créer un langage multi-plateformes (”Write once, run anywhere”).
Java propose dès sa première version une forte orientation réseaux (connexions
faciles, applet,. . . )
La lenteur des premières version ainsi que des démêlés judiciaires ont ralenti le
développement de Java.
Présent et futur de Java
Java est devenu un logiciel libre (licence GPL) en novembre 2006.
Java est présent sur toutes les plate-formes informatiques grand public (Windows,
MacOS, Linux,. . . ).
La compilation just-in-time rend les application suffisamment rapide pour ne pas
léser l’utilisateur.
http://jb.vioix.free.fr
10-20
La langage Java
Presentation
Présentation du langage Java
Historique du langage Java
Java est lancé par Sun Microsystems en 1995.
L’idée était de créer un langage multi-plateformes (”Write once, run anywhere”).
Java propose dès sa première version une forte orientation réseaux (connexions
faciles, applet,. . . )
La lenteur des premières version ainsi que des démêlés judiciaires ont ralenti le
développement de Java.
Présent et futur de Java
Java est devenu un logiciel libre (licence GPL) en novembre 2006.
Java est présent sur toutes les plate-formes informatiques grand public (Windows,
MacOS, Linux,. . . ).
La compilation just-in-time rend les application suffisamment rapide pour ne pas
léser l’utilisateur.
http://jb.vioix.free.fr
10-20
La langage Java
Presentation
Présentation du langage Java
Historique du langage Java
Java est lancé par Sun Microsystems en 1995.
L’idée était de créer un langage multi-plateformes (”Write once, run anywhere”).
Java propose dès sa première version une forte orientation réseaux (connexions
faciles, applet,. . . )
La lenteur des premières version ainsi que des démêlés judiciaires ont ralenti le
développement de Java.
Présent et futur de Java
Java est devenu un logiciel libre (licence GPL) en novembre 2006.
Java est présent sur toutes les plate-formes informatiques grand public (Windows,
MacOS, Linux,. . . ).
La compilation just-in-time rend les application suffisamment rapide pour ne pas
léser l’utilisateur.
http://jb.vioix.free.fr
10-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Presentation
Avantages du langage Java
Points forts de Java pour le programmeur
Java est un langage sécurisé dès la conception (et jusqu’à l’exécution).
La syntaxe de java est simple et agréable (pas d’opérateurs surchargés, pas de
préprocesseur,. . . )
Gestion automatique de la mémoire (absence de pointeurs remplacés par des
références, ramasse-miettes)
Utilisation facile des exceptions, des threads,. . .
API très riche, plusieurs milliers de classes.
J2ME (Java 2 Micro Edition) est embarqué dans de nombreux téléphones portables
et PDA.
Points forts de Java pour l’utilisateur
Les applications Java sont totalement compatibles entre les différentes plate-formes.
Les mêmes fonctionnalités sont disponibles quelque soit le système d’exploitation.
L’exécution des programmes se fait dans un environnement sécurisé.
Elle sécurise l’exécution des programmes.
http://jb.vioix.free.fr
11-20
La langage Java
Utilisation de java,javac
Généralités
Création, compilation et exécution
Le fichier source est un fichier texte sauvegardé avec l’extension .java
Il est compilé en byte code avec l’utilitaire javac, un fichier avec l’extension .class
est obtenu.
Ce dernier fichier peut être distribué, s’il est exécutable, on utilisera l’utilitaire java.
Dans un premier temps, seuls les éléments indépendant de la programmation
orientée objet seront présentés.
Elements en commun avec C (C++,. . . )
Les instructions sont terminées par un point virgule ;
Les blocs d’instructions sont matérialisés par des accolades { et }
Le langage est sensible à la casse (majuscule/minuscule).
http://jb.vioix.free.fr
12-20
La langage Java
Utilisation de java,javac
Généralités
Création, compilation et exécution
Le fichier source est un fichier texte sauvegardé avec l’extension .java
Il est compilé en byte code avec l’utilitaire javac, un fichier avec l’extension .class
est obtenu.
Ce dernier fichier peut être distribué, s’il est exécutable, on utilisera l’utilitaire java.
Dans un premier temps, seuls les éléments indépendant de la programmation
orientée objet seront présentés.
Elements en commun avec C (C++,. . . )
Les instructions sont terminées par un point virgule ;
Les blocs d’instructions sont matérialisés par des accolades { et }
Le langage est sensible à la casse (majuscule/minuscule).
http://jb.vioix.free.fr
12-20
La langage Java
Utilisation de java,javac
Généralités
Création, compilation et exécution
Le fichier source est un fichier texte sauvegardé avec l’extension .java
Il est compilé en byte code avec l’utilitaire javac, un fichier avec l’extension .class
est obtenu.
Ce dernier fichier peut être distribué, s’il est exécutable, on utilisera l’utilitaire java.
Dans un premier temps, seuls les éléments indépendant de la programmation
orientée objet seront présentés.
Elements en commun avec C (C++,. . . )
Les instructions sont terminées par un point virgule ;
Les blocs d’instructions sont matérialisés par des accolades { et }
Le langage est sensible à la casse (majuscule/minuscule).
http://jb.vioix.free.fr
12-20
La langage Java
Utilisation de java,javac
Généralités
Création, compilation et exécution
Le fichier source est un fichier texte sauvegardé avec l’extension .java
Il est compilé en byte code avec l’utilitaire javac, un fichier avec l’extension .class
est obtenu.
Ce dernier fichier peut être distribué, s’il est exécutable, on utilisera l’utilitaire java.
Dans un premier temps, seuls les éléments indépendant de la programmation
orientée objet seront présentés.
Elements en commun avec C (C++,. . . )
Les instructions sont terminées par un point virgule ;
Les blocs d’instructions sont matérialisés par des accolades { et }
Le langage est sensible à la casse (majuscule/minuscule).
http://jb.vioix.free.fr
12-20
La langage Java
Utilisation de java,javac
Généralités
Création, compilation et exécution
Le fichier source est un fichier texte sauvegardé avec l’extension .java
Il est compilé en byte code avec l’utilitaire javac, un fichier avec l’extension .class
est obtenu.
Ce dernier fichier peut être distribué, s’il est exécutable, on utilisera l’utilitaire java.
Dans un premier temps, seuls les éléments indépendant de la programmation
orientée objet seront présentés.
Elements en commun avec C (C++,. . . )
Les instructions sont terminées par un point virgule ;
Les blocs d’instructions sont matérialisés par des accolades { et }
Le langage est sensible à la casse (majuscule/minuscule).
http://jb.vioix.free.fr
12-20
La langage Java
Utilisation de java,javac
Généralités
Création, compilation et exécution
Le fichier source est un fichier texte sauvegardé avec l’extension .java
Il est compilé en byte code avec l’utilitaire javac, un fichier avec l’extension .class
est obtenu.
Ce dernier fichier peut être distribué, s’il est exécutable, on utilisera l’utilitaire java.
Dans un premier temps, seuls les éléments indépendant de la programmation
orientée objet seront présentés.
Elements en commun avec C (C++,. . . )
Les instructions sont terminées par un point virgule ;
Les blocs d’instructions sont matérialisés par des accolades { et }
Le langage est sensible à la casse (majuscule/minuscule).
http://jb.vioix.free.fr
12-20
La langage Java
Utilisation de java,javac
Généralités
Création, compilation et exécution
Le fichier source est un fichier texte sauvegardé avec l’extension .java
Il est compilé en byte code avec l’utilitaire javac, un fichier avec l’extension .class
est obtenu.
Ce dernier fichier peut être distribué, s’il est exécutable, on utilisera l’utilitaire java.
Dans un premier temps, seuls les éléments indépendant de la programmation
orientée objet seront présentés.
Elements en commun avec C (C++,. . . )
Les instructions sont terminées par un point virgule ;
Les blocs d’instructions sont matérialisés par des accolades { et }
Le langage est sensible à la casse (majuscule/minuscule).
http://jb.vioix.free.fr
12-20
La langage Java
Variables
Les variables
Syntaxe
En java les variables contiennent une valeur d’un type primitif (entier, flottant,. . . ).
Les variables peuvent aussi référencer un objet.
En peuvent être créées n’importe où dans le programme avec la syntaxe
type nom_de_la_variable .
Le compilateur veille à l’initialisation des variables avant leur utilisation.
Visibilité
Une variable est visible dans son bloc et dans tous les blocs inclus.
Un bloc contenu ne peut pas avoir une variable ayant le même nom qu’une présente
dans le bloc contenant :
...{
int a ;
...
{
int a; // E r r e u r !
...
}
...
}
http://jb.vioix.free.fr
13-20
La langage Java
Variables
Les variables
Syntaxe
En java les variables contiennent une valeur d’un type primitif (entier, flottant,. . . ).
Les variables peuvent aussi référencer un objet.
En peuvent être créées n’importe où dans le programme avec la syntaxe
type nom_de_la_variable .
Le compilateur veille à l’initialisation des variables avant leur utilisation.
Visibilité
Une variable est visible dans son bloc et dans tous les blocs inclus.
Un bloc contenu ne peut pas avoir une variable ayant le même nom qu’une présente
dans le bloc contenant :
...{
int a ;
...
{
int a; // E r r e u r !
...
}
...
}
http://jb.vioix.free.fr
13-20
La langage Java
Variables
Les variables
Syntaxe
En java les variables contiennent une valeur d’un type primitif (entier, flottant,. . . ).
Les variables peuvent aussi référencer un objet.
En peuvent être créées n’importe où dans le programme avec la syntaxe
type nom_de_la_variable .
Le compilateur veille à l’initialisation des variables avant leur utilisation.
Visibilité
Une variable est visible dans son bloc et dans tous les blocs inclus.
Un bloc contenu ne peut pas avoir une variable ayant le même nom qu’une présente
dans le bloc contenant :
...{
int a ;
...
{
int a; // E r r e u r !
...
}
...
}
http://jb.vioix.free.fr
13-20
La langage Java
Variables
Les variables
Syntaxe
En java les variables contiennent une valeur d’un type primitif (entier, flottant,. . . ).
Les variables peuvent aussi référencer un objet.
En peuvent être créées n’importe où dans le programme avec la syntaxe
type nom_de_la_variable .
Le compilateur veille à l’initialisation des variables avant leur utilisation.
Visibilité
Une variable est visible dans son bloc et dans tous les blocs inclus.
Un bloc contenu ne peut pas avoir une variable ayant le même nom qu’une présente
dans le bloc contenant :
...{
int a ;
...
{
int a; // E r r e u r !
...
}
...
}
http://jb.vioix.free.fr
13-20
La langage Java
Variables
Les variables
Syntaxe
En java les variables contiennent une valeur d’un type primitif (entier, flottant,. . . ).
Les variables peuvent aussi référencer un objet.
En peuvent être créées n’importe où dans le programme avec la syntaxe
type nom_de_la_variable .
Le compilateur veille à l’initialisation des variables avant leur utilisation.
Visibilité
Une variable est visible dans son bloc et dans tous les blocs inclus.
Un bloc contenu ne peut pas avoir une variable ayant le même nom qu’une présente
dans le bloc contenant :
...{
int a ;
...
{
int a; // E r r e u r !
...
}
...
}
http://jb.vioix.free.fr
13-20
La langage Java
Variables
Les variables
Syntaxe
En java les variables contiennent une valeur d’un type primitif (entier, flottant,. . . ).
Les variables peuvent aussi référencer un objet.
En peuvent être créées n’importe où dans le programme avec la syntaxe
type nom_de_la_variable .
Le compilateur veille à l’initialisation des variables avant leur utilisation.
Visibilité
Une variable est visible dans son bloc et dans tous les blocs inclus.
Un bloc contenu ne peut pas avoir une variable ayant le même nom qu’une présente
dans le bloc contenant :
...{
int a ;
...
{
int a; // E r r e u r !
...
}
...
}
http://jb.vioix.free.fr
13-20
La langage Java
Variables
Types de base en Java
Les types primitifs
Type
boolean
char
byte
short
int
long
float
double
Description
Booléen (true ou false)
Un caractère (unicode 16 bits)
Entier de 8 bits
Entier de 16 bits
Entier de 32 bits
Entier de 64 bits
Flottant de 32 bits au format IEEE 754
Flottant de 64 bits au format IEEE 754
Compléments
La capacité des types primitifs est invariante ; elle ne dépend pas du matériel sur
lequel le code java est exécuté (puisque l’on utilise une machine virtuelle).
Les types primitifs ne sont pas des objets ; des classes équivalents au types primitifs
existent en cas de besoin (par ex. Integer pour les int).
Pour le calcul scientifique, les classes BigInteger et BigDecimal sont disponible dans
l’API standard.
http://jb.vioix.free.fr
14-20
La langage Java
Variables
Les principaux opérateurs
Tableau synthétique
Priorité (1 la plus forte)
1
1
2
3
5
5
6
6
7
8
9
10
11
12
13
13
Symbole
++,-(int),(double),. . .
*,/,%
+,<,>,<=,=>
instanceof
==, !=
==, !=
&
^
|
&&
||
? :
=
+=,*=,. . .
Type(s) d’opérande(s)
Numérique
Tous(y compris objets)
Numériques
Numériques
Numériques
Objet
Types primitifs
Objet
Numériques ou booléen
Numériques ou booléen
Numériques ou booléen
Booléen
Booléen
N/A
Tous
Tous
Description
Pré ou post incrémentation, décrémentation
Transtypage (casting )
Multiplication, division, modulo (reste)
Addition, multiplication
Comparaisons
Comparaison de type
Egalité et inégalité de valeur
Egalité et inégalité de référence
ET logique
OU exclusif logique
OU logique
ET conditionnel
OU conditionnel
Opérateur de comparaison ternaire
Affectation
Affectation avec opération
Exemples. . .
int a;
a=3;
int a=3;
b=c*3 + 2;
...
http://jb.vioix.free.fr
15-20
La langage Java
Variables
Les principaux opérateurs
Tableau synthétique
Priorité (1 la plus forte)
1
1
2
3
5
5
6
6
7
8
9
10
11
12
13
13
Symbole
++,-(int),(double),. . .
*,/,%
+,<,>,<=,=>
instanceof
==, !=
==, !=
&
^
|
&&
||
? :
=
+=,*=,. . .
Type(s) d’opérande(s)
Numérique
Tous(y compris objets)
Numériques
Numériques
Numériques
Objet
Types primitifs
Objet
Numériques ou booléen
Numériques ou booléen
Numériques ou booléen
Booléen
Booléen
N/A
Tous
Tous
Description
Pré ou post incrémentation, décrémentation
Transtypage (casting )
Multiplication, division, modulo (reste)
Addition, multiplication
Comparaisons
Comparaison de type
Egalité et inégalité de valeur
Egalité et inégalité de référence
ET logique
OU exclusif logique
OU logique
ET conditionnel
OU conditionnel
Opérateur de comparaison ternaire
Affectation
Affectation avec opération
Exemples. . .
int a;
a=3;
int a=3;
b=c*3 + 2;
...
http://jb.vioix.free.fr
15-20
La langage Java
Variables
Les principaux opérateurs
Tableau synthétique
Priorité (1 la plus forte)
1
1
2
3
5
5
6
6
7
8
9
10
11
12
13
13
Symbole
++,-(int),(double),. . .
*,/,%
+,<,>,<=,=>
instanceof
==, !=
==, !=
&
^
|
&&
||
? :
=
+=,*=,. . .
Type(s) d’opérande(s)
Numérique
Tous(y compris objets)
Numériques
Numériques
Numériques
Objet
Types primitifs
Objet
Numériques ou booléen
Numériques ou booléen
Numériques ou booléen
Booléen
Booléen
N/A
Tous
Tous
Description
Pré ou post incrémentation, décrémentation
Transtypage (casting )
Multiplication, division, modulo (reste)
Addition, multiplication
Comparaisons
Comparaison de type
Egalité et inégalité de valeur
Egalité et inégalité de référence
ET logique
OU exclusif logique
OU logique
ET conditionnel
OU conditionnel
Opérateur de comparaison ternaire
Affectation
Affectation avec opération
Exemples. . .
int a;
a=3;
int a=3;
b=c*3 + 2;
...
http://jb.vioix.free.fr
15-20
La langage Java
Variables
Les principaux opérateurs
Tableau synthétique
Priorité (1 la plus forte)
1
1
2
3
5
5
6
6
7
8
9
10
11
12
13
13
Symbole
++,-(int),(double),. . .
*,/,%
+,<,>,<=,=>
instanceof
==, !=
==, !=
&
^
|
&&
||
? :
=
+=,*=,. . .
Type(s) d’opérande(s)
Numérique
Tous(y compris objets)
Numériques
Numériques
Numériques
Objet
Types primitifs
Objet
Numériques ou booléen
Numériques ou booléen
Numériques ou booléen
Booléen
Booléen
N/A
Tous
Tous
Description
Pré ou post incrémentation, décrémentation
Transtypage (casting )
Multiplication, division, modulo (reste)
Addition, multiplication
Comparaisons
Comparaison de type
Egalité et inégalité de valeur
Egalité et inégalité de référence
ET logique
OU exclusif logique
OU logique
ET conditionnel
OU conditionnel
Opérateur de comparaison ternaire
Affectation
Affectation avec opération
Exemples. . .
int a;
a=3;
int a=3;
b=c*3 + 2;
...
http://jb.vioix.free.fr
15-20
La langage Java
Instruction de contrôle de flux
Les tests (1)
Les instructions
if (...) else
if ( condition )
instructionA;
else
instructionB;
Le bloc else est optionnel.
Si la condition est vraie, l’instructionA est traitée, sinon (le cas échéant)
l’instructionB est exécutée.
Pour exécuter des instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
L’opérateur ternaire
Pour les tests simples, il est possible d’utiliser l’opérateur ternaire, noté ? :
max = (a>b) ? a : b;
http://jb.vioix.free.fr
16-20
La langage Java
Instruction de contrôle de flux
Les tests (1)
Les instructions
if (...) else
if ( condition )
instructionA;
else
instructionB;
Le bloc else est optionnel.
Si la condition est vraie, l’instructionA est traitée, sinon (le cas échéant)
l’instructionB est exécutée.
Pour exécuter des instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
L’opérateur ternaire
Pour les tests simples, il est possible d’utiliser l’opérateur ternaire, noté ? :
max = (a>b) ? a : b;
http://jb.vioix.free.fr
16-20
La langage Java
Instruction de contrôle de flux
Les tests (1)
Les instructions
if (...) else
if ( condition )
instructionA;
else
instructionB;
Le bloc else est optionnel.
Si la condition est vraie, l’instructionA est traitée, sinon (le cas échéant)
l’instructionB est exécutée.
Pour exécuter des instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
L’opérateur ternaire
Pour les tests simples, il est possible d’utiliser l’opérateur ternaire, noté ? :
max = (a>b) ? a : b;
http://jb.vioix.free.fr
16-20
La langage Java
Instruction de contrôle de flux
Les tests (1)
Les instructions
if (...) else
if ( condition ){
instructionsA;
}
else {
instructionsB;
}
Le bloc else est optionnel.
Si la condition est vraie, l’instructionA est traitée, sinon (le cas échéant)
l’instructionB est exécutée.
Pour exécuter des instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
L’opérateur ternaire
Pour les tests simples, il est possible d’utiliser l’opérateur ternaire, noté ? :
max = (a>b) ? a : b;
http://jb.vioix.free.fr
16-20
La langage Java
Instruction de contrôle de flux
Les tests (1)
Les instructions
if (...) else
if ( condition ){
instructionsA;
}
else {
instructionsB;
}
Le bloc else est optionnel.
Si la condition est vraie, l’instructionA est traitée, sinon (le cas échéant)
l’instructionB est exécutée.
Pour exécuter des instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
L’opérateur ternaire
Pour les tests simples, il est possible d’utiliser l’opérateur ternaire, noté ? :
max = (a>b) ? a : b;
http://jb.vioix.free.fr
16-20
La langage Java
Instruction de contrôle de flux
Les tests (2)
Les instructions
switch (...) case
Pour réaliser des test sur des entiers il est possible d’utiliser les instructions
switch/case
switch ( variable ) {
case cas1 :
// i n s t r u c t i o n ;
break ;
case cas2 :
{
/* bloc d i n s t r u c t i o n s ; */
}
break ;
default :
{
/* cas par defaut */
}
break ;
}
Précautions d’utilisation
Il est nécessaire d’ajouter break après chaque cas si un seul doit être exécuté à la fois.
http://jb.vioix.free.fr
17-20
La langage Java
Instruction de contrôle de flux
Les tests (2)
Les instructions
switch (...) case
Pour réaliser des test sur des entiers il est possible d’utiliser les instructions
switch/case
Précautions d’utilisation
Il est nécessaire d’ajouter break après chaque cas si un seul doit être exécuté à la fois.
La clause default permet de s’assurer d’un choix par défaut.
Il est préférable de la faire suivre par un break (évolution du programme).
http://jb.vioix.free.fr
17-20
La langage Java
Instruction de contrôle de flux
Les tests (2)
Les instructions
switch (...) case
Pour réaliser des test sur des entiers il est possible d’utiliser les instructions
switch/case
Précautions d’utilisation
Il est nécessaire d’ajouter break après chaque cas si un seul doit être exécuté à la fois.
La clause default permet de s’assurer d’un choix par défaut.
Il est préférable de la faire suivre par un break (évolution du programme).
http://jb.vioix.free.fr
17-20
La langage Java
Instruction de contrôle de flux
Les tests (2)
Les instructions
switch (...) case
Pour réaliser des test sur des entiers il est possible d’utiliser les instructions
switch/case
Précautions d’utilisation
Il est nécessaire d’ajouter break après chaque cas si un seul doit être exécuté à la fois.
La clause default permet de s’assurer d’un choix par défaut.
Il est préférable de la faire suivre par un break (évolution du programme).
http://jb.vioix.free.fr
17-20
La langage Java
Instruction de bouclage
Les boucles inconditionnelles
L’instruction
for
for ( i n i t i a l i s a t i o n ; condition ; i n c r e m e n t a t i o n )
instructi o n ;
L’instruction for permet de répéter une instruction (ou un bloc d’intruction).
Le nombre de répétition est fixé par : la valeur à l’initialisation, le condition et
l’incrémentation.
Pour répéter plusieurs instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
Déclaration du compteur
Il est possible de déclarer la variable utilisée comme compteur directement dans
l’instruction for.
Cette variable n’existe qu’à l’intérieur du bloc d’instructions suivant le for.
http://jb.vioix.free.fr
18-20
La langage Java
Instruction de bouclage
Les boucles inconditionnelles
L’instruction
for
for ( i n i t i a l i s a t i o n ; condition ; i n c r e m e n t a t i o n )
instructi o n ;
L’instruction for permet de répéter une instruction (ou un bloc d’intruction).
Le nombre de répétition est fixé par : la valeur à l’initialisation, le condition et
l’incrémentation.
Pour répéter plusieurs instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
Déclaration du compteur
Il est possible de déclarer la variable utilisée comme compteur directement dans
l’instruction for.
Cette variable n’existe qu’à l’intérieur du bloc d’instructions suivant le for.
http://jb.vioix.free.fr
18-20
La langage Java
Instruction de bouclage
Les boucles inconditionnelles
L’instruction
for
for ( i n i t i a l i s a t i o n ; condition ; i n c r e m e n t a t i o n ){
instructions;
}
L’instruction for permet de répéter une instruction (ou un bloc d’intruction).
Le nombre de répétition est fixé par : la valeur à l’initialisation, le condition et
l’incrémentation.
Pour répéter plusieurs instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
Déclaration du compteur
Il est possible de déclarer la variable utilisée comme compteur directement dans
l’instruction for.
Cette variable n’existe qu’à l’intérieur du bloc d’instructions suivant le for.
http://jb.vioix.free.fr
18-20
La langage Java
Instruction de bouclage
Les boucles inconditionnelles
L’instruction
for
for ( i n i t i a l i s a t i o n ; condition ; i n c r e m e n t a t i o n ){
instructions;
}
L’instruction for permet de répéter une instruction (ou un bloc d’intruction).
Le nombre de répétition est fixé par : la valeur à l’initialisation, le condition et
l’incrémentation.
Pour répéter plusieurs instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
Déclaration du compteur
Il est possible de déclarer la variable utilisée comme compteur directement dans
l’instruction for.
Cette variable n’existe qu’à l’intérieur du bloc d’instructions suivant le for.
http://jb.vioix.free.fr
18-20
La langage Java
Instruction de bouclage
Les boucles inconditionnelles
L’instruction
for
for ( i n i t i a l i s a t i o n ; condition ; i n c r e m e n t a t i o n ){
instructions;
}
L’instruction for permet de répéter une instruction (ou un bloc d’intruction).
Le nombre de répétition est fixé par : la valeur à l’initialisation, le condition et
l’incrémentation.
Pour répéter plusieurs instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
Déclaration du compteur
Il est possible de déclarer la variable utilisée comme compteur directement dans
l’instruction for.
Cette variable n’existe qu’à l’intérieur du bloc d’instructions suivant le for.
http://jb.vioix.free.fr
18-20
La langage Java
Instruction de bouclage
Les boucles inconditionnelles
L’instruction
for
for ( i n i t i a l i s a t i o n ; condition ; i n c r e m e n t a t i o n ){
instructions;
}
L’instruction for permet de répéter une instruction (ou un bloc d’intruction).
Le nombre de répétition est fixé par : la valeur à l’initialisation, le condition et
l’incrémentation.
Pour répéter plusieurs instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
Déclaration du compteur
Il est possible de déclarer la variable utilisée comme compteur directement dans
l’instruction for.
for ( int a =1; a <10; a ++){
/* I n s t r u c t i o n s */
}
Cette variable n’existe qu’à l’intérieur du bloc d’instructions suivant le for.
http://jb.vioix.free.fr
18-20
La langage Java
Instruction de bouclage
Les boucles inconditionnelles
L’instruction
for
for ( i n i t i a l i s a t i o n ; condition ; i n c r e m e n t a t i o n ){
instructions;
}
L’instruction for permet de répéter une instruction (ou un bloc d’intruction).
Le nombre de répétition est fixé par : la valeur à l’initialisation, le condition et
l’incrémentation.
Pour répéter plusieurs instructions, il faut créer un bloc de code en utilisant des
accolades.
Il est préférable de toujours placer les accolades (même pour une instruction).
Déclaration du compteur
Il est possible de déclarer la variable utilisée comme compteur directement dans
l’instruction for.
Cette variable n’existe qu’à l’intérieur du bloc d’instructions suivant le for.
http://jb.vioix.free.fr
18-20
La langage Java
Instruction de bouclage
Les boucles conditionnelles
Les instructions
while, do (...) while
Ces instructions sont utilisées pour répéter une instruction (ou un bloc
d’instructions) tant qu’une condition est vraie.
Précautions à prendre avec les boucles
while
et
do...while
La boucle est parcourue au moins une fois dans une structure do...while.
Dans une boucle do...while le while est terminé par un point-virgule.
Dans tous les cas, faire bien attention aux boucles infinies.
Les éléments impliqués dans la condition doivent être visible à l’extérieur de la
boucle.
http://jb.vioix.free.fr
19-20
La langage Java
Instruction de bouclage
Les boucles conditionnelles
Les instructions
while, do (...) while
Ces instructions sont utilisées pour répéter une instruction (ou un bloc
d’instructions) tant qu’une condition est vraie.
while ( condition ){
/* i n s t r u c t i o n s */
}
Précautions à prendre avec les boucles
while
et
do...while
La boucle est parcourue au moins une fois dans une structure do...while.
Dans une boucle do...while le while est terminé par un point-virgule.
Dans tous les cas, faire bien attention aux boucles infinies.
Les éléments impliqués dans la condition doivent être visible à l’extérieur de la
boucle.
http://jb.vioix.free.fr
19-20
La langage Java
Instruction de bouclage
Les boucles conditionnelles
Les instructions
while, do (...) while
Ces instructions sont utilisées pour répéter une instruction (ou un bloc
d’instructions) tant qu’une condition est vraie.
do {
/* i n s t r u c t i o n s ; */
} while ( condition );
Précautions à prendre avec les boucles
while
et
do...while
La boucle est parcourue au moins une fois dans une structure do...while.
Dans une boucle do...while le while est terminé par un point-virgule.
Dans tous les cas, faire bien attention aux boucles infinies.
Les éléments impliqués dans la condition doivent être visible à l’extérieur de la
boucle.
http://jb.vioix.free.fr
19-20
La langage Java
Instruction de bouclage
Les boucles conditionnelles
Les instructions
while, do (...) while
Ces instructions sont utilisées pour répéter une instruction (ou un bloc
d’instructions) tant qu’une condition est vraie.
Précautions à prendre avec les boucles
while
et
do...while
La boucle est parcourue au moins une fois dans une structure do...while.
Dans une boucle do...while le while est terminé par un point-virgule.
Dans tous les cas, faire bien attention aux boucles infinies.
Les éléments impliqués dans la condition doivent être visible à l’extérieur de la
boucle.
http://jb.vioix.free.fr
19-20
La langage Java
Instruction de bouclage
Les boucles conditionnelles
Les instructions
while, do (...) while
Ces instructions sont utilisées pour répéter une instruction (ou un bloc
d’instructions) tant qu’une condition est vraie.
Précautions à prendre avec les boucles
while
et
do...while
La boucle est parcourue au moins une fois dans une structure do...while.
Dans une boucle do...while le while est terminé par un point-virgule.
Dans tous les cas, faire bien attention aux boucles infinies.
Les éléments impliqués dans la condition doivent être visible à l’extérieur de la
boucle.
http://jb.vioix.free.fr
19-20
Téléchargement