|
|
Damjan Vujnovic's Advanced JavaScript Workshop (ADV-JAVASCRIPT-01-03)
|
CODE: ADV-JAVASCRIPT-01-03 DURATION: 3 DAY/S
As Douglas Crockford once said, JavaScript is the world's most misunderstood programming language.
It is also one of the world's most popular programming languages and one of the cornerstones of a modern web application development.
With web clients becoming thicker and more complex, it is no longer easy to get away with sloppy, ad-hoc JavaScript programming style.
In this advanced JavaScript hands-on course you will learn how to write good code (by employing its good features and avoiding quirks and common pitfalls).
LEARN HOW TO:
- Take advantage of JavaScript's functional and dynamic nature
- Understand lexical scope and closure
- Unit test JavaScript code
- Write object-oriented code
- Avoid (few) JavaScript quirks and common pitfalls
- Apply asynchronous and event-driven patterns
- Use behaviors and stay unobtrusive
PROGRAMME
Day 1:
Introduction to unit testing (Jasmine)
JSLint (will hurt your feelings)
Objects
- object literals
- default & guard operators
- updating properties & property attributes (eval/firebug gotcha)
- prototype
- property enumeration
- delete operator
Functions
- function object
- declaration hoisting
- literal
- arguments
- invocation (4 ways)
- return
- recursion
Arrays
- array literals
- length & delete
- for vs. for in
- arrays vs. associative arrays
- augmenting array prototype
- multidimensional arrays
Day 2:
Functions
- lexical scope
- closure
- revealing module pattern
- bind
- Global namespace pollution detection
Unit testing asynchronous code
OOP
- inheritance (pseudoclassical, prototypal, functional)
- mixins
- overriding & super()
Day 3:
Asynchronous programming patterns
- callback (asynchronous method)
- promise/future (deferrable value)
- observable
Functions
- a few functional programming patterns (chaining, curry, memorization)
- throttling
- funneling
Advanced unit testing
- test doubles (stubs, mocks, fake objects)
- dom
How does this all fit together (a component based micro-architecture featuring IOC, services & behaviors) - a small primer
Tools
|
COURSE DATES & REGISTRATION
Book Online or Call Sales on +44 (0)207 1839040
ABOUT THE AUTHOR
|
Damjan has been involved in software development for the last eight years and worked in the areas of digital signal processing, e-commerce, document and content management systems and betting. Damjan is certified to deliver the Skills Matter course
More about Damjan Vujnovic
|
IS THIS COURSE FOR YOU?
This Advanced JavaScript course is designed for experienced Web Developers designing, creating and maintaining rich web applications.
It will help you tackle the complexity and challenges of the modern Web Development.
COURSE PREREQUISITES
To get the most out of the course, you should have hands-on experience with JavaScript and be familiar with HTML, DOM, CSS and Ajax.
Prior exposure to a JavaScript/Ajax framework (like JQuery which is used in a few exercises) will be helpful but is not essential.
COURSE LABS & EXERCISES
This Advanced JavaScript course is a combination of lectures, discussions and practical exercises.
COURSE DATES & REGISTRATION
Book Online or Call Sales on +44 (0)207 1839040
FOLLOW ON COURSES
Richard Clark's WebSockets Application Development
|
|
|
|
© Copyright 2003-2013, Skills Matter Ltd
|
|
|