- encapsulation
- state
- behavior
- data properties
- accessor properties
- method
- enumerable
- private data
- factory functions
- What is encapsulation? Why do we use it? How do objects enable it?
- How do objects encapsulate state? How do they encapsulate behavior?
- How do we create private data within JavaScript objects? What is the role of accessor properties?
- What are factory functions and why are they useful?
- Reading: Eloquent JavaScript - Chapter 6: The Secret Life of Objects (stop at Prototypes section)
- Video: Factory Functions
- Book: The Principles of Object-Oriented JavaScript - Chapter 3: Understanding Objects
- Problem Set 4.0 on Canvas