INF 111 PROGRAMMATION ORIENTÉ-OBJET
-
Upload
portia-tyson -
Category
Documents
-
view
77 -
download
6
description
Transcript of INF 111 PROGRAMMATION ORIENTÉ-OBJET
![Page 1: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/1.jpg)
1
INF 111PROGRAMMATION ORIENTÉ-OBJET
Présentation du cours, été 2014(groupe 80, cohorte fin-mai)
Francis CardinalAvec des éléléments de Pierre Bélisle (intro java)
![Page 2: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/2.jpg)
Présentations
• Mon nom: Francis Cardinal• Email: [email protected]
• Questions pour inf111? Commencez votre sujet de courriel par « INF111: »
• J’ai enseigné plusieurs cours à l’ETS.• Vous me croiserez peut-être dans le futur dans des
cours de LOG ou de GTI.
![Page 3: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/3.jpg)
Et vous?
• Votre programme d’études?• Votre DEC collégial?• Combien d’autres cours prenez-vous?
• Qu’est-ce que INF111 pour vous?• Quels sont vos attentes?
![Page 4: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/4.jpg)
Logistique du cours• Voir le syllabus• Un cours par semaine (3h) le lundi.
Attention début du cours à 18h00 au B-3406. • Une séance de laboratoire par semaine (3h00) le mercredi.
Débute à 18h00. Au local B-2402.• Pondération des travaux
– Quiz 10%– Travaux de Laboratoire 40%– Examens 50%
![Page 5: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/5.jpg)
5
Examens et Quiz• Des quiz peuvent être donnés en classe à une intervalle
variable. Ce sont généralement des questions qui visent la compréhension de la matière. Ce sont pour la plupart des quiz d’une durée de 15 à 30 minutes sans avoir droit aux notes de cours.
• Il est possible qu’il y ait au cours de la session des exercices à faire à la maison et/ou exercices à faire en classe.
• Le contenu des examens est cummulatif au courant de la session (examen final sur toute la matière du cours, examen intra, sur tout ce qu’on va voir jusqu’à l’intra)
• L’examen intra et l’examen final comptent pour 25% de la note chacun.
![Page 6: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/6.jpg)
6
Laboratoires• Les labs ont une durée de 3h00 par semaine.• Pondération totale des laboratoires = 40%
• Les détails sur le nombre de semaines pour chacun des laboratoires, les dates de remises et la pondération seront indiqués sur le site web du cours et discutés en laboratoire.
• Adresse du site de cours: cours.etsmtl.ca/inf111
• Les laboratoires se font individuellement ou en équipe. Les détails seront donnés en cours et en laboratoire.
![Page 7: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/7.jpg)
Travaux de laboratoire• T1: un travail, où l’étudiant(e) aura à se familiariser avec les outils de
développement Java. Un travail spécifique concernant les notions de base sera demandé. Plus de détails seront dévoilés lors du premier lab (10%).
• T2: un travail qui couvrira des notions intermédiaires sera demandé. Plus de détails seront dévoilés lors du premier lab du T2 (15%).
• T3: un travail qui couvrira l’ensemble des notions vues en classe. Plus de détails seront dévoilés lors du premier lab du T3 (15%).
![Page 8: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/8.jpg)
Ce que vous pouvez faire cette semaine …
• Vérifier si vous avez accès avec votre carte au B-2402.
• Vérifiez que vous avec un compte et logguez vous sur les ordis du département (B-2402)!
• Essayer d’installer un outil de programmation Java (eclipse de préférence) pour avoir un environnement semblable à celui de l’école pour travailler de la maison / en cours sur votre portable.
![Page 9: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/9.jpg)
Introduction à Java
![Page 10: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/10.jpg)
Caractéristiques principales
• Caractéristique numéro 1– Portablilité (fonctionne sur n’importe quel système)
• Linux, Microsoft, …
• Caractéristique numéro 2– Orienté-objet (nous y reviendrons)– Programmation WEB
![Page 11: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/11.jpg)
Environnement Java
• Java ne s’exécute pas directement sur l’ordinateur. (Contrairement aux autres langages de programmation). Il fonctionne avec un ordinateur hypothétique (Virtual Machine).– Java 2 Platform (J2SE 6.0)
– Java Virtual Machine (JVM) – Java Runtime Environment (JRE)
– Java Developpement Kit (JDK 6.0)– Java Application Programming Interface (API)
» Ensemble de composants utilitaires
![Page 12: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/12.jpg)
Compilation et interprétation
• Compilation– Le code contenu dans un fichier texte .java est
compilé et traduit en byte code dans un fichier .class
• Interprétation– Le JVM interprète les .class en exécutant une
instruction à la fois.
![Page 13: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/13.jpg)
Compilation et interprétation
• Interprétation (suite)– On peut exécuter un programme java de deux
façons différentes:• Comme un programme sur un ordinateur (il sera
exécuté par le JVM). Exemple de .jar.• Dans un fureteur web. Cette version s’appelle un
Applet java. (Nous ne couvrirons pas cette façon de faire dans le cours, mais il ne serait pas trop difficile d’adapter vos programmes pour les faire rouler ainsi…). Exemple d’applet.
![Page 14: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/14.jpg)
Compilation et exécution
• Editeur de texte
• Compilation(javac)
• Exécution(java)
http://pages.infinit.net/tsjyv/ch1_intro.html
.java
.class
JVM
Programme exécuté
![Page 15: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/15.jpg)
L’ordinateur
• Un ordinateur prend ses instructions dans ce qu’on appelle un langage machine.
• Comme il est difficile d’écrire nos instructions et directives à l’ordinateur directement en langage machine, des langages existent avec un langage de plus haut niveau.
• Lors de la compilation, ce langage se transforme en langage machine et est exécuté par l’ordinateur (java interprêté et transformé en langage machine par le JVM).
![Page 16: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/16.jpg)
Vue interne d’un ordinateur
![Page 17: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/17.jpg)
L’ordinateur
• Le CPU lit les instructions machine directement dans la mémoire.
• Ces instructions dirigent les interactions entre le CPU et la mémoire, les périphériques (clavier, souris, écran, son, etc.), et les support de données (disques, clefs usb, etc.)
![Page 18: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/18.jpg)
Le langage JAVA
• Était développé au départ pour faire de la programmation multi-plateformes sur des machines autres que des ordinateurs.
• Est devenu populaire grâce aux applets sur le Web.
• Il a été conçu pour être sécuritaire et portable.
![Page 19: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/19.jpg)
Le langage JAVA
![Page 20: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/20.jpg)
Le langage JAVA
![Page 21: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/21.jpg)
Le langage JAVA
• Chaque application JAVA possède une classe où il y a un « main ». Lors de l’exécution du programme, tout ce qui se trouve dans le main est exécuté en premier.
![Page 22: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/22.jpg)
Le langage JAVA – les erreurs
• Il y a deux types d’erreurs que vous allez rencontrer en java:– Les erreurs de syntaxe (vous vous êtes trompés dans un
mot réservé, dans un nom de variable, vous avez oublié de la ponctuation etc…).
• Ces erreurs sont détectées par le compilateur.
– Les erreurs de logique (run-time errors) sont des erreurs de fonctionnement qui démontrent un bug de vos algorithmes.
• Ces erreurs sont trouvées en testant vous-même vos programmes lors de l’exécution.
![Page 23: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/23.jpg)
Le langage JAVA – les étapes
• Pour passer du code source à l’exécution
![Page 24: INF 111 PROGRAMMATION ORIENTÉ-OBJET](https://reader035.fdocument.pub/reader035/viewer/2022081502/56813895550346895da043de/html5/thumbnails/24.jpg)
Le langage JAVA – les étapes