Introduction to Computer Science(CSCI-UA-0101.001/002)
Spring 2014 -- Section 1 (Honors) and Section 2
Professor: Andrew Case


General .:. Schedule .:. Assignments .:. Resources .:. Help

Class Notes

ClassDateTopicsReadingsSample Code
0 T 1/28 Introduction to CS
What is Programming
1 R 1/30 Java Programming basics
Eclipse
Running java programs
Chapter 1 Lecture1.java
2 T 2/4 Java Programming basics
Eclipse
Homework Submssions
Coding Style
Chapter 2 Lecture2.java
3 R 2/6 Logical Flow
Functions
Chapter 3 PreAndPostFix.java
Grader.java
4 T 2/11 Loops
Chapter 4 Lecture4.java
5 R 2/13 No class - Snowmageddon
6 T 2/18 Javadocs
Hardcoding
Base Number Systems (Binary/Hexidecimal)
Chapter 5 sample code
7 R 2/20 Nested Loops
Designing Algoirthms
Functions
Chapter 5 sample code
8 T 2/25 Arrays Chapter 6 sample code
9 R 2/27 Arrays
Array-ders of the Lost Ark
Chapter 6 sample code
10 T 3/4 MIDTERM1
Study Guide
Sample Questions
Sample Questions - Solutions
11 R 3/6 Arrays
- Arrays and functions
Chapter 6 sample code
12 T 3/11 Arrays
- Copying
- Sorting (Bubble, Insertion, Selection)
- Searching (Linear vs. Binary)
- java.utils.Arrays
Chapter 6 sample code
13 R 3/13 Multi-dimensional Arrays
Arraymageddon
Chapter 7 Search.java
Lecture13.java
T 3/18 No Class - Spring Break
R 3/20 No Class - Spring Break
14 T 3/25 Post-midterm review
Problem Solving
15 R 3/27 Processing (a graphics library)
Object Oriented Programming (OOP)
  • Data storage
  • Methods
    • Constructor
  • Visibility (public)
Chapter 8 sample code
16 T 4/1
    Object Oriented Programming (OOP)
    • Methods
      • Constructor w/ arguments
      • Getters (accessors)
      • Setters (mutators)
    • Visibility
      • Public, Default, Private
      • Encapsulation
Chapter 8 lecture sample code
Processing 3D Example
17 R 4/3 More General OOP Design
Processing input
Chapter 10
sample code
18 T 4/8 Object Oriented Programming (OOP)
  • Class/Static data vs. Object/Instance data
    • ClassName. vs. this.
  • toString()
  • equals()
  • Inheritance
    • superclass / parent class
    • subclass / child class
    • keywords: super, extends, protected
    • super keyword vs. super()
    • overriding vs. overloading
Chapter 11
sample code
19 R 4/10 Object Oriented Programming (OOP)
  • Polymorphism
    • dynamic binding
    • casting
    • instanceof
Chapter 11
sample code
20 T 4/15 MIDTERM2
Study Guide
Sample Questions
Sample Questions - Solutions
21 R 4/17 Object Oriented Programming (OOP)
  • Polymorphism
    • dynamic binding
    • casting
    • instanceof
  • Abstract classes
    • keywords: abstract, extends
    • when to use?
    • abstract methods
    • concrete methods
    • how many asbstract classes can a class extend?
    • constructor
Chapter 15
sample code
22 T 4/22 OOP
  • Interfaces
    • keywords: interface, implements
    • how many interfaces can a class implement?
    • difference between interfaces and abstract classes
      • no constructor
      • methods are always abstract
Chapter 15 sample code
23 R 4/24 Strings
  • construction/immutablity
  • comparisons
  • functions: length, charAt, etc.
Command Line Arguments
Primitive Wrapper Classes
Chapter 9 sample code
24 T 4/29 ArrayLists
  • Adding items
  • Removing items
Exception Handling and Text File I/O
Chapter 11
Chapter 14
sample code (individual files)
sample code (zip file)
25 R 5/1 More File I/O
Chapter 14 sample code (individual files)
sample code (zip file)
26 T 5/6 Recursion
Chapter 20 sample code
27 R 5/8 More recursion and Review Chapter 20 sample code
28 R 5/15
4:00PM - 5:50PM
FINAL EXAM
Study Guide


© 2010-2014 Andrew I. Case