knowledge-kitchen / courses / course-notes

Computer Science Introduction

New York University

Department of Computer Science

Schedule

Date Class Topics Notes Helpful resources Quiz due Exercise due
1/24 1 Syllabus Welcome Syllabus    
1/26 2 Basic computer concepts - Basic computer concepts
- Computing terminology
-Number systems
Computer Science: Not about Computers, Not Science Intake questionnaire Assignment 0:
- Consent form
- Create GitHub account
- Join Discord
1/31 3 Unix - Discord for Education
- Unix intro
- Liang, Chapter 1
- Unix Tutorial for Beginners, 1 & 2
Basic computer concepts  
2/2 4 The Java paradigm - Java paradigm
- Starter code
- Data types
- Chapter 2
- Java acronyms
Unix Assignment 1:
- GitHub practice run
2/7 5 Decision-making Branching - Oracle tutorials: Primitive data types
- Decision-making example code
Java paradigm Assignment 2:
- Basic programming
2/9 6 Loops Loops - Chapter 5
- Loops example code
Branching  
2/14 7 Methods Methods - Chapter 6
- Methods example code
Loops Assignment 3:
- Blackjack
2/16 8 Arrays Arrays - Chapter 7
- Arrays example code
Methods  
2/21 9 Review     Arrays  
2/23 10 Exam #1        
2/28 11 - Multidimensional arrays
- Documenting source code
- Multidimensional arrays
- Javadoc
- Chapter 8
- Multidimensional arrays example code
   
3/2 12 Exam #1 post-mortem     Multidimensional arrays  
3/7 n/a - no class -        
3/9 13 Object-oriented programming (OOP) Object orientation - Chapter 9
- Object orientation example code
  Assignment 4:
- Text analysis
3/14 n/a - no class -        
3/16 n/a - no class -        
3/21 14 OOP (continued)       Assignment 5:
- Open data
3/23 15 Strings Strings and related classes - Chapter 4
- Strings basic example code
- Text alignment example code
Object orientation  
3/28 16 Processing Processing Processing basic example code String and related classes Assignment 6:
- Virtual moped
3/30 17 Inheritance Inheritance - Chapter 10
- Inheritance example code
Processing framework  
4/4 n/a - no class -        
4/6 18 Processing (continued)   - Chapter 11
- Processing advanced example code
   
4/11 19 Review Exam 2 review   Inheritance and polymorphism Assignment 7:
- Game development
4/13 20 Exam #2        
4/18 21 Interfaces Interfaces - Chapter 13
- Interfaces example code
   
4/20 22 Abstract classes Abstract classes - Chapter 13
- Abstract classes example code
   
4/25 23 Exam #2 post-mortem        
4/27 24 Exception handling Exception handling - Chapter 12
- Exceptions example code
Interfaces and abstract classes Assignment 8:
- Interfaces and abstract classes
5/2 25 Recursion Recursion - Chapter 18
- Recursion example code
Exceptions  
5/4 26 Review Exam 3 review     Assignment 9:
- Recursion
(No late work accepted past this date)
5/15 @2-3:50PM 27 Exam #3