Accès illimité 24h/24 à tous nos livres & vidéos ! Découvrez la Bibliothèque Numérique ENI. Cliquez ici.
  1. Livres et vidéos
  2. Apprendre à développer avec JavaScript - Des bases à l'utilisation de frameworks (4e édition)

Apprendre à développer avec JavaScript Des bases à l'utilisation de frameworks (4e édition)

  • En stock
  • Expédié en 24h00
  • Livraison à partir de 0,01 €
  • Version en ligne offerte pendant 1 an
  • 1 h d'accès gratuit à tous nos livres et vidéos pour chaque commande
  • Accessible immédiatement
  • Version HTML
  • Accès illimité 24h/24, 7J/7
  • Accès illimité 24h/24, 7J/7
  • Tous les livres en ligne, les vidéos et les cours enregistrés ENI
  • Plus de 10 nouveautés livres et vidéos chaque mois
  • Les nouveautés disponibles le jour de leur sortie
  • Accès 100% en ligne

Présentation

Ce livre sur l'apprentissage du langage JavaScript s'adresse à des lecteurs qui souhaitent maîtriser cette brique incontournable et omniprésente dans le développement de sites web (intranet, extranet, internet) et dans celui d’applications hybrides pour smartphones et tablettes.
En effet, même si des solutions logicielles existent pour contourner la connaissance du langage JavaScript, sa maîtrise est un atout essentiel pour acquérir une expertise dans le domaine des technologies du Web 2.0.

En prenant le parti que le lecteur n'a que des connaissances minimales en programmation, l'auteur débute par des rappels ou des apports en algorithmie. Il explique ensuite les bases du langage JavaScript. Les différents concepts, principes ou fonctionnalités sont mis en œuvre au travers d'exemples concrets facilement réutilisables ensuite dans d'autres développements.

Dans la mesure où le langage JavaScript interagit avec d'autres technologies web (ou langages) comme l'incontournable HTML, les feuilles de styles CSS, les langages de script orientés serveurs comme PHP, ce livre vous permettra aussi de faire vos premiers pas sur ces différentes technologies.

Dans cette quatrième édition, le livre intègre des chapitres supplémentaires relatifs aux principaux frameworks JavaScript tels que Svelte et React facilitant le développement d’applications web.
Le dernier chapitre présente React Native (déclinaison de React) qui permet de développer aisément des applications pour mobiles avec une approche hybride, c’est-à-dire avec un même code déployable sur plateformes Android et iOS (iPhone et iPad).

Tous les chapitres du livre intègrent de nombreux exemples largement commentés et en progression logique. Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr. Vous y trouverez aussi des applications « bonus », non décrites dans le livre.



Quizinclus dans
la version en ligne !
  • Testez vos connaissances à l'issue de chaque chapitre
  • Validez vos acquis

Table des matières

  • Présentation du langage JavaScript
    • 1. Définition et rapide historique
    • 2. Prérequis pour un apprentissage aisé du langage
    • 3. Outillage nécessaire
    • 4. Positionnement du JavaScript face à d’autres technologies de développement web (HTML, CSS, PHP...)
  • Développement à partir d’algorithmes
    • 1. Présentation de la notion d'algorithme
    • 2. Notion de variable
      • 2.1 Présentation des notions de variable et de type
      • 2.2 Types de base et opérations associées
      • 2.3 Intérêt des types
      • 2.4 Utilisation des variables dans des expressions
      • 2.5 Tableau récapitulatif des opérateurs
    • 3. Manipulation des variables
      • 3.1 Nommage des variables
      • 3.2 Affectation
      • 3.3 Exercice n°1 : Inversion du contenu de deux variables mémoire
      • 3.4 Affichage des résultats
      • 3.5 Exercice n°2 : Surfaces de cercles
      • 3.6 Saisie au clavier
      • 3.7 Exercice n°3 : Surface et volume d'une sphère
    • 4. Fonctions prédéfinies
      • 4.1 Exercice n°4 : Affichage de la longueur d'un nom
      • 4.2 Exercice n°5 : Détermination des initiales
    • 5. Traitements conditionnés
      • 5.1 Exercice n°6 : Polynôme du second degré
      • 5.2 Exercice n°7 : Libellé du mois en clair
      • 5.3 Exercice n°8 : Libellé du mois en clair (Suivant ... Finsuivant)
    • 6. Structures itératives
      • 6.1 Principe des itérations
      • 6.2 Structures itératives de base
      • 6.3 Exercice n°9 : Moyenne de 10 nombres
      • 6.4 Exercice n°10 : Moyenne d'une série de n nombres
      • 6.5 Exercice n°11 : Plus Grand Commun Diviseur par la méthode des divisions successives
      • 6.6 Structure itérative Pour
      • 6.7 Exercice n°12 : Calcul de la moyenne de 10 nombres
      • 6.8 Exercice n°13 : Décompte du nombre de voyelles dans un mot
    • 7. Tableaux à dimension unique
      • 7.1 Exercice n°14 : Décompte des nombres pairs dans un tableau
    • 8. Tableaux à dimensions multiples
      • 8.1 Exercice n°15 : Mini-tableur
    • 9. Procédures, fonctions et passage de paramètres
      • 9.1 Les objectifs
      • 9.2 Les procédures
      • 9.3 Exercice n°16 : Appel d'une procédure avec passage de paramètres
      • 9.4 Les fonctions
      • 9.5 Exercice n°17 : Appel d'une fonction avec passage de paramètres
  • Bases du langage JavaScript
    • 1. Méthodologie d'apprentissage
    • 2. Variables (déclaration et typage)
      • 2.1 Exercice n°2 : Surfaces de cercles
      • 2.2 Exercice n°3 : Surface et volume d'une sphère
      • 2.3 Exercice n°4 : Nombre de lettres d'un mot
      • 2.4 Exercice n°5 : Détermination des initiales
  • Conditionnement des traitements
    • 1. Présentation de la syntaxe
    • 2. Exemples
      • 2.1 Exercice n°6 : Polynôme du second degré
      • 2.2 Exercice n°8 : Impression du libellé d'un mois
  • Traitements itératifs (boucles)
    • 1. Présentation de la syntaxe des boucles
    • 2. Boucle while
      • 2.1 Syntaxe
      • 2.2 Exercice n°9 : Moyenne de 10 nombres saisis au clavier
      • 2.3 Exercice n°10 : Moyenne d'une série de n nombres saisis au clavier
    • 3. Boucle do while
      • 3.1 Syntaxe
      • 3.2 Exercice n°11 : Moyenne d'une série de n nombres saisis au clavier
    • 4. Boucle for
      • 4.1 Syntaxe
      • 4.2 Exercice n°12 : Moyenne d'une série de 10 nombres saisis au clavier
      • 4.3 Exercice n°13 : Décompte du nombre de voyelles dans un mot
  • Tableaux
    • 1. Tableaux à dimension unique
      • 1.1 Syntaxe
      • 1.2 Exercice n°14 : Décompte des nombres pairs dans un tableau
    • 2. Tableaux à dimensions multiples
      • 2.1 Syntaxe
      • 2.2 Exercice n°15 : Mini-tableur
  • Procédures et fonctions
    • 1. Les procédures
      • 1.1 Syntaxe
      • 1.2 Exercice n°16 : Appel d'une procédure avec passage de paramètres
    • 2. Les fonctions
      • 2.1 Syntaxe
      • 2.2 Exercice n°17 : Appel d'une fonction avec passage de paramètres
  • Approche "objet" en JavaScript
    • 1. Introduction
    • 2. Programmation orientée objet au travers d’exemples
      • 2.1 Séquence 1 : Déclaration des objets JavaScript en méthode "Inline"
      • 2.2 Séquence 2 : Création des objets JavaScript par constructeur
      • 2.3 Séquence 3 : Variables privées dans une instance d'objet
      • 2.4 Séquence 4 : Passage de paramètre(s) à un constructeur
      • 2.5 Séquence 5 : Non-partage des méthodes par les instances d'objets
      • 2.6 Séquence 6 : Notion de prototype
      • 2.7 Séquence 7 : Surcharge d'une méthode
      • 2.8 Séquence 8 : Extension d'un prototype
      • 2.9 Séquence 9 : Mécanisme de l'héritage
      • 2.10 Séquence 10 : Limite de l'héritage de la séquence n°9
      • 2.11 Séquence 11 : Une seconde limite à notre héritage
  • Objets de base de JavaScript
    • 1. Présentation
    • 2. Les objets de base
      • 2.1 Objet Array
      • 2.2 Objet Date
      • 2.3 Objet Math
      • 2.4 Objet window
      • 2.5 Objet navigator
      • 2.6 Objet String
  • Les nouveautés d’EcmaScript
    • 1. Présentation générale
    • 2. Apports au niveau de la Programmation Orientée Objet
      • 2.1 Notion de prototype
      • 2.2 Surcharge d’une méthode
      • 2.3 Extension de prototype
      • 2.4 Héritage
      • 2.5 Premier exemple POO en EcmaScript 6
      • 2.6 Héritage en EcmaScript
      • 2.7 Méthodes getter, setter et static en EcmaScript 6
    • 3. Fonctions fléchées (arrow functions)
      • 3.1 Avantages des fonctions fléchées
      • 3.2 Exemple
    • 4. Structures Map, Set et boucle for of
      • 4.1 Présentation générale
      • 4.2 Exemple
    • 5. Portée des variables (var ou let)
      • 5.1 Présentation générale
      • 5.2 Exemple
    • 6. Promesses (promise)
      • 6.1 Présentation générale
      • 6.2 Exemple
    • 7. Déstructuration
      • 7.1 Présentation générale
      • 7.2 Exemple
  • Saisie de données via des formulaires
    • 1. Pilotage des contrôles de saisie via JavaScript
      • 1.1 Contrôle de saisie sur un champ texte
      • 1.2 Contrôle de numéricité d'une saisie dans un champ texte
      • 1.3 Contrôle de caractères alphabétiques d'une saisie dans un champ texte
      • 1.4 Contrôle de caractères alphabétiques et numériques d'une saisie dans un champ texte
      • 1.5 Contrôle de longueur d'une saisie dans un champ texte
      • 1.6 Contrôle de saisie sur une adresse e-mail
      • 1.7 Contrôle d'un choix dans une liste déroulante (version simplifiée)
      • 1.8 Contrôle d'un choix dans une liste déroulante (version étendue)
      • 1.9 Contrôle d'un choix par bouton radio
      • 1.10 Contrôle d'un choix par case à cocher
  • Modèle DOM
    • 1. Introduction
      • 1.1 Définition de DOM
      • 1.2 Définition de l'arborescence
    • 2. Apprentissage du modèle DOM
      • 2.1 Script "Hello World!"
      • 2.2 Différence entre write et writeln
      • 2.3 Gestion des liens hypertextes
      • 2.4 Gestion des images
      • 2.5 Gestion des formulaires et de leurs balises
      • 2.6 Gestion des ancres
      • 2.7 Gestion de la navigation entre pages web
      • 2.8 Affichage de caractéristiques générales du document
      • 2.9 Gestion des boutons dans les formulaires
      • 2.10 Gestion des tableaux (balise HTML table)
  • Exploration de flux XML via DOM
    • 1. Notion de flux XML
    • 2. Exemples
      • 2.1 Exemple 1 : Affichage d'un contenu d’e-mail codé en XML
      • 2.2 Exemple 2 : Liste des marques des voitures (fichier voitures.xml)
      • 2.3 Exemple 3 : Liste des marques des voitures avec une boucle
      • 2.4 Exemple 4 : Liste des nœuds rattachés à la racine
      • 2.5 Exemple 5 : Liste des champs (nœuds) de chaque voiture
      • 2.6 Exemple 6 : Remplacement d'une valeur de nœud
      • 2.7 Exemple 7 : Accès aux attributs
      • 2.8 Exemple 8 : Accès à un nœud parent
      • 2.9 Exemple 9 : Parcours arrière des nœuds
      • 2.10 Exemple 10 : Remplacement systématique d'une valeur d'attribut
      • 2.11 Exemple 11 : Conversion XML en HTML
      • 2.12 Exemple 12 : Suppression d'un nœud dans un flux XML
  • Gestion des cookies en JavaScript
    • 1. Notion de cookie
    • 2. Écriture d'un cookie
    • 3. Lecture d'un cookie
    • 4. Suppression d'un cookie
  • Stockage local de données
    • 1. Présentation générale des solutions
      • 1.1 Stockage par sessionStorage
      • 1.2 Stockage par localStorage
    • 2. Mise en œuvre du Web Storage au travers d'exemples
      • 2.1 Exemple 1 : Stockage par localStorage de chaînes de caractères
      • 2.2 Exemple 2 : Stockage dans le localStorage d'un objet JavaScript
  • Stockage distant (Ajax - PHP - MySQL - XML)
    • 1. Présentation générale de la solution
    • 2. Mise en œuvre du stockage distant au travers d'exemples
      • 2.1 Exemple 1 : Accès Ajax sur BDD MySQL (liste de l'ensemble des voitures)
      • 2.2 Exemple 2 : Accès MySQL via Ajax
  • Stockage distant (Ajax - PHP - MySQL - JSON)
    • 1. Présentation générale de la solution
    • 2. Mise en œuvre du stockage distant au travers d'exemples
      • 2.1 Exemple 1 : Présentation du système de notation JSON
      • 2.2 Exemple 2 : Lecture d'un fichier JSON via XMLHttpRequest
      • 2.3 Exemple 3 : Lecture d'un fichier JSON via XMLHttpRequest et un script serveur en PHP
      • 2.4 Exemple 4 : Lecture d'une table MySQL via XMLHttpRequest (serveur PHP et flux JSON)
      • 2.5 Exemple 5 : Recodage de l'exemple 4 avec une liste déroulante
  • Géolocalisation
    • 1. Principe de la géolocalisation
    • 2. Exemples d'applications de géolocalisation
      • 2.1 Exemple 1 : Affichage de la carte de l'Ouest de la France
      • 2.2 Exemple 2 : Affichage de la carte de l’Ouest de la France (marqueur)
      • 2.3 Exemple 3 : Affichage de la carte de l’Ouest de la France (marqueur et cercles de population)
      • 2.4 Exemple 4 : Affichage de la carte de l'Ouest de la France (informations météorologiques)
      • 2.5 Exemple 5 : Affichage de la carte de Rennes Centre-Sud (avec photo des sites importants)
      • 2.6 Exemple 6 : Affichage de la carte de Rennes (Street View)
  • Dessin (HTML5 CANVAS)
    • 1. Présentation de l'API HTML5 CANVAS
    • 2. Exemples d'applications de l'élément <canvas>
      • 2.1 Exemple 1 : Tracé d'un simple carré
      • 2.2 Exemple 2 : Tracé d'une grille de TicTacToe
      • 2.3 Améliorations possibles sur le jeu du TicTacToe
  • Graphiques de gestion
    • 1. Différentes solutions de conception de graphiques de gestion
    • 2. Exemples d'utilisation des API Google Charts
      • 2.1 Exemple 1 : Tracé d'un histogramme
      • 2.2 Exemple 2 : Tracé d'un graphique en secteurs
      • 2.3 Exemple 3 : Tracé d'une carte
  • Positionnement des frameworks JavaScript
    • 1. Présentation générale des frameworks JavaScript
      • 1.1 Frameworks « front-end »
      • 1.2 Frameworks « back-end »
      • 1.3 Solutions de développement « hybride »
    • 2. Les frameworks Node.js, Svelte, React et React Native
  • Installation de Node.js
    • 1. Présentation du framework Node.js
    • 2. Installation du framework Node.js
  • Framework Svelte
    • 1. Présentation du framework Svelte
    • 2. Site svelte.dev
    • 3. Création locale d’un projet Svelte
    • 4. Installation de Microsoft Visual Studio Code
    • 5. Projets Svelte
      • 5.1 « eni_svelte_01 » - Première application
      • 5.2 « eni_svelte_02 » - Importance des commentaires
      • 5.3 « eni_svelte_03 » - Mise en place d’une image
      • 5.4 « eni_svelte_04 » - Intégration de balises HTML
      • 5.5 « eni_svelte_05 » - Un premier bouton
      • 5.6 « eni_svelte_06 » - Le rôle du $ dans les formules
      • 5.7 « eni_svelte_07 » - Champs de saisie
      • 5.8 « eni_svelte_08 » - Saisie avec curseur
      • 5.9 « eni_svelte_09 » - Cases à cocher
      • 5.10 « eni_svelte_10 » - Boutons « radio »
      • 5.11 « eni_svelte_11 » - Liste
      • 5.12 « eni_svelte_12 » - Liste et boutons « radio »
      • 5.13 « eni_svelte_13 » - Boutons Svelte Materialify
      • 5.14 « eni_svelte_14 » - Liste déroulante Svelte Materialify
      • 5.15 « eni_svelte_15 » - Switches Svelte Materialify
      • 5.16 « eni_svelte_16 » - Première application Sapper-MySQL
      • 5.17 « eni_svelte_17 » - Liste déroulante Sapper-MySQL
      • 5.18 « eni_svelte_18 » - Ajout d’un sport via Sapper-MySQL
      • 5.19 « eni_svelte_19 » - Mise à jour Sapper-MySQL
      • 5.20 « eni_svelte_20 » - Suppression Sapper-MySQL
  • Framework React
    • 1. Présentation de React
    • 2. Création locale d’un projet React
    • 3. Projets React basiques
      • 3.1 « eni_react_bases_01 »
      • 3.2 « eni_react_bases_02 »
      • 3.3 « eni_react_bases_03 »
      • 3.4 « eni_react_bases_04 »
      • 3.5 « eni_react_bases_05 »
      • 3.6 « eni_react_bases_06 »
    • 4. Les props React
      • 4.1 « eni_react_props_01 »
      • 4.2 « eni_react_props_02 »
      • 4.3 « eni_react_props_03 »
    • 5. Les librairies tierces pour React
      • 5.1 « eni_react_material-ui_table_01 »
      • 5.2 « eni_react_material-ui_table_02 »
      • 5.3 « eni_react_material-ui_table_03 »
      • 5.4 « eni_react_recharts_01 »
      • 5.5 « eni_react_recharts_02 »
      • 5.6 « eni_react_recharts_03 »
    • 6. Lecture de fichiers JSON sous React
      • 6.1 Différents types de flux JSON
      • 6.2 « eni_react_lecture_json_local »
    • 7. Interactions avec un serveur PHP-MySQL
      • 7.1 « eni_react_php_mysql_01 »
      • 7.2 « eni_react_php_mysql_02 »
      • 7.3 « eni_react_php_mysql_03 »
      • 7.4 « eni_react_php_mysql_04 »
      • 7.5 « eni_react_php_mysql_05 »
    • 8. La navigation sous React (routage)
  • Framework React Native
    • 1. Approches de développement pour périphériques mobiles
      • 1.1 Développements web, natif et hybride
        • 1.1.1 Applications web
        • 1.1.2 Applications natives
        • 1.1.3 Applications hybrides
      • 1.2 Les trois principales plateformes
        • 1.2.1 Apple iOS
        • 1.2.2 Android
        • 1.2.3 Windows Phone, Windows 10 Mobile
    • 2. Présentation du framework React Native
    • 3. Projets React Native
      • 3.1 Application « eni_react_native_helloworld »
      • 3.2 Application « eni_react_native_list_view »
      • 3.3 Application « eni_react_native_input_text »
      • 3.4 Application « eni_react_native_picker_basique »
      • 3.5 Application « eni_react_native_hook »
      • 3.6 Application « eni_react_native_php_mysql »
      • Index

Auteur

Christian VIGOUROUXEn savoir plus

Christian VIGOUROUX est Maître de Conférences des Universités à l'Université de Rennes 1 dans la composante Gestion (IAE- Institut de Gestion de Rennes). Il y enseigne depuis près de 30 ans l'informatique de gestion à des publics d'étudiants en Formation Initiale et Formation Continue (Bac+5) et est notamment en charge des enseignements en Techniques Internet, en Génie Logiciel et en Informatique Décisionnelle du Master Systèmes d'Information et Contrôle de Gestion qu'il dirige. Par ailleurs, il mène des missions de conseil auprès de grands groupes pour la mise en œuvre de solutions décisionnelles et pour l'implémentation d'architectures logicielles.

Caractéristiques

  • Niveau Confirmé à Initié
  • Nombre de pages 766 pages
  • Parution novembre 2021
    • Livre (broché) - 17 x 21 cm
    • ISBN : 978-2-409-03283-7
    • EAN : 9782409032837
    • Ref. ENI : RI4JASAP
  • Niveau Confirmé à Initié
  • Parution novembre 2021
    • HTML
    • ISBN : 978-2-409-03284-4
    • EAN : 9782409032844
    • Ref. ENI : LNRI4JASAP

Téléchargements

En complétant ce formulaire, vous acceptez d'être contacté afin de recevoir des informations sur nos produits et services ainsi que nos communications marketing. Vous aurez la possibilité de vous désabonner de nos communications à tout moment. Pour plus d'informations sur notre politique de protection des données, cliquez ici.
  • Des fichiers complémentaires (1 Ko)