Advanced JavaScript Programming
Training duration: 24 academic hours (3 days)
Target audience: The course targets programmers that already know the basics of JavaScript but want to enhance their understanding of different JavaScript techniques and tools.
Prerequisites: The participant should already be familiar with the basics of JavaScript language.
Contents of this training
JavaScript has evolved into a language that can be used to implement the entire web-application from database to the user interface. JavaScript has always been used in browser to add logic to the web application but with modern SPA-libraries the entire UI-application may be implemented with JavaScript. With node.js it is possible to also implement the server application with JavaScript and the NoSQL-databases most commonly consume JSON-data. Therefore, even the database can be considered to be a “JavaScript database”.
Contrary to common opinion, JavaScript is not an easy language to master. Starting from the type system and moving through objects and arrays, all these concepts have peculiarities you should master to be able to write secure and performant code. Not to mention huge amount of open source tools and libraries you should evaluate and learn to use in a bigger JavaScript-oriented project.
Course outline
Web-techniques and Architectures
- Web-architectures
- Standards and versions
- Tools and libraries
JavaScript-language
- Type system and prototypes
- Object-concept in JavaScript
- Working with arrays
- Function constructs
- Object-techniques
- Understanding this-keyword
- Localization and internationalization
Asynchronous constructs
- Asynchronous patterns in JavaScript
- Callbacks vs. Events vs. Promises
- Web Workers
JavaScript Project tools
- Compiled JavaScript, Babel
- TypeScript and JSX
- CSS-preprocessors: Less and Sass
- Development process: gulp, grunt, WebPack
- npm-scripts
- Unit testing
- Modularization
- Packaging and minification
NodeJS server programming
- Web-server with express-module
- NodeJS modules
- Operating with databases
- Implementing RESTful interface
- Web Sockets
- NodeJS in Cloud (Azure and AWS)
Browser techniques
- File API
- Local Storage/Session Storage
- Canvas and drawing API
- Indexed DB
SPA-overview
- Angular or React
- UI Components
- Routing between views
Purpose of the course
The course brings the participants JavaScript-skill to a new level. The participant will learn to use more complex JavaScript techniques and tools used in typical, large-scale JavaScript Project.
Intended outcome
After completing this course, students know:
- Language features beyond basics;
- JavaScript project tools;
- Basics of node.js -development;
- Full-stack JavaScript application;
Price includes:
- classroom training;
- course materials;
- certification exams.
In addition we offer:
- snacks, tea and coffee;
- lunch on each training day.
Täienduskoolituse õppekavarühm: tarkvara ja rakenduste arendus ning analüüs
Trainer
-
Jyrki MartonenTrainer