WeekUnitsTopicsDeliverables
1
I1 Course goals, Teaching modality, Resources, Assessment, Academic honesty,
S1 IDEs, Revision Control, Using Gitlab and git,
J1 Imperative programming languages, Java Standard Library, Types, Hello World,
J2 Types, Objects, Classes, Inheritence, Interfaces,
J3 Naming, Literals, Primitives,
J4 Arrays, Operators, Expressions, Statements, Blocks, Random,
2
J5 Control flow, if-then-else, switch,
J6 Control flow, while and do-while, for, break, continue,
J7 Methods, Return values, Parameters, Stack, Heap and References, Exceptions,
O1 Class declaration, Object creation,
O2 Access control, Initializer blocks, enum types, Garbage collection,
J8 Nested classes,
3 D1A
O3 Interfaces,
J9 Lambda expressions,
O4 Inheritance, Overriding and hiding, Polymorphism, The super keyword,
O5 java.lang.Object, Equality, Final classes, methods, fields, Abstract classes and methods,
X1 Overview of JavaFX, JavaFX scene graph,
X2 JavaFX and event handling,
4 D2A
X3 Architecting GUIs,
5 DXC, D2B
S2 Git,
S3 Importance of People in SE, Understanding Team Effectiveness, Conflict and conflict resolution,
J10 Number, Integer, Short, Float, Autoboxing, Math,
J11 Character and String,
J12 Generics,
J13 Type Inference,
J14 Collections, forEach, Ordering collections,
6
C1 Recursive algorithms,
C2 Time and space complexity, Big O notation, Examples,
C3 Graphs and Trees, Traversal,
7 D2C
C3 Graphs and Trees, Traversal,
S4 Test-Driven Development (TDD), JUnit,
A1 ADTs, The list ADT, A List interface,
8 D2D
S5 Software Complexity, Code Review, Software Design, Comments and Documentation,
J15 Java Exceptions, Catch or specify,
A2 The list ADT, An array-based List implementation, A linked-list-based List implementation,
9 D2E
C4 Hash functions, Choosing a good hash function,
C5 Applications of hashing, Java hashCode(),
A3 The set ADT,
A4 Hash Table, A hash-table-based Set implementation,
10
A5 The tree ADT, Implementation of a set 2,
A6 The map ADT, A map interface and its implementation, ADT recap,
11 D2F
C6 Java file I/O, Streams, Standard I/O, Random access files, Buffering,
C7 Concurrency,
J16 Thread and Runnable, start(), join() and sleep(), Races and synchronized,
12 D2G
R1 Review of material for Final and work through exam,
R2 Review of material for Final and work through exam,
bars search caret-down plus minus arrow-right times arrow-up