T1403

Ladda ner som PDF

Web applications in JavaScript

"Single-page application" (SPA). Detta om något visar att JavaScript har vuxit upp. Språket används inte längre för att låta animerade fjärilar jaga muspekaren över sidan - istället används det för att bygga stora komplexa applikationer som t.ex. Gmail. Och om vi som utvecklare vill vara med på tåget, så måste vi lära oss nya tekniker och arbetssätt.

Men tillväxten har ett pris. Det finns massor av information där ute, om JavaScript, om bästa metoder, och om att bygga "single-page applications". Hälften av informationen är gammal eller missar målet på något sätt, och den andra hälften vill sälja ett ramverk.

Den här kursen presenterar en tydlig, enkel väg för att börja bygga "single-page applications". Den ger dig kunskap och verktyg för att komma igång. Under övningarna kommer du till och med att bygga en fungerande "single-page application".

Audience

Experienced web develpers in JavaScript or other languages.

Prior knowledge

Equivalent to the course T1227 Modern web developmen in JavaScript.

Courseware

Course material in English is included.

Day 1

Single-page apps

  • What it is we're building
  • Problems facing us on the way
  • The medium: JavaScript, the browser, and the web
  • Writing mature applications in a young niche

Style

  • Literal array/object creation
  • Triple-equals
  • Truthiness and short-circuiting
  • Property access
  • Working around JavaScript pitfalls

What we need to build big

  • use strict
  • Lexical scoping
  • Some understanding of prototype OO
  • The handling of this
  • Object encapsulation
  • Modules and require.js
  • jQuery
  • async
  • Some API savvy

Views and stuff

  • Why "Controller" is a bad word
  • The challenges of managing state and changes

Templating

  • The problem we're solving
  • Markup-driven vs Model-based

Day 2

Data binding

  • Observers and observables
  • Knockout
  • Building components and applications

Asset packaging

  • The global namespace is out to get you!
  • Implicit dependencies work against scalability
  • Putting modularity first

Tools

  • npm
  • jsFiddle
  • jsHint

Debugging and profiling

  • Firebug, Webkit Inspector
  • Breakpoints and the debugger statement
  • Chrome Development Tools

Testing

  • Testing and JavaScript
  • What to test
  • Dependency injection
  • Testing asynchronous code
  • Going headless

Putting it all together

  • From A to Z: the components interplay
  • Playing the long game: future compatibility
  • Evolving with a web app

Day 1

Single-page apps

  • What it is we're building
  • Problems facing us on the way
  • The medium: JavaScript, the browser, and the web
  • Writing mature applications in a young niche

Style

  • Literal array/object creation
  • Triple-equals
  • Truthiness and short-circuiting
  • Property access
  • Working around JavaScript pitfalls

What we need to build big

  • use strict
  • Lexical scoping
  • Some understanding of prototype OO
  • The handling of this
  • Object encapsulation
  • Modules and require.js
  • jQuery
  • async
  • Some API savvy

Views and stuff

  • Why "Controller" is a bad word
  • The challenges of managing state and changes

Templating

  • The problem we're solving
  • Markup-driven vs Model-based

Day 2

Data binding

  • Observers and observables
  • Knockout
  • Building components and applications

Asset packaging

  • The global namespace is out to get you!
  • Implicit dependencies work against scalability
  • Putting modularity first

Tools

  • npm
  • jsFiddle
  • jsHint

Debugging and profiling

  • Firebug, Webkit Inspector
  • Breakpoints and the debugger statement
  • Chrome Development Tools

Testing

  • Testing and JavaScript
  • What to test
  • Dependency injection
  • Testing asynchronous code
  • Going headless

Putting it all together

  • From A to Z: the components interplay
  • Playing the long game: future compatibility
  • Evolving with a web app

Utbildningen levereras i samarbete med

Kurs-ID: T1403
Längd: 2 dag
Pris exkl moms: 20 450 kr
Kan betalas med:
TRAINING CARD

Lämna dina kontaktuppgifter om du önskar en företagsintern utbildning.