SE450
:
Lecture 2 (Objects as Functions)
[0/47]
Overview of Today's Class
[1/47]
Homework 1: Solution
[2/47]
Packages: Compilation Units
[3/47]
Packages: Compiling with Packages
[4/47]
Packages: Compiling with Packages
[5/47]
Packages: The Classpath
[6/47]
Packages: Fully Qualified Names
[7/47]
Packages: Package Diagrams
[8/47]
Scope: Hiding
[9/47]
Scope: Java Scope Rules
[10/47]
Scope: Visibility in Java
[11/47]
Scope: Nested Packages
[12/47]
Scope: Nested Classes
[13/47]
Encapsulation: Encapsulation and Abstraction
[14/47]
Encapsulation: Provider/Consumer
[15/47]
Encapsulation: Encapsulation in Java
[16/47]
Encapsulation: Interfaces everywhere
[17/47]
Encapsulation: Invariants, Preconditions, and Postconditions
[18/47]
Encapsulation: Designing interfaces
[19/47]
Encapsulation: Priniciple of Least Knowledge
[20/47]
Types: Class as Type 1
[21/47]
Types: Class as Type 2
[22/47]
Types: Interface as Type 1
[23/47]
Types: Interface as Type 2
[24/47]
Types: Naming the intersection
[25/47]
Types: Using Generic Methods
[26/47]
Types: Declared and Actual Types
[27/47]
Types: Subtyping
[28/47]
Types: Many terms
[29/47]
Types: Subtyping
[30/47]
Types: Multiple inheritance
[31/47]
Types: Abstraction
[32/47]
Types: Principle of Substitutivity
[33/47]
Types: Late Binding
[34/47]
Types: Casting
[35/47]
Types: Coercion
[36/47]
Patterns: Introduction
[37/47]
Patterns: GoF principles
[38/47]
Patterns: Architecture and Software Design
[39/47]
Patterns: The Quality without a Name
[40/47]
Patterns: A Pattern Language
[41/47]
Patterns: A Timeless Way of Building
[42/47]
What if you want class names to be hidden from clients?
[43/47]
Static Factory Example
[44/47]
Function Objects: Strategy
[45/47]
Function Objects: Command
[46/47]
Function Objects: Homework 2
[47/47]