Skip to content

Latest commit

 

History

History
222 lines (141 loc) · 3.37 KB

syllabus.md

File metadata and controls

222 lines (141 loc) · 3.37 KB

Syllabus - Spring 2016

CS0401: Intermediate Java

Lecture 1:

Reading: Gaddis, Ch 1

  • Introduction
    • Course Goals
    • Getting Started with Java

Lecture 2:

Reading: Gaddis, Ch 2

  • Intro to Java
    • Compilation and Execution of Programs
    • Keywords, Identifiers, and Literals
    • Variables and data type

Lecture 3:

Reading: Gaddis, Ch 2

  • Variables, data, and expressions
    • Primitive vs Reference Types
    • Operators
    • Precedence
    • Associativity

Lecture 4:

Reading: Gaddis, Ch 2, Sec 3.1, Sec 3.5

  • Input and Control types
    • Using the Scanner class
    • Control statements
    • Boolean expressions
    • Truth tables

Lecture 5:

Reading: Gaddis, Ch 3

  • Conditionals and Errors
    • if and while statements
      • Syntax
      • Usage
      • Variations
    • Syntax, Run-Time, Logic errors

Lecture 6:

Reading: Gaddis, Ch 4

  • The for statement and output formatting

Lecture 7:

Reading: Gaddis, Sec 3.9, 3.10, Ch 5

  • Switch Statements and Java Methods
    • Method calls and functional abstraction
    • Static methods
    • Passing arguments by value
    • Local variables and scope

Lecture 8:

Reading: Gaddis, Ch 5, Sec 6.1

  • References and Reference types
    • Will finish method discussion, as well

Lecture 9:

Reading: Gaddis, Ch 6

  • Finish reference discussion

  • Java classes and objects

    • Data abstraction and encapsulation
    • Data hiding
    • Private variables

Lecture 10

Reading: Gaddis, Ch 6

  • Java class, continued
    • Constructors
    • Accessors
    • Mutators

Lecture 11

Reading: Gaddis, Ch 4

  • File I/O
    • Accessing simple text files

Lecture 12

Reading: Gaddis, Ch 7

  • Single-Dimensional Arrays
    • Array syntax
    • Direct and sequential access

Lecture 13

Reading: Gaddis, Ch 7

  • More on Single-Dimensional Array
    • Arrays as objects
    • Parameters
    • Modifying an array

Lecture 15

  • Multi-Dimensional arrays and ArrayLists

Lecture 16

Reading: Gaddis, Sec 7.11

  • Searching and Sorting
    • Definition and concepts
    • Selection Sort
    • Binary search

Lecture 17

Reading: Gaddis, Ch 8

  • The Object-Oriented Paradigm

Lecture 18

Reading: Gaddis, Ch 12

  • Graphics in Java
    • Event-driven programming
    • Buttons and display

Lecture 19

Reading: Gaddis, Ch 12

  • Graphics in Java, continued
    • Layout management and managers
    • JPanels

Lecture 20

  • Interfaces and Graphics Extensions

Lecture 21

Reading: Gaddis, Ch 9

  • Wrapper classes
    • Parsing simple input
    • The Character class

Lecture 22

Reading: Gaddis, Ch 10

  • Intro to Java Inheritance
    • Superclasses and subclasses
    • Protected variables
    • Super methods
    • Inheritance vs. composition
    • Overriding vs overloading

Lecture 23

Reading: Gaddis, Ch 10, Sec 6.6

  • More Java Inheritance
    • More on ad hoc polymorphism (method overloading)
    • Packages
    • Generics

Lecture 24

Reading: Gaddis, Sec 14.5, 14.6

  • Developing Object-Oriented Program
    • Subclassing (true) polymorphism
    • Abstract classes and methods

Lecture 25

Reading: Gaddis, Sec 10.9

  • Using interfaces, polymorphic access, and Generics

Lecture 26

Reading: Gaddis, Ch 11

  • Exceptions
    • Definition
    • Throwing and Catching

Lecture 27

Reading: Gaddis, Ch 16

  • Recursion
    • Recursive equations
    • Recursive vs base case
    • Implementation
    • Benefits / Drawbacks

Lecture 28

  • SECOND MIDTERM