nyu-java-programming / course-materials

Introduction to Computer Science

New York University

Department of Computer Science

Schedule

Date Class Topics Notes Helpful resources Quiz due Exercise due
  1 Syllabus Welcome      
  2 Basic computer concepts Basic computer concepts Computer Science: Not about Computers, Not Science    
  3 Unix Unix intro - Chapter 1
- Unix Tutorial for Beginners, 1 & 2
Basic computer concepts Assignment 0:
- Consent form
- Install OpenJDK 8
- Install Visual Studio Code and Extension Pack for Java
- Join Discord
  4 The Java paradigm - Java paradigm
- Starter code
- Chapter 2
- Java acronyms
Unix Assignment 1:
- GitHub practice run
  5 Decision-making Branching - Oracle tutorials: Primitive data types
- Decision-making example code
Java paradigm Assignment 2:
- Basic programming
  6 Loops Loops - Chapter 5
- Loops example code
Branching  
  7 Methods Methods - Chapter 6
- Methods example code
Loops Assignment 3:
- Blackjack
  8 Arrays Arrays - Chapter 7
- Arrays example code
Methods  
  9 Review     Arrays  
  10 Review (continued)       Assignment 4:
- Text analysis
  11 Exam #1        
  12 - Multidimensional arrays
- Documenting source code
- Multidimensional arrays
- Javadoc
- Chapter 8
- Multidimensional arrays example code
   
  13 Exam #1 post-mortem     Multidimensional arrays  
  14 Object-oriented programming (OOP) Object orientation - Chapter 9
- Object orientation example code
   
  15 OOP (continued)       Assignment 5:
- Open data
  16 Strings Strings and related classes - Chapter 4
- Strings basic example code
- Text alignment example code
Object orientation  
  17 Processing Processing Processing basic example code String and related classes Assignment 6:
- Virtual moped
  18 Inheritance Inheritance - Chapter 10
- Inheritance example code
Processing framework  
  19 Processing (continued)   - Chapter 11
- Processing advanced example code
   
  20 Review Exam 2 review   Inheritance and polymorphism Assignment 7:
- Game development
  21 Review (continued)        
  22 Exam #2        
  23 Interfaces Interfaces - Chapter 13
- Interfaces example code
   
  24 Abstract classes Abstract classes - Chapter 13
- Abstract classes example code
   
  25 Exam #2 post-mortem        
  26 Exception handling Exception handling - Chapter 12
- Exceptions example code
Interfaces and abstract classes Assignment 8:
- Interfaces and abstract classes
  27 Recursion Recursion - Chapter 18
- Recursion example code
Exceptions  
  28 Review Exam 3 review     Assignment 9:
- Recursion

No late assignments accepted past this date
  29 Exam #3