During this 3-day practical workshop, you will learn modern JavaScript language elements which combine many programming languages paradigms and have a lot of different uses. You will also find out what are the key elements of functional programming and the benefits of using them. This workshop is directed to both programmers that don’t know JavaScript yet, as well as to the experienced JavaScript developers who want to broaden their knowledge.

On the workshop you will

Learn from lecture supported by slides

Solve coding challenges

Complete practical exercises

During the workshop we cover:

  • JavaScript history
  • Primitive types, operators
  • Objects, tables
  • Program control flow, error handling
  • Functions, usage of this and arguments
  • Prototype inheritance
  • JavaScript design process
  • ES6 components, code transcompilation, polyfills
  • Default argument values
  • Object Literal Extensions
  • Template Literals
  • let and const
  • Spread operator and Rest operator
  • Destructuring
  • Iteratory, generatory
  • Modules, classes

New JavaScript elements:

  • Spread operator and Rest operator for objects
  • Async / await
  • Asynchronous iterators and generators

TypeScript:

  • Optional typing
  • Functions
  • Interfaces
  • Intersection & Union Types
  • Nullable and optional types
  • String literal types
  • Discriminated unions
  • Classes
  • Generic types
  • Declaration files
  • Decorators
  • Structural typing (duck typing)

Functional programming:

  • Imperative vs declarative programming
  • Object-oriented vs functional code organization
  • Higher-order functions, first class functions
  • Lazy evaluation, sequences vs collections
  • Invariant programming (immutable)
  • Algebraic data type, records
  • Pattern matching
  • Side effects, clear functions
  • Optional data types

Asynchronous and reactive programming:

  • Callbacks, continuation-passing style, async.js
  • Promise, async/await
  • Observable
  • Reactive programming with RxJS
  • Asynchronous iterators / generators

If time allows: Node.js, Angular, React.js selected items.

How long does it take?

This workshop lasts 3 days, but for more experienced groups we can cut some basic content and conduct it in 2 days.

Requirements

  • Professional experience in JavaScript or other OOP language

Register

Choose this option if you need a workshop for your team or company. The basic price is 4000 EUR for the group for 3 days.

Private workshop

Choose this option if you need a workshop for yourself or for a small group of people. The basic price is 400 EUR per person for the whole workshop.

Open online workshop

Our experts offer consultations for both companies and individuals. The price is set individually.

Contact us