Professional Documents
Culture Documents
Framework Web Front-End
Framework Web Front-End
kallel.sahar@gmail.com
Objectifs
› Développer des Single Page Applications
› Créer des composants web
› Manipuler un Template avec le databinding, les directives
et les pipes
› Faire communiquer les composants
› Communiquer avec les utilisateurs à travers les
formulaires
› Faire communiquer une application avec un backend
2
Plan
› Chapitre 1 : Introduction
› Chapitre 2 : Création d’un projet Angular
› Chapitre 3 : Architecture Angular
– Les modules
– Les composants
– Les templates, databinding
– Les services, etc
› Chapitre 4 : Les formulaires Angular
› Chapitre 5 : Angular Routing
3
Chapitre 1
Introduction
kallel.sahar@gmail.com
Quelques notions essentielles
5
Approche classique
7
Pourquoi un framework ?
8
Pourquoi un framework ?
9
Avantages d’un framework
› Réduire de la complexité
› Gain de temps et d’efficacité
› La richesse en animations
› Meilleure structuration du code
› Maintenance simplifiée
11
Single Page Application
12
SPA vs MPA
Approche SPA Approche MPA
• Une seule page • Plusieurs pages
• Lors de la première requête le serveur • Le serveur contient la logique applicative y
fournit au client des ressources de compris la logique d’IHM.
l’application : modèle HTML (parties • Le rôle du serveur est d’interpréter chaque
statiques), scripts JS, CSS, etc. requête utilisateur et fournit le HTML, les
• Le rôle du serveur est d’exposer les données et les états.
données…. • Le rôle du client est de recueillir les
• Le client gère la partie IHM et toute partie informations, en organiser le rendu et
logique applicative y étant déportée. transmettre au serveur les actions de
• (+) Tout le conteneur est chargé une seule l’utilisateur
fois • (-) Le site est plus lent à charger / naviguer
• (+) Navigation plus simple (scroller et
moins risqué et compliqué que cliquer)
14
Cycle de vie : SPA vs MPA
MPA SPA
15
Framework Angular
› Angular est un Framework Javascript
› Open Source (MIT Licence)
› Développé par Google
› Ecrit avec TypeScript
› Framework Ionic
16
Framework Angular
› Fait partie de la nouvelle vague d’innovation de frameworks
JavaScript côté front-end à travers la conception des applications
web plus légères.
› Basé sur une approche SPA, dont le but est d'éviter le chargement
d'une nouvelle page à chaque action demandée (comme dans
Ajax).
-> Dans ces cas, les types sont facultatifs, car le compilateur TS peut les
deviner depuis leur valeur (c’est ce qu’on appelle l’inférence de type)
› Types génériques :
const sessions: Array<Session> = [new Session()];
22
TypeScript (Syntaxe)
› Type anonyme :
let isCompleted: any;
isCompleted= true;
› Type dynamique :
let isCompleted: number|boolean= 0;
isCompleted= true;
› Paramètres optionnels :
function updateSessionParticipants(session: Session, nb?: number): void {
nb= nb||1;
session.nbParticipants+= nb;
}
23
TypeScript (Décorateur @)
› C’est une fonctionnalité toute nouvelle, ajoutée en TypeScript 1.5, juste
pour le support d’Angular.