Resources
- https://piazza.com/uottawa.ca/winter2020/iti1521/home
 (groupe de discussion)
- https://uottawa.brightspace.com
 (soumission des devoirs)
- Vidéos du cours de 2017 sur YouTube
- Carte conceptuelle
Notes de cours
- 6-10 janvier, 2020
	      - 
		  Exigences du cours, 
 Architecture des ordinateurs,
 Aide-mémoire Java,
 Pourquoi Java?
 
- 
		  Types de données: primitifs et références 
 Koffman & Wolfgang 545-551
- 
		  Laboratoire 0 
		  Vous devez faire ce laboratoire de façon autonome, à
		  la maison ou au laboratoire informatique.
		  Ressources
		  - Clinique Java (Youtube Live; 60 minutes)
- Installer le compilateur Java sur Windows 10 (vidéo)
- Configurer son environment (vidéo en anglais)
- Éditer et compiler un programme Java à l'aide de DrJava (vidéo)
- Apprenez à programmer en Java:
- Java le soir! (de José Paumard)
 
- Sujet avancé sur l'architecture (optionnel) Pour ceux qui souhaiteraient explorer davantage l'architecture des ordinateurs, voici un programme Java simulant l'exécution d'un programme assembleur TC-1101: 01/Sim.zip.
 
- 
		  Exigences du cours, 
- 13-17 janvier, 2020
	      - 
		  Types de données:
		    opérateurs et appels de méthodes 
 Koffman & Wolfgang 545-551
- 
		  Assises de la programmation orientée objet: variables et méthodes d'instance 
		  Counter.java
 
- Laboratoire 1 Koffman & Wolfgang 541-545 Pour chaque laboratoire, nous vous donnerons les tests qui serviront à la correction de votre travail. Voici une démo pour vous aider à comprendre les concepts. Comme exercise, corrigez l'implémentation de Demo.java afin qu'aucun test n'échoue:
 
- 
		  Types de données:
		    opérateurs et appels de méthodes 
- 20-24 janvier, 2020
	      - 
		  Assises de la programmation orientée objet: modificateurs de visibilité, variables et méthodes de classe
		  Point.java
 PairVar.java et PairArray.java
 Ticket.java
 
- 
		  Interface: type abstrait de données (TAD), implémentation 
		  Comparable.java
 SortAlgorithms.java
 Time.java
 TestTime.java
 Pair.java
 PairVar.java
 PairArray.java
 TestPair.java AlertListener.java
 PhoneApp.java
 WebApp.java
 AlertServer.java
 Run.java Koffman & Wolfgang 2-7
- 
		  Laboratoire 2
		  Koffman & Wolfgang 541-545
		  Run.java
 Time.java
 Event.java
 Agenda.java
 
 
- 
		  Assises de la programmation orientée objet: modificateurs de visibilité, variables et méthodes de classe
		  Point.java
- 27-31 janvier, 2020
	      - 
		  Héritage: réutilisabilité 
		  Koffman & Wolfgang 8-21, 27-33
		  Circle.java
 Rectangle.java
 Shape.java
 Test.java
- 
		  Héritage: polymorphisme 
		  Account.java
 BankAccount.java
 CheckingAccount.java
 SavingAccount.java
 TestBankAccount.java Account.java
 Test.java
- Laboratoire 3 Koffman & Wolfgan Appendice C "Testing Using the JUnit Framework", pages 764-767.
 
- 
		  Héritage: réutilisabilité 
		  Koffman & Wolfgang 8-21, 27-33
		  Circle.java
- 2-7 février, 2020
	      - 
		  Polymorphisme paramétré 
		  Pair.java
 PairVar.java
 PairArray.java
 TestPair.java
 TestDisplay.java
 SortAlgorithms.java
 Time.java
 TestSort.java
 
- 
		  Pile: concept
		  Stack.java
 ArrayStack.java
 Koffman & Wolfgang 149-152, 165-167
- Laboratoire 4
 
- 
		  Polymorphisme paramétré 
		  Pair.java
- 10-14 février, 2020
	      - 
                  Pile: applications
 Koffman & Wolfgang 159-176
- 
		  Pile: éléments chaînés
		  Stack.java
 LinkedStack.java
 Koffman & Wolfgang 149-188
- Laboratoire 5
 
- 
                  Pile: applications
- 17-21 février, 2020
	      - Période d'étude
 
- 24-28 février, 2020
	      - 
		  Traitement des erreurs
 Koffman & Wolfgang 29-36, 559, 608-619
- Revue pour l'examen de mi-session.
- Laboratoire 6
- Rappel: l'examen de mi-session aura lieu le dimanche 1 mars 2020: plus d'information ici.
 
- 
		  Traitement des erreurs
- 2-6 mars, 2020
              
	      - 
	          File: concept
	          Queue.java
 LinkedQueue.java Koffman & Wolfgang 177–189
- 
	          Queue: applications
 Search.java, LinkedQueue.java, Queue.java Une application JavaScript fort intéressante: Une autre application JavaScript très intéressante:- https://clementmihailescu.github.io/Pathfinding-Visualizer/
- https://www.youtube.com/watch?v=n4t_-NjY_Sg
 Une vidéo pertinente sur YouTube: Maze Solving - Computerphile 
- Laboratoire 7
 
- 
	          File: concept
	          Queue.java
- 9-13 mars, 2020
	      - File: tableau circulaire
 Koffman & Wolfgang 209-215
- 
	          Listes: concept
 Koffman & Wolfgang 63-84
- Laboratoire 8
 
- File: tableau circulaire
- 16-20 mars, 2020
              - 
                  Listes: implémentations
                  
                  La vidéo du cours de 2020 sur YouTube Code source: src Koffman & Wolfgang 84-89, 103
- Laboratoire 9 (Vidéo sur YouTube)
 
- 
                  Listes: implémentations
                  
                  
- 23-27 mars, 2020
	      - 
	          Listes: traitement itératif
                  
                  La vidéo du cours de 2020 sur YouTube Code source: src Koffman & Wolfgang 84-89, 103
- 
	          Listes: traitement récursif
                  La vidéo du cours de 2020 sur YouTube Code source: src 
- Laboratoire 10 (Vidéo sur YouTube)
 
- 
	          Listes: traitement itératif
                  
                  
- 30 mars - 3 avril, 2020
	      - 
	          Arbres binaires de recherche: concept
 Koffman & Wolfgang 257-268 et 282-296
- 
	          Arbres binaires de recherche: méthodes
                  La vidéo du cours de 2020 sur YouTube BinarySearchTree.java, Test.java, TestBST.java Koffman & Wolfgang 263, 265-268, 288-293
- Laboratoire 11 (Vidéo sur YouTube)
 
- 
	          Arbres binaires de recherche: concept
- Optionnel
	      - 
                  Interface utlisateur graphique 
		  Square.java
 EventListenersApp.java
 Puzzler.jar (téléchargez et double-cliquez)
 puzzler-src.zip (code source)
- Modèle-Vue-Conrôleur counter.zip, square.zip
 
- 
                  Interface utlisateur graphique 
		  Square.java
 Pensez-y, n'imprimez ces notes de cours que si c'est nécessaire!
              Pensez-y, n'imprimez ces notes de cours que si c'est nécessaire!
              
              
                
                  
                    
                    
                    
                    
                    
                    
                    
                    
                  
                  
                  
                  
                  
                
             
	    