The complexity of modern web sites and web applications requires the most advanced approaches and techniques possible, and this two-day course gives web developers comprehensive insights into client-side design and implementation, and from that, advanced skills in JavaScript and DHTML.
The course establishes fundamental aspects of programming and software-design theory and, from there, introduces powerful principles, including closures, prototypes and polymorphic approaches to cross-browser incompatibilities, along with the use of object composition and 'decoration' in the complex processing of user input.
This course can be combined with any other Dodeca course, to yield an integrated programme of training, and is particularly suited to combination with the AJAX course (see the AJAX course-outline for more information).
This course is appropriate to developers involved in client-side development projects. Existing skills in advanced design and programming is not necessary, but some prior experience of JavaScript and HTML is assumed.
| Duration | 2 Days |
| Availability | On site |
| Materials | Yes |
| Exercises | Yes, hands on |
| Price | £95 per delegate, plus VAT |
| Core Concepts |
JavaScript execution model Built-in types and operators Flow control: conditionals and loops Blocks and functions Values, references and object scope Anonymous, inner and recursive functions Function references Function-call mechanism and closures Library files |
| Classes |
Class constructors, methods and 'this' Object-literal definitions and JSON Abuse and misuse of class-design principles Polymorphic methods Object implementation mechanism Prototype properties and methods |
| Built-in Objects and Methods |
The global object Arrays, Strings, Dates, and the Math object Exception handling and exception classes Regular expressions |
| Client-Side JavaScript |
Document and Window Objects History, Location and Navigator Objects Events and event handling Timers Cookies X(HT)ML Document Object Models Node and element types The Document interface Style-sheet property manipulation Polymorphic cross-browser solutions |