JavaScript: Difference between revisions

From Noisebridge
Jump to navigation Jump to search
(48 intermediate revisions by one other user not shown)
Line 1: Line 1:
=JavaScript Class=
= JavaScript Class =
By Garrett Smith
'''Teacher:''' [[User:Garrett|Garrett Smith]]  
Held weekly, Friday 7pm
[https://twitter.com/xkit @xkit] (follow & mention).
'''LinkedIn:''' [http://www.linkedin.com/profile/view?id=3600638&goback=.nmp_*1_*1_*1_*1_*1_*1_*1_*1_*1_*1&trk=spm_pic Garrett Smith] (endorsements welcome)
'''Web:''' http://dhtmlkitchen.com/
'''email:''' dhtmlkitchen at gmail.com
 
'''When:''' Friday: 7-9pm, Sunday: 10-11:30 AM
 
'''Where:''' Noisebridge, [[Getting_Here| 2169 Mission St, San Francisco]]
 
 


===Course Overview===
===Course Overview===
This course covers Object Oriented JavaScript, testing, and the DOM.
This course covers the fundamentals of the EcmaScript programming language ([http://ecma-international.org/ecma-262/5.1/ ECMAScript spec]), the DOM ([http://www.w3.org/TR/DOM-Level-3-Core/ DOM 3 spec]), and object-oriented design. It is intended for experienced web developers and programmers of other languages, however all are welcome.
 
 
<h4>List of Classes</h4>
Please read the <b style="background-color:#ffffcc;padding: 2px">[[JavaScript/Notes/| list of classes ]] </b> and each lesson's linked notes to decide what you want to study.
 


==EcmaScript Programming Language==
=== Resources ===
* Property accessors, <code>[]</code> and <code>.</code> <nowiki>[[Get]], [[Put]]</nowiki> and the Reference type.
Reference specifications are used extensively. These are linked from the [[Web Development Resources#JavaScript|JavaScript resources]] page. Read them daily.
* Prototypal inheritance
* typeof operator
* Arrays
* Primitive types
* Functions, callbacks, "I'm done", Event Notification System
* Scope chain and identifier resolution, Closures
* Entering an execution context (this)
* <code>call</code>, <code>apply</code>)
* <nowiki>[[Construct]], [[Call]]</nowiki>
* Literal syntax [], {}, /a/i RegularExpression literal


===ECMA 6===
* Promises
* Modules


===DOM===
== Behavior ==  
* Debugging Tools
Ask Questions. Interact.  
* Validator.w3.org


===Patterns and Object Oriented JavaScript===
Read the  <b style="background-color:#ffffcc;padding: 2px">[[JavaScript/Notes/| individual classes]]</b>. Each class lesson is chosen by students at the start of class and will adjusted to meet the students' needs. Get involved! Noisebridge is a [[Do-ocracy]].
* Decorator pattern
* Custom Events
* EventRegistry
* Factory, Abstract Factory
* Strategy/delegation - Example: APE StyleTransition object.


===Tools ===
* Dust Me CSS Selectors [https://addons.mozilla.org/en-US/firefox/addon/dust-me-selectors/]
* Color Zilla [https://addons.mozilla.org/en-US/firefox/addon/colorzilla/]


== Resources ==
== Projects ==
* HTML Validator [http://validator.w3.org/]
We learn by doing. Get involved!
* CSS Validator [http://jigsaw.w3.org/css-validator/]
* Porting the FAQ to Github [https://github.com/comp-lang-javascript/ Get involved]!

Revision as of 12:12, 22 February 2014

JavaScript Class

Teacher: Garrett Smith   @xkit (follow & mention). LinkedIn: Garrett Smith (endorsements welcome) Web: http://dhtmlkitchen.com/ email: dhtmlkitchen at gmail.com

When: Friday: 7-9pm, Sunday: 10-11:30 AM

Where: Noisebridge, 2169 Mission St, San Francisco


Course Overview

This course covers the fundamentals of the EcmaScript programming language (ECMAScript spec), the DOM (DOM 3 spec), and object-oriented design. It is intended for experienced web developers and programmers of other languages, however all are welcome.


List of Classes

Please read the list of classes and each lesson's linked notes to decide what you want to study.


Resources

Reference specifications are used extensively. These are linked from the JavaScript resources page. Read them daily.


Behavior

Ask Questions. Interact.

Read the individual classes. Each class lesson is chosen by students at the start of class and will adjusted to meet the students' needs. Get involved! Noisebridge is a Do-ocracy.


Projects

We learn by doing. Get involved!