• Aide
  • Eurêkoi Eurêkoi

Livre

JavaScript et Angular : des bases du langage au développement d'une application web

Résumé

Ouvrage à destination des développeurs réalisant une application web avec Angular, le framework JavaScript de Google. La première partie du livre expose les concepts du langage JavaScript, des plus basiques aux plus avancés avec un chapitre consacré à TypeScript. La seconde partie étudie pas à pas le développement d'une application, avec des exercices de mise en pratique.


  • Éditeur(s)
  • Date
    • cop. 2020
  • Notes
    • La couv. porte en plus : "En téléchargement : code source" ; "+ quiz" ; "Version en ligne offerte ! pendant 1 an"
    • La 4e de couv. porte en plus : "Sur www.editions-eni.fr : le code source complet de l'application fil rouge développée dans le livre"
    • Contient un "flashcode" permettant d'accéder à un contenu via Internet
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (413 p.) : ill. ; 22 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-2-409-02470-2
  • Indice
  • Quatrième de couverture
    • JavaScript et Angular

      Des bases du langage au développement d'une application web

      Cet ouvrage s'adresse aux développeurs qui souhaitent apprendre à développer une application web avec le Framework JavaScript de Google : Angular. Le lecteur est placé dans un cadre méthodologique Agile Scrum lui permettant d'assimiler les mécanismes de développement dans un contexte professionnel.

      Rédigé en deux parties, l'auteur détaille dans la première partie du livre les concepts du langage JavaScript, basiques comme plus avancés, en les illustrant par des exemples. Le lecteur peut ainsi se familiariser avec l'installation de l'IDE, les types de données, les boucles et conditions, les fonctions ou encore la programmation orientée objet avec JavaScript. Un chapitre consacré à TypeScript permet au lecteur de faire le lien entre le langage JavaScript et le framework Angular.

      Dans la seconde partie, l'auteur étudie ensuite pas à pas et par la pratique les mécanismes d'Angular avec le développement d'une application « fil rouge » étoffée de chapitre en chapitre grâce aux nouveaux concepts acquis. Le lecteur peut ainsi mettre en oeuvre les composants et leur hiérarchie, les gabarits, les API, les formulaires, le routage, la programmation réactive, les tests unitaires et de bout en bout, l'authentification, l'exploitation d'une base de données avec FireBase et l'intégration continue avec Travis pour aboutir très rapidement à une application pleinement fonctionnelle. Plusieurs outils sont également étudiés pour être en mesure de qualifier et auditer son propre code et ainsi gagner en productivité.

      Des éléments complémentaires sont disponibles en téléchargement sur le site www.editions-eni.fr.


  • Tables des matières
      • JavaScript et Angular

      • Des bases du langage au développement d'une application web

      • Éditions ENI

      • Avant-propos
      • Partie 1 : JavaScript
      • Chapitre 1
      • Historique
      • 1. Internet17
      • 1.1 Un réseau pour les lier tous17
      • 1.2 TCP/IP18
      • 1.3 Navigateurs et WWW18
      • 2. JavaScript19
      • 2.1 Valider un formulaire19
      • 2.2 ECMAScript20
      • 2.3 DOM20
      • 2.4 Déclinaisons20
      • 2.5 JavaScript et le web21
      • 3. Angular23
      • 3.1 AngularJS23
      • 3.2 Angular 223
      • 3.3 Versions suivantes25
      • Chapitre 2
      • Installation
      • 1. Introduction27
      • 2. Visual Studio Code28
      • 2.1 Installation29
      • 2.1.1 Windows29
      • 2.1.2 Linux30
      • 2.2 Interface31
      • 3. Google Chrome32
      • 4. git33
      • 5. Node.js34
      • 6. npm35
      • 7. Angular CLI37
      • 8. Structure de cet ouvrage38
      • Chapitre 3
      • Types de données
      • 1. Commandes Git41
      • 2. Introduction41
      • 3. Déclaration de variable42
      • 4. Nombres45
      • 4.1 Types de nombres45
      • 4.2 Opérations élémentaires46
      • 4.3 Nombres à virgule47
      • 4.4 Syntaxe simplifiée47
      • 4.4.1 Incrémentation et décrémentation47
      • 4.4.2 Opérations mathématiques courantes47
      • 5. Chaînes de caractères48
      • 5.1 Déclaration et initialisation48
      • 5.2 Concaténation49
      • 6. Tableaux50
      • 6.1 Déclaration et initialisation50
      • 6.2 Accès51
      • 6.3 Modification51
      • 6.4 Fonctions utiles52
      • 6.4.1 push et unshift52
      • 6.4.2 pop et shift53
      • 6.4.3 indexOf54
      • 7. Mise en pratique54
      • 7.1 Énoncé54
      • 7.2 Correction55
      • Chapitre 4
      • Boucles et conditions
      • 1. Commandes Git57
      • 2. Conditions57
      • 2.1 Opérateurs logiques57
      • 2.1.1 ET58
      • 2.1.2 OU58
      • 2.1.3 NON58
      • 2.1.4 Évaluation58
      • 2.1.5 Priorité des opérations60
      • 2.2 Syntaxe61
      • 2.2.1 if61
      • 2.2.2 if... else61
      • 2.2.3 Opérateur ternaire62
      • 2.2.4 switch62
      • 3. Boucles65
      • 3.1 while65
      • 3.1.1 Syntaxe65
      • 3.1.2 Vers l'infini et au-delà66
      • 3.1.3 Exemple66
      • 3.1.4 Version alternative67
      • 3.2 for68
      • 3.2.1 Syntaxe68
      • 3.2.2 FizzBuzz68
      • 3.2.3 Optimisation pour les indices de listes et d'objets70
      • 4. Mise en pratique71
      • 4.1 Énoncé71
      • 4.2 Correction72
      • Chapitre 5
      • Fonctions
      • 1. Commandes Git75
      • 2. Introduction75
      • 3. Fonctions simples76
      • 3.1 Syntaxe76
      • 3.2 Portées77
      • 3.2.1 Portée globale77
      • 3.2.2 Portée locale78
      • 4. Fonctions et arguments80
      • 4.1 Syntaxe de fonction avec arguments80
      • 4.2 Appel de fonction avec arguments80
      • 4.3 Valeur par défaut des arguments81
      • 4.4 Nombre d'arguments indéfini83
      • 5. Retour84
      • 5.1 Syntaxe84
      • 5.2 Utilisation d'un retour de fonction85
      • 6. Fonctions ou méthodes87
      • 7. Mise en pratique88
      • 7.1 Énoncé88
      • 7.2 Correction89
      • Chapitre 6
      • JavaScript orienté objet
      • 1. Commandes Git93
      • 2. Définition93
      • 3. Création d'un objet94
      • 4. Bob le constructeur95
      • 5. Propriétés et méthodes99
      • 6. Classes100
      • 6.1 Constructeur100
      • 6.2 Méthodes101
      • 6.2.1 Getters et setters101
      • 6.2.2 Méthodes et attributs statiques104
      • 7. Mise en pratique105
      • 7.1 Énoncé105
      • 7.1.1 Pokémon105
      • 7.1.2 Attaque106
      • 7.1.3 Combat106
      • 7.2 Correction107
      • 7.2.1 Pokémon108
      • 7.2.2 Attaque109
      • 7.2.3 Combat110
      • Chapitre 7
      • TypeScript
      • 1. Commandes Git119
      • 2. Historique119
      • 3. Intégrer TypeScript à un projet web120
      • 3.1 npm120
      • 3.2 Création d'un fichier TypeScript121
      • 4. Typage121
      • 4.1 JavaScript et les erreurs de typage121
      • 4.2 TypeScript et le typage122
      • 4.3 Erreurs de compilation123
      • 4.4 Types124
      • 5. Énumérations125
      • 5.1 Déclaration125
      • 5.2 Utilisation d'une variable de type énumération125
      • 6. Fonctions126
      • 6.1 Généralités126
      • 6.2 Fonctions particulières127
      • 6.2.1 Fonctions anonymes127
      • 6.2.2 Fonctions lambda ou fléchées127
      • 7. Classes et héritage128
      • 7.1 Classe minimale128
      • 7.2 Attributs128
      • 7.3 Accesseurs129
      • 7.4 Constructeur131
      • 7.5 Méthodes132
      • 7.6 Héritage134
      • 8. Modules137
      • 9. Mise en pratique139
      • 9.1 Énoncé139
      • 9.2 Correction140
      • Partie 2 : Angular
      • Chapitre 8
      • Angular CLI - Composants
      • 1. Commandes Git145
      • 2. Introduction145
      • 3. Création d'une nouvelle application Angular147
      • 3.1 Génération d'un nouveau projet avec AngularCLI147
      • 3.2 Architecture d'un projet généré149
      • 4. Composants150
      • 4.1 Classe TypeScript150
      • 4.2 Décorateur151
      • 4.3 Métadonnées152
      • 4.4 Ajout dans le module principal152
      • 4.5 Utilisation d'un composant154
      • 5. Angular CLI et la création de composants154
      • 5.1 Génération d'un composant avec AngularCLI154
      • 5.2 Méthodes intervenant dans le cycle de vie d'un composant Angular156
      • 6. Mise en pratique156
      • 6.1 Énoncé156
      • 6.2 Correction157
      • Chapitre 9
      • Gabarits
      • 1. Commandes Git161
      • 2. Introduction161
      • 3. Bootstrap162
      • 4. Interpolation163
      • 5. Événements166
      • 6. Directives168
      • 6.1 Directives de structure169
      • 6.1.1 Conditions169
      • 6.1.2 Itérations171
      • 6.1.3 Choix multiples173
      • 6.2 Directives de données173
      • 6.2.1 Classes173
      • 6.2.2 Style177
      • 7. Mise en pratique180
      • 7.1 Énoncé180
      • 7.2 Correction181
      • Chapitre 10
      • Mise en forme dans les gabarits
      • 1. Commandes Git185
      • 2. Introduction185
      • 3. Tuber des chaînes de caractères186
      • 4. Tuber des nombres187
      • 4.1 DecimalPipe188
      • 4.2 PercentPipe189
      • 4.3 CurrencyPipe190
      • 5. Tuber une date191
      • 6. Tuber un objet ou un dictionnaire192
      • 6.1 KeyValuePipe192
      • 7. Tuber un tableau ou une chaîne de caractères194
      • 7.1 SlicePipe194
      • 8. Tuber des objets provenant d'API externes195
      • 8.1 JsonPipe195
      • 8.2 AsyncPipe196
      • 9. Mise en pratique197
      • 9.1 Énoncé197
      • 9.2 Correction198
      • Chapitre 11
      • Hiérarchie des composants
      • 1. Commandes Git205
      • 2. Architecture hiérarchique205
      • 3. Transmission père-fils207
      • 4. Transmission fils-père210
      • 5. Mise en pratique212
      • 5.1 Énoncé212
      • 5.2 Correction214
      • Chapitre 12
      • Services
      • 1. Commandes Git219
      • 2. Introduction219
      • 3. Dépendances220
      • 4. Services221
      • 5. Exemple de service223
      • 6. CRUD et les services225
      • 7. Mise en pratique228
      • 7.1 Énoncé228
      • 7.2 Correction229
      • Chapitre 13
      • Formulaires
      • 1. Commandes Git233
      • 2. Introduction233
      • 3. Créer un formulaire HTML234
      • 4. Créer un formulaire Angular235
      • 4.1 Méthode 1 : à l'intérieur d'un gabarit236
      • 4.1.1 FormsModule236
      • 4.1.2 Interpolation237
      • 4.1.3 Lier le formulaire à un modèle240
      • 4.2 Méthode 2 : à l'intérieur d'une classe TypeScript243
      • 4.2.1 ReactiveFormsModule243
      • 4.2.2 Créer un formulaire TypeScript244
      • 4.2.3 Lier chaque champ HTML au formulaire TypeScript246
      • 4.2.4 FormBuilder248
      • 5. Soumettre un formulaire248
      • 6. Mise en pratique250
      • 6.1 Énoncé250
      • 6.2 Correction252
      • Chapitre 14
      • Gestion avancée des formulaires
      • 1. Commandes Git257
      • 2. Introduction257
      • 3. Validation des champs de saisie258
      • 3.1 Dans un formulaire basé sur un template258
      • 3.2 Dans un formulaire basé sur une classe TypeScript261
      • 4. Validateurs personnalisés263
      • 5. Mise en forme selon les validateurs266
      • 5.1 NgModel et ses booléens de comportement266
      • 5.2 Mise en forme selon validateurs266
      • 5.2.1 Signaler une erreur dans un champ par un message267
      • 5.2.2 Encadrer un champ267
      • 6. Mise en pratique270
      • 6.1 Énoncé270
      • 6.2 Correction272
      • Chapitre 15
      • Routage
      • 1. Commandes Git277
      • 2. Introduction277
      • 3. Angular CLI et le routage278
      • 4. href ! = routerLink278
      • 5. app-routing.module.ts280
      • 6. Routes282
      • 6.1 Route joker282
      • 6.2 Routes paramétrées284
      • 6.2.1 Navigation dans le gabarit287
      • 6.2.2 Navigation dans le composant TypeScript288
      • 6.2.3 Utilisation du paramètre de l'URL dans un composant289
      • 7. Hiérarchie dans les routes291
      • 7.1 Création de quatre composants291
      • 7.2 Routes enfants294
      • 7.3 Mise en place des composants enfants295
      • 8. Permissions296
      • 9. Mise en pratique300
      • 9.1 Énoncé300
      • 9.2 Correction300
      • Chapitre 16
      • Programmation réactive
      • 1. Commandes Git303
      • 2. Introduction303
      • 3. Promesse304
      • 3.1 Instancier une promesse304
      • 3.2 Fonction de rappel306
      • 4. Observable308
      • 4.1 Généralités308
      • 4.2 rxjs309
      • 5. HTTP : HyperText Transfer Protocol311
      • 6. Mise en pratique315
      • 6.1 Énoncé315
      • 6.1.1 Générations315
      • 6.1.2 Pokémons316
      • 6.2 Correction318
      • 6.2.1 Générations318
      • 6.2.2 Pokémons321
      • Chapitre 17
      • Tests unitaires
      • 1. Commandes Git327
      • 2. Introduction327
      • 3. Jasmine328
      • 3.1 Tests unitaire basiques330
      • 3.2 Fixture331
      • 3.3 Lancer les tests unitaires332
      • 4. Tests unitaires d'un composant Angular334
      • 4.1 Classe TypeScript334
      • 4.2 Gabarit336
      • 4.3 Dépendances338
      • 5. Karma341
      • 6. Couverture de code342
      • 7. Mise en pratique346
      • 7.1 Énoncé346
      • 7.2 Correction347
      • Chapitre 18
      • Tests de bout en bout
      • 1. Commandes Git355
      • 2. Introduction355
      • 3. Protractor356
      • 3.1 Objet page358
      • 3.2 Test e2e359
      • 4. Tester les actions utilisateurs360
      • 4.1 Modifier l'objet page361
      • 4.2 Ajouter deux tests363
      • 5. Et à part cliquer ?364
      • 5.1 Au niveau du navigateur364
      • 5.2 Au niveau d'un élément365
      • 6. Cas concret : une liste et des boutons365
      • 7. Mise en pratique369
      • 7.1 Énoncé369
      • 7.2 Correction369
      • 7.2.1 Page principale369
      • 7.2.2 Page Générations371
      • 7.2.3 Page Pokémons372
      • 7.2.4 Lancement des tests374
      • Chapitre 19
      • Outils complémentaires
      • 1. Introduction375
      • 2. Compodoc375
      • 2.1 Installation376
      • 2.2 Génération377
      • 3. WakaTime379
      • 3.1 Fonctionnement379
      • 3.2 Installation379
      • 3.3 Badge381
      • 4. Travis381
      • 4.1 Configuration382
      • 4.2 Navigateurs web sans interface graphique383
      • 4.3 Tuning384
      • 4.4 Une intégration, plusieurs actions386
      • 4.5 Badge387
      • 5. Codacy387
      • 5.1 Plug-in GitHub387
      • 5.2 codacy.com388
      • 5.3 Configuration389
      • 5.4 Badge390
      • 6. Firebase391
      • 6.1 Prérequis391
      • 6.1.1 Firebase > Angular393
      • 6.1.2 Angular > Firebase394
      • 6.2 Authentification395
      • 6.2.1 Modes de connexion395
      • 6.2.2 Service Angular d'authentification395
      • 6.3 Connexion à une base de données Firebase398
      • 6.3.1 Création de la base de données399
      • 6.3.2 Définition du modèle399
      • 6.3.3 Implémentation du service400
      • 7. Code Konami402
      • Index405

  • Origine de la notice:
    • BPI
  • Disponible - 681.230 CAL

    Etage 3 - Informatique - Informatique