loader image

Gate Training

logo-png
Web - Digital

Formation Electron : Développer des applications de bureau multi-plateformes avec le framework Electron

2 Jours

Description de la formation Electron

Depuis l’arrivée de Node.js en 2009, de nombreuses technologies ont émergé en vue d’élargir le déploiement d’applications JavaScript à de multiples plate-formes (web, serveur, mobile, IoT, …).

Electron en fait partie. Il s’agit d’un framework permettant la création d’applications de bureau multi-plateformes (Windows, MacOS, Linux) via des langages de programmation web (HTML, CSS, JS) et des APIs spécifiques (node, electron).

Proposer un large panel de plate-formes d’exploitation pour une solution est aujourd’hui devenu un enjeu majeur du développement logiciel. Electron répond à ce besoin en permettant aux développeurs JavaScript d’accéder à l’univers desktop, comme le font tous les autres langages système (C, Java, …).

Objectifs

Objectif opérationnel :

Savoir développer des applications de bureau à l’aide de technologies web (HTML, CSS, JS), du framework Electron et de ses APIs.

Objectifs pédagogiques:

Concrètement, à l’issue de cette formation Electron, vous serez en mesure de :

  • Créer une application de bureau grâce à Electron
  • Avoir une connaissance panoramique des APIs système proposées
  • Créer, packager, déployer et mettre à jour une application
  • Utiliser des outils pour vous faire gagner en productivité

À qui s’adresse cette formation ?

Public :

Ce cours Electron cible principalement les profils développeurs système et web.

 

Prérequis :

Pour suivre cette formation Electron, il est important de connaître HTML, CSS, JavaScript (ES2015 est un plus) et Node.js (les APIs de base) / npm.

 

Contenu du cours Electron

Présentation d’Electron

Contexte

Problématique

Solution

Concepts (Electron)

APIs (Electron & Node)
Processus principal
Processus de rendu
Communication inter-processus
Arborescence d’un projet (main.js, package.json index.html)

Outils pour Electron

Electron Fiddle
CLI (electron-forge)
UI toolkit : PhotonKit

Processus principal

Modules app & BrowserWindow & dialog
Événements principaux (ready, window-all-closed, activate)

Travaux Pratiques (Fil rouge – Création d’un CRM)

Dashboard & message de bienvenue

Processus de rendu

Intégration node

Isolation de contexte

Fichier de préchargement & module contextBridge

Travaux Pratiques (Fil rouge – Création d’un CRM)

Modules avec liste (clients, produits)

Communication inter-processus (IPC)

Modules ipcRenderer & ipcMain

Travaux Pratiques (Fil rouge – Création d’un CRM)

Gestion des modules
Ouverture de fenêtres
Méthode CRUD (Create, Read, Update, Delete)
Fichiers CSV

Gestion des menus

Menu d’application (template, roles, type, module Menu)
Menu contextuel (module MenuItem)

Travaux Pratiques (Fil rouge – Création d’un CRM)

CRUD via menus

Gestion des raccourcis

Raccourcis locaux (Accelerators)
Raccourcis globaux

Travaux Pratiques (Fil rouge – Création d’un CRM)

CRUD via raccourcis

Interactions avec le système

Personnaliser la barre des tâches (Windows) / Dock (MacOS)
Barre de notification (system tray)
Glisser déposer (drag & drop)
Fonctionnalités système (module shell)

Travaux Pratiques (Fil rouge – Création d’une CRM)

CRUD via barres des tâches (ou Dock)
CRUD via barre de notification
Export des listes via glisser-déposer
Ouverture des fichiers de liste avec application CSV par défaut

Déploiement et mises à jour

Distribution de l’application (packaging & GitHub release)
Mise à jour de l’application (update-electron-app, module autoUpdater)

Travaux Pratiques (Fil rouge – Création d’une CRM)

Autoupdate GitHub release via update-electron-app

Pour aller plus loin

Presse papier
Mode nuit
Notifications
Détection de la connexion (online/offline)
Documents récents
Barre de progression
Rendu hors d’écran (capture)
Intégrer du contenu web (BrowserView)
Tests (devtools, selenium, WebDriver)

Travaux Pratiques

Cette formation propose une alternance de pratique et de théorie pour une meilleure assimilation des connaissances.

Réf:

00104

Tarif:

600 Dt

Niveau:

Intermédiaire

Classe à distance:

Possible