Corso di formazione Javascript avanzato

L’obiettivo del corso Javascript avanzato è di completare le competenze professionali di tutti coloro che con ruoli diversi (front-end e full stack developer, web designer e developer, UI designer e analoghi) concorrono alla creazione delle interfacce web.

OBIETTIVO DEL CORSO
L’obiettivo del corso Javascript avanzato è di completare le competenze professionali di tutti coloro che con ruoli diversi (front-end e full stack developer, web designer e developer, UI designer e analoghi) concorrono alla creazione delle interfacce web e desiderano padroneggiare e avere un controllo completo sulle tecnologie lato client browser, di concerto con HTML 5 e CSS 3.
In particolare il corso intende fornire una conoscenza strutturata e completa di javascript, mettendo ordine in un ambito spesso oggetto di autoapprendimento, conoscenze parziali e pratiche talvolta errate.
Il risultato è un vantaggio professionale nello sfruttare appieno le potenzialità di questo linguaggio, cruciale nella tendenza a sviluppare dei front end sempre più interattivi e per questo da ottimizzare al massimo.

LA DIDATTICA

Durante il corso verranno presentati gli argomenti sotto riportati mediante un approccio “evolutivo” basato sui seguenti passaggi:

  • Esposizione del problema da risolvere (semplice e focalizzato sul concetto);
  • Risoluzione del problema grazie all’introduzione di un nuovo concetto;
  • Discussione dei vantaggi e degli svantaggi della soluzione proposta;
  • Utilizzo degli svantaggi della soluzione come nuovo problema da risolvere.

Il programma parte dai concetti “core” del linguaggio (presenti fin dalle prime versioni) e accompagna fino a ES 2023 (o ES14).

PREREQUISITI: conoscenze di base di programmazione, in un linguaggio qualsiasi.

DURATA: 16 ore

PROGRAMMA DEL CORSO

  1. Oggetti, oggetti e ancora oggetti
    1. Tipi primitivi
    2. Creazione di oggetti
    3. Oggetti come keyed collection
    4. Reflection
    5. ES 2015: classi
  2. Funzioni
    1. Anche le function sono oggetti
    2. Function Declaration vs Function Expression
    3. Invocation Patterns: method invocation pattern, function invocation pattern, constructor invocation pattern, apply invocation pattern
    4. Funzioni “Costruttore”
    5. Arguments
    6. Scope
    7. Closure
    8. Immediately Invoked Function Expressions (IIFE)
  3. Global abatment
    1. Oggetti come namespace
    2. IIFE
    3. Pattern module
    4. ES 2015: moduli
  4. Prototype
  5. Ereditarietà
    1. Ereditarietà pseudo-classica
    2. Ereditarietà prototipale
    3. Ereditarietà funzionale
    4. ES 2015: classi e loro estensione
  6. ES6 (ECMAScript 2015):
    1. Costanti
    2. Default Values
    3. Arrow functions
    4. Promises
  7. ES7 (ECMAScript 2016):
    1. Block scope per le variabili
    2. async/await
    3. includes
    4. Exponentiation Operator
  8. ES8 (ECMAScript 2017):
    1. values
    2. entries
    3. getOwnPropertiesDescriptors
  9. ES9 (ECMAScript 2018):
    1. spread operator
    2. rest parameters
  • ES10 (ECMAScript 2019):
    1. flat()
    2. flatMap()
    3. sort (ora stabile)
  • ES11 (ECMAScript 2020):
    1. BigInt primitive type
    2. nullish coalescing operator
  • ES12 (ECMAScript 2021):
    1. replaceAll()
    2. any()
  • ES13 (ECMAScript 2022):
    1. Top-level await
    2. New class elements
    3. static block inside classes
  • ES14 (ECMAScript 2023):
    1. toSorted
    2. toReversed
    3. findLast and findLastIndex on Array.prototype and TypedArray.prototype
Javascript Avanzato
Senior Software Architect

La durata del corso è di 16 ore

 

Questo corso viene erogato solo in modalità dedicata: per questa tipologia, la quotazione è a giornata (su richiesta) e gli argomenti possono essere personalizzati in base alle proprie necessità formative.

AGENDA
    1. Oggetti, oggetti e ancora oggetti
    2. Funzioni
    3. Global abatment
    4. Prototype
    5. Ereditarietà
    6. ES6
    7. ES7
    8. ES8
    9. ES9
    10. ES10
    11. ES11
    12. ES12
    13. ES13
    14. ES14