Description
Table des matières
- Avant de commencer
- 1. Introduction
- 2. HTML5 oui, mais pas que…
- 2.1 HTML5
- 2.2 JavaScript
- 2.3 CSS
- 3. Les outils
- Préparation des outils et création du projet
- 1. Introduction
- 2. Team Foundation Server
- 2.1 Visual Studio ALM
- 2.2 Les services de TFS
- 2.2.1 Planning
- 2.2.2 Contrôle des sources
- 2.2.3 Éléments de travail
- 2.2.4 Automatisation de la build
- 2.2.5 Tests et Lab Management
- 2.2.6 Rapports et analyse
- 2.3 Visual Studio Online ou serveur dédié
- 3. Démarrage du projet
- 3.1 Création d’un compte Visual Studio Online
- 3.2 Création du projet d’équipe
- 3.3 Team Web Access
- 3.3.1 Gestion de l’équipe et droits d’accès
- 3.3.2 Les Work Items
- 3.3.3 Le Product Backlog
- 3.3.4 Gestion des versions et du planning
- 4. Visual Studio
- 4.1 Création du projet
- 4.1.1 Connexion à TFS et configuration de l’espace de travail
- 4.1.2 Connexion à un projet avec Team Foundation Version Control
- 4.1.3 Création du projet et premier archivage de code
- 4.2 Team Explorer
- 4.2.1 Gestion des branches
- 4.2.2 Les requêtes d’éléments de travail
- 4.1 Création du projet
- 5. Les plug-ins indispensables
- 5.1 Web Essentials
- 5.2 Chutzpah
- 5.3 Extension GitHub pour Visual Studio
- Architecture d’une application web
- 1. Introduction
- 2. Qu’est-ce qu’une web app ?
- 3. Les approches possibles
- 3.1 Fonctionnement de l’architecture monopage
- 3.2 Le site web seul
- 3.3 L’API et ses apps
- 3.4 XML et JSON
- 4. Applications JavaScript ou hybrides client-serveur
- 4.1 L’application hybride client-serveur
- 4.2 L’application JavaScript
- 4.3 Comment choisir ?
- Création d’API REST
- 1. Introduction
- 2. Présentation de REST
- 3. ASP.NET ou Node.js ?
- 3.1 ASP.NET MVC
- 3.2 Node.js
- 3.3 Lequel choisir ?
- 4. Le projet ASP.NET 5
- 4.1 Création du projet
- 4.2 Organisation du projet
- 4.3 Configuration de MVC 6 et Entity Framework 7
- 4.3.1 Ajout des dépendances
- 4.3.2 Ajout du fichier de configuration
- 4.3.3 Configuration d’ASP.NET MVC
- 5. Entity Framework 7
- 5.1 Création des modèles
- 5.2 Création du contexte de base de données
- 5.3 Création du Repository
- 5.4 Configuration des migrations avec DNVM
- 6. Création de la WebAPI
- 6.1 Création des contrôleurs
- 6.1.1 Les méthodes GET
- 6.1.2 Ajout des méthodes POST, PUT et DELETE
- 6.2 Gestion des erreurs
- 6.3 Tester avec Fiddler
- 6.4 Concepts avancés
- 6.4.1 Objets de transfert de données
- 6.4.2 Asynchronisme
- 6.1 Création des contrôleurs
- JavaScript moderne
- 1. Introduction
- 2. Conventions de code JavaScript
- 2.1 Style
- 2.1.1 Indentation
- 2.1.2 Terminaison de ligne
- 2.1.3 Opérations sur plusieurs lignes
- 2.1.4 Variables
- 2.1.5 Fonctions
- 2.1.6 Comparateurs d’égalité
- 2.1.7 Boucles et expressions booléennes
- 2.1.8 Commentaires
- 2.2 Conventions de nommage
- 2.2.1 Variables et constantes
- 2.2.2 Fonctions
- 2.2.3 Classes et constructeurs
- 2.3 Les pièges à éviter
- 2.3.1 null et undefined
- 2.3.2 eval()
- 2.1 Style
- 3. Les patterns de base à connaître
- 3.1 Les classes
- 3.2 L’héritage
- 3.3 Les membres publics, privés et privilégiés
- 3.3.1 Publics
- 3.3.2 Privés
- 3.3.3 Méthodes privilégiées
- 3.4 Les fonctions anonymes à invocation immédiate
- 3.5 Les modules
- 3.5.1 Le pattern Module
- 3.5.2 Le pattern Façade
- 3.5.3 Gestion des dépendances avec AMD
- 3.6 Les callbacks
- 4. Les bonnes pratiques
- 4.1 Le mode strict
- 4.2 Erreurs personnalisées
- 4.3 Documentation du code
- 5. Les outils
- 5.1 JSHint
- 5.1.1 Introduction
- 5.1.2 Configuration
- 5.1.3 Déclaration d’exceptions
- 5.2 Outils pour le développeur intégrés au navigateur
- 5.3 Vorlon.JS
- 5.1 JSHint
- Single Page Applications
- 1. Introduction
- 2. Choisir un framework
- 3. AngularJS
- 3.1 Introduction
- 3.2 Une application AngularJS simple
- 3.2.1 Configuration du dossier wwwroot
- 3.2.2 Premier exemple de code AngularJS
- 3.3 Un exemple plus avancé
- 3.3.1 Création du premier module
- 3.3.2 Un premier contrôleur
- 3.3.3 L’injection de dépendances
- 3.3.4 Le scope
- 3.3.5 Les directives
- 3.3.6 Conventions et style
- 3.3.7 Filtres, services, providers, factories
- 4. Développement de la web app
- 4.1 Préparation du projet
- 4.1.1 package.json
- 4.1.2 bower.json
- 4.1.3 Gruntfile.js
- 4.2 Création de l’application Angular
- 4.2.1 Création du conteneur de l’application
- 4.2.2 Organisation des sources
- 4.2.3 Gestion des routes
- 4.2.4 Création des contrôleurs
- 4.2.5 Création des vues
- 4.2.6 Chargement de l’application dans la page web
- 4.2.7 Ajout du menu de navigation
- 4.3 Utiliser l’API
- 4.3.1 $http
- 4.3.2 Création de BooksService
- 4.3.3 CRUD avec $resources
- 4.3.4 Liste des livres
- 4.3.5 Détail
- 4.3.6 Ajouter un livre
- 4.3.7 Afficher les critiques
- 4.3.8 Ajouter une critique
- 4.1 Préparation du projet
- TypeScript
- 1. Introduction
- 2. Présentation de TypeScript
- 3. Le langage
- 3.1 Le système de typage
- 3.1.1 Déclaration
- 3.1.2 Les types primitifs
- 3.1.3 Le type any
- 3.1.4 L’inférence de type
- 3.2 L’objet
- 3.2.1 Les classes
- 3.2.2 Les modificateurs public, private et protected
- 3.2.3 L’héritage
- 3.2.4 Les interfaces
- 3.3 Les génériques
- 3.4 Les modules
- 3.4.1 Les modules internes
- 3.4.2 Les modules externes ou modules ES6
- 3.5 Autres éléments intéressants du langage
- 3.5.1 Boucle for…of
- 3.5.2 Les Union Types
- 3.5.3 Les fonctions anonymes fléchées d’ES6
- 3.5.4 ES6 let et const
- 3.5.5 Les déstructurations ES6
- 3.5.6 Les décorateurs
- 3.6 Et pour le futur ?
- 3.1 Le système de typage
- 4. Configurer le projet pour utiliser TypeScript
- 4.1 Installation
- 4.2 Compilation
- 4.2.1 En ligne de commande
- 4.2.2 Configuration de la compilation avec Visual Studio
- 4.2.3 Configuration de la compilation avec tsconfig.json
- 4.2.4 Intégration à la build Grunt
- 4.3 Utiliser TypeScript avec des librairies JavaScript
- 4.3.1 Les fichiers de définition de type
- 4.3.2 Récupération automatisée des fichiers de définition
- 4.3.3 Utilisation des librairies en TypeScript
- 4.4 Coder en AngularJS avec TypeScript
- 4.4.1 Transformation du code AngularJS pour TypeScript
- 4.4.2 Création des modules
- 4.4.3 Configuration de RequireJS
- 4.4.4 Et pour Angular 2 ?
- 4.5 Déboguer en TypeScript
- 4.5.1 Dans Visual Studio
- 4.5.2 Dans les autres navigateurs
- Web apps adaptatives
- 1. Introduction
- 2. Responsive design ou site dédié ?
- 2.1 Le site dédié
- 2.2 Le site web responsive
- 2.3 Optimisation
- 2.4 L’approche RESS
- 3. CSS
- 3.1 Présentation de CSS
- 3.2 Les feuilles de style
- 3.3 Les sélecteurs CSS
- 3.3.1 Les sélecteurs de base
- 3.3.2 Le sélecteur d’attribut
- 3.3.3 Les sélecteurs hiérarchiques
- 3.3.4 Les pseudo-classes et pseudo-éléments
- 3.4 Les media queries
- 3.4.1 La syntaxe
- 3.4.2 Les critères
- 3.4.3 Définir les bonnes media queries pour son projet
- 3.4.4 Le viewport
- 4. LESS
- 4.1 LESS et Sass
- 4.2 Fonctionnalités de LESS
- 4.2.1 Installation et utilisation de LESS
- 4.2.2 Les variables
- 4.2.3 Imbrication des fichiers
- 4.2.4 Organisation des fichiers
- 4.2.5 Imbrication de règles
- 4.2.6 Mixins
- 4.2.7 Mathématiques
- 4.2.8 Boucles et conditions
- 4.2.9 Le style de l’application
- Intégration continue
- 1. Introduction
- 2. Build .NET
- 2.1 Que fait une build .NET ?
- 2.2 Team Foundation Build
- 2.2.1 Architecture
- 2.2.2 La définition de build
- 2.2.3 Contrôleur de build local ou hébergé
- 2.3 Build XAML
- 2.3.1 Les modèles de processus
- 2.3.2 Configuration
- 2.3.3 Création des agents
- 2.3.4 Création de la définition de build
- 2.3.5 Personnalisation du modèle de processus
- 2.3.6 Activité personnalisée
- 2.4 Build vNext
- 2.4.1 Configuration
- 2.4.2 Création de la définition de build
- 2.4.3 Exécution
- 2.4.4 Suivi des exécutions
- 3. Build JavaScript
- 3.1 Que fait une build JavaScript ?
- 3.2 Grunt
- 3.2.1 Présentation
- 3.2.2 Configuration de la build Grunt du projet
- 3.3 Gulp
- 3.4 Préparation des livrables pour la production
- 3.4.1 Présentation
- 3.4.2 Génération des Bundles avec Grunt
- 3.5 Exécution de la build
- 3.5.1 Exécution manuelle et automatisée
- 3.5.2 Intégration à TFS Build
- Les tests
- 1. Introduction
- 2. Les tests unitaires
- 2.1 Tests unitaires et TDD
- 2.2 Anatomie d’un test unitaire
- 2.3 Les tests unitaires en .NET
- 2.3.1 Création d’un projet de test unitaire
- 2.3.2 Configuration
- 2.3.3 Écriture de tests
- 2.3.4 Exécution des tests
- 2.3.5 Intégration à la build TFS
- 2.4 Les tests unitaires en JavaScript
- 2.4.1 Karma
- 2.4.2 Mocha
- 2.4.3 Chai
- 2.4.4 SinonJS
- 2.4.5 Intégration à Grunt
- 3. Les tests fonctionnels
- 3.1 Introduction
- 3.2 Plans, suites et cas de tests
- 3.3 Planification
- 3.3.1 Création d’un plan de test
- 3.3.2 Création de suites de tests
- 3.3.3 Création de cas de tests
- 3.4 Exécution
- 3.5 Suivi et rapports
- 4. Tests de charge
- 4.1 Introduction
- 4.2 Les tests web
- 4.3 Les tests de charge
- 4.4 Tests de charge dans le cloud
- Déploiement et suivi en production
- 1. Introduction
- 2. Déploiement continu sur Azure avec Visual Studio Online
- 2.1 Présentation
- 2.2 Configuration
- 3. Gestion avancée des déploiements avec Release Manager
- 3.1 Présentation
- 3.2 Configuration
- 3.2.1 Création du chemin de livraison en production
- 3.2.2 Livraison d’une nouvelle version
- 4. Suivi et analyse de l’application en production avec Application Insights
- 4.1 Présentation
- 4.2 Configuration
- 4.2.1 Configuration du service
- 4.2.2 Ajout à un nouveau projet
- 4.2.3 Ajout à un projet existant
- 4.3 Récupération et analyse des données
- 4.3.1 Récupération et analyse des premières données
- 4.3.2 Informations disponibles de base
- 4.3.3 Données d’utilisation des pages
- 4.3.4 Intégration à une application AngularJS
- 4.3.5 Suivi de la disponibilité
- 4.3.6 Mise en place d’alertes
- Les nouvelles API d’HTML5
- 1. Introduction
- 2. Les Web Components
- 2.1 Principes
- 2.1.1 Comprendre le Shadow DOM
- 2.1.2 Déclaration de nouveaux composants
- 2.1.3 Utilisation des templates et des imports
- 2.1.4 Utiliser les Web Components avec des librairies JavaScript
- 2.1 Principes
- 3. Géolocalisation
- 3.1 Présentation
- 3.2 Comment ça marche ?
- 4. Hors ligne
- 4.1 Le cache d’application
- 4.2 Stockage de données en local
- 4.2.1 Le Web Storage
- 4.2.2 IndexedDB
- 5. Accès au système
- 5.1 FileAPI
- 5.2 getUserMedia
- 5.3 Orientation, accélération et autres capteurs
- 6. Graphisme avancé
- 6.1 Canvas
- 6.1.1 Canvas 2D
- 6.1.2 Canvas 3D
- 6.2 SVG
- 6.1 Canvas
- 7. Les Web Workers
- 8. Et les autres ?
- Évolution des standards et rétrocompatibilité
Reviews
There are no reviews yet.