| 課程大綱 Syllabus |
學生學習目標 Learning Objectives |
單元學習活動 Learning Activities |
學習成效評量 Evaluation |
備註 Notes |
序 No. | 單元主題 Unit topic |
內容綱要 Content summary |
| 1 | Object-Oriented Programming and Java |
1. Introduction to Java and OOP
2. Using Objects |
1. Introduction to Java and OOP
2. Using Objects |
|
|
|
| 2 | Basic Programming Constructs |
1. Fundamental Data Types
2. Decisions
3. Iteration
4. Arrays and Array Lists
5. Methods |
1. Fundamental Data Types
2. Decisions
3. Iteration
4. Arrays and Array Lists
5. Methods |
|
|
|
| 3 | Objects and Classes |
1. Class definition and construction
2. Java class library
3. Static variables, constants, and methods
4. Visibility Modifiers
5. Encapsulation |
1. Class definition and construction
2. Java class library
3. Static variables, constants, and methods
4. Visibility Modifiers
5. Encapsulation |
|
|
|
| 4 | Objects and Classes |
1. Class definition and construction
2. Java class library
3. Static variables, constants, and methods
4. Visibility Modifiers
5. Encapsulation |
1. Class definition and construction
2. Java class library
3. Static variables, constants, and methods
4. Visibility Modifiers
5. Encapsulation |
|
|
|
| 5 | Objects and Classes |
1. Class definition and construction
2. Java class library
3. Static variables, constants, and methods
4. Visibility Modifiers
5. Encapsulation |
1. Class definition and construction
2. Java class library
3. Static variables, constants, and methods
4. Visibility Modifiers
5. Encapsulation |
|
|
|
| 6 | Example Java Objects: Strings and Characters |
1. String class in Java
2. Character class in Java
3. File class in Java
4. Text I/O |
1. String class in Java
2. Character class in Java
3. File class in Java
4. Text I/O |
|
|
|
| 7 | Object-Oriented Thinking |
1. Discovery of objects
2. Immutable objects and classes
3. Scopes of variables
4. Class abstraction and encapsulation
5. Designing classes |
1. Discovery of objects
2. Immutable objects and classes
3. Scopes of variables
4. Class abstraction and encapsulation
5. Designing classes |
|
|
|
| 8 | Object-Oriented Thinking |
1. Discovery of objects
2. Immutable objects and classes
3. Scopes of variables
4. Class abstraction and encapsulation
5. Designing classes |
1. Discovery of objects
2. Immutable objects and classes
3. Scopes of variables
4. Class abstraction and encapsulation
5. Designing classes |
|
|
|
| 9 | Object-Oriented Thinking |
1. Discovery of objects
2. Immutable objects and classes
3. Scopes of variables
4. Class abstraction and encapsulation
5. Designing classes |
1. Discovery of objects
2. Immutable objects and classes
3. Scopes of variables
4. Class abstraction and encapsulation
5. Designing classes |
|
|
|
| 10 | Midterm Exam |
Ch1~Ch9 |
Ch1~Ch9 |
|
|
|
| 11 | OO Design and Patterns |
1. Software life cycle
2. Discovering classes and class relationships
3. Case Study: OO design
4. Class design guidlines
5. Framework-based programming using Java API
6. Design patterns |
1. Software life cycle
2. Discovering classes and class relationships
3. Case Study: OO design
4. Class design guidlines
5. Framework-based programming using Java API
6. Design patterns |
|
|
|
| 12 | OO Design and Patterns |
1. Software life cycle
2. Discovering classes and class relationships
3. Case Study: OO design
4. Class design guidlines
5. Framework-based programming using Java API
6. Design patterns |
1. Software life cycle
2. Discovering classes and class relationships
3. Case Study: OO design
4. Class design guidlines
5. Framework-based programming using Java API
6. Design patterns |
|
|
|
| 13 | Inheritance and Polymorphism |
1. Superclasses and subclasses
2. Overriding vs. overloading
3. Polymorphism, dynamic binding, and generic programming
4. Casting objects
5. Protected data and methods
6. Preventing extending and overriding |
1. Superclasses and subclasses
2. Overriding vs. overloading
3. Polymorphism, dynamic binding, and generic programming
4. Casting objects
5. Protected data and methods
6. Preventing extending and overriding |
|
|
|
| 14 | Inheritance and Polymorphism |
1. Superclasses and subclasses
2. Overriding vs. overloading
3. Polymorphism, dynamic binding, and generic programming
4. Casting objects
5. Protected data and methods
6. Preventing extending and overriding |
1. Superclasses and subclasses
2. Overriding vs. overloading
3. Polymorphism, dynamic binding, and generic programming
4. Casting objects
5. Protected data and methods
6. Preventing extending and overriding |
|
|
|
| 15 | Abstract Classes and Interfaces |
1. Abstract classes
2. Examples: Calendar and GregorianCalendar
3. Interfaces
4. Examples: Comparable, Cloneable, and ActionListener Interfaces
5. Interfaces vs. abstract classes
6. Wrapper classes |
1. Abstract classes
2. Examples: Calendar and GregorianCalendar
3. Interfaces
4. Examples: Comparable, Cloneable, and ActionListener Interfaces
5. Interfaces vs. abstract classes
6. Wrapper classes |
|
|
|
| 16 | Abstract Classes and Interfaces |
1. Abstract classes
2. Examples: Calendar and GregorianCalendar
3. Interfaces
4. Examples: Comparable, Cloneable, and ActionListener Interfaces
5. Interfaces vs. abstract classes
6. Wrapper classes |
1. Abstract classes
2. Examples: Calendar and GregorianCalendar
3. Interfaces
4. Examples: Comparable, Cloneable, and ActionListener Interfaces
5. Interfaces vs. abstract classes
6. Wrapper classes |
|
|
|
| 17 | In-Class Exercises |
Programming exercises to be done in class |
Improve programming skills using OO concepts and Java |
|
|
|
| 18 | Final Exam |
Ch9-Ch14 |
Ch9-Ch14 |
|
|
|