Brief description

JavaScript - this is a lightweight, interpreted, prototype-oriented language with dynamic typing and first-class functions. Is an implementation of the language standard ECMAScript. The most widely used as scripting language of web pages, but also used as a General purpose language (including development on the server side) based on software platform Node.js.

DOM (from the English. Document Object Model — «document object model») is a platform-independent and language programmatic interface (API) that allows programs and scripts to access the contents of HTML, XHTML and XML documents, and modify the content, structure and execution of such documents.

**TypeScript is a typed superset of JavaScript that compiles to plain JavaScript. This language is developed by the company Microsoft.

CoffeeScript is a programming language translated into JavaScript. Adds syntactic sugar in the spirit of Ruby, Python, Haskell and Erlang in order to improve code readability and reduce its size compared with similar code in JavaScript.

AJAX (from the English. Asynchronous Javascript and XML — «asynchronous JavaScript and XML») is an approach to building interactive user interfaces, and receiving/transferring data in web applications, which consists in» «background data-sharing browser from a web server. As a result, when data is updated, the web page is not reloaded completely, and web applications become faster and more convenient.

JSON (from the English. JavaScript Object Notation — «object notation JavaScript») is a text - based data interchange format based on JavaScript. JSON is a syntax for serializing objects, arrays, numbers, strings, Boolean values and null values. It is based on the JavaScript syntax, but still different from it: not every JavaScript code is JSON, and not everyone is JSON code in JavaScript.

Package Manager - a set of software allowing to manage the process of install, uninstall, configure and upgrade various software components. Package managers save you from having to manually install/update additional libraries, their configuration and control dependencies between them. In the world of JavaScript development the most commonly used package Manager npm, bower and yarn.

Static code analyzers - a program for analyzing source code according to certain rules without real vypolneniya the studied programs. Apply for finding syntactic and stylistic errors in code writing and testing applications. For JavaScript development are applied JSHint, JSLint, ESLint and JSCS, XO and others.

Build system software tools that allow you to write and run scripts that automatiseret build processes and deploy developed solutions. Typically, these processes include such tasks as compiling, concatenating (joining) files, minimization/obfuscation of code, checking for style and correctness of writing code, Assembly code from the source files and placing the prepared solutions in a specified location in the file system, run tests, deploy the solution and generation of autodocumentary. The most popular build tools for the frontend are Grunt, gulp.js, Broccoli.js, Brunch.

Testing JavaScript - automated testing (usually modular) client code. For testing the client code uses a set of tools:

Basic resources

Tutorials and textbooks

Interactive courses

Presented below interactive courses include assignments to test the gained knowledge and skills.

Reference

Video

Additionally ###

Instead of the presentation

Software

Tests, laboratory work and practical tasks

Tests

Practical tasks

Opportunities for certification

Go