This course covers the fundamentals of the EcmaScript programming language, the DOM, and object-oriented design. It is intended for experienced web developers and programmers of other languages, however all are welcome.
Resources
Reference specifications are used extensively. These are linked from the JavaScript resources page. Read them daily.
Ask Questions. Interact.
Class Notes
Browsers provide debuggers that can be launched from a breakpoint or the debugger keyword.
Event Delegation and the Cascade.
Functions are callable objects with an internal [[Scope]] property. Learn how to call functions and pass functions to other functions, where they can be later called.
The prototype chain is used for reading property resolution.
User-defined functions can be used to construct new objects. Objects have, on their prototype chain, the constructor's prototype.
This class covers closures.
Singleton with information hiding in function scope. Interface-Based Design
Two interfaces with a similar signature. The Devil's in the details -- encapsulate them! Event Notification System
An abstract system for event notification.
An system for DOM event notification, designed to handle delegation and specific event models. Factory
The Factory pattern, the Decorator pattern, newApply, and the holy grail: Abstract Factory. Parameter Object
Passing around lists of parameters? Typechecking arguments? Stop doing that. Here's how to make your code clearer and less error-prone.