SlideShare une entreprise Scribd logo
Introduction à AngularJS
RADHOUENE ROUACHED
Plan
I. Introduction
II. Architecture
III. Démonstration
IV. Notions AngularJS
V. Directives
VI. Services
VII. Routage
VIII. Avantages & inconvénients
IX. Outils utiles
X. Bibliographie & Nétographie
2
Introduction
AngularJS est un Framework JavaScript open source développé par Google en 2009 sous la
licence MIT.
Il assure le création des applications web dynamiques de type SPA (Single Page Application),
permettant ainsi développer ses propres balises et attributs HTML.
AngularJS est utilisé dans les sites Web de:
Et encore plus.
3
Architecture
Pour plusieurs années AngularJS était proche du MVC, mais au fil du temps et grâce à l'améliorations de
l'API, il supporte MVW. Ce pattern est un dérivé du célèbre modèle de conception MVC dont Whatever
désigne « whatever works for you».
4
Démonstration
5
Notions AngularJS
◦ Le model : C'est un jeu de données permettant l'interaction de la page HTML et code JavaScript. Il est
définit par les attributs ng-model des éléments du Template HTML.
◦ Le Controller: contrôle les données des applications angularJS. Il s’agit du contrôle des évènement du
Template HTML.
◦ Le Module: peut être considérer comme un conteneur pour les différentes parties d'une applications,
Controller, services, filtres, directives, etc.
◦ Le Scope: Il s'agit du contexte incluant contrôleurs, variables, module, services qui sont accessible
depuis la vue. Chaque application a un seul rootScope. Tous les autres sont des scopes descendant du
rootScope.
◦ Le Service: C’est l’unité de base qui regroupe une même logique. Un service Angular est un objet
singleton créé par une usine(factory) de service. Ces factories de services sont des fonctions qui, à leur
tour, sont créés par un fournisseur(provider) de services.
6
Directives
Les directives permet d’étendre les capacités du langage HTML. Il existe 4 types de directives:
Directives Fonction
ng-app Définir l’élément racine d’une application AngularJS.
ng-init Affecter une valeur initiale a une application AngularJS.
ng-model Attacher une valeur de formulaire aux données de l’application. Produire ainsi
type de validation, statut et les classes CSS aux données.
ng-repeat Parcourir une collection et cloner chaque élément HTML a un article.
ng-controller Affecter un contrôleur a une vue.
ng-click Spécifier un comportement particulier quand élément est cliqué.
ng-view Inclure le Template rendu de la route actuelle a la page principale.
https://docs.angularjs.org/guide/directive
>>
Elément, Attribut, Class, Commentaire
7
Directives
>>8
Directives
Créez votre propre directive :
 Restrict:
• ‘E’ = Element
• ‘A’ = Attribute
• ‘C’ = Class
• ‘M’ = Comment
9
Services
Les services sont des objets substituables qui sont liés ensemble en utilisant l'injection de
dépendance (DI) dans le but d'organiser et de partager le code dans application.
Les services sont:
◦ Lazy: Angular seulement instancie un service quand un composant d'application dépend.
◦ Singletons : Chaque composant dépend d'un service obtient une référence à l'instance unique généré
par l'usine(factory) de service.
Les services natifs
Services Fonction
$scope Chaque application a une seule racine rootScope. Tous les autres scopes sont descendants de
la portée de la racine. Scopes permet une séparation entre le modèle et la vue, par
l'intermédiaire d'un mécanisme pour observer le modèle de modifications.
$http permet de faire une demande au serveur, et de gérer votre application la réponse.
$timeout Il s’agit d’angular version de la function window.setTimeout()
>>10
Services
Créez votre propre service
Factory: Service: Provider:
Un Provider fournit la
configuration du module à
l'échelle de votre objet de
service avant de le rendre
disponible.
Un service est une constructeur
qui crée l'objet en utilisant un
nouveau paramètre. Vous pouvez
ajouter des propriétés et des
fonctions à un service.
Un Factory présente une
fonction simple qui vous permet
d'ajouter une certaine logique
avant la création d'un objet. Elle
retourne l'objet créé.
11
Routing
AngularJS Routes permet d'implémenter plusieurs vues SPA [Single page Applications]. Chaque
vue serait chargé dynamiquement à la suite de l'action de l'utilisateur.
12
Routing
ngRoute: module fournit des services et des directives de routage et de liaison profonde pour
les applications AngularJS.
$route: est utilisé pour faire la liaison entre les contrôleurs et les vues. Il surveille $location.url()
et tente de mapper le chemin à une définition de la route existante.
$routeParams: permet de récupérer l'ensemble des paramètres l’utilisation a choisi.
ngView: est la directive qui permet d'inclure le modèle rendu de la route actuelle dans la page
principale
13
Avantages & Limites
Utilisation d’injection de dépendances
La séparation des préoccupations
fonctionne en mode déconnecté
Le code Angular est testable (unit)
Composant réutilisable
Fournir la liaison de données (data-binding)
aux pages HTML
 Héritage Prototypal
 Non dégradable (Si l'utilisateur désactive
JavaScript, rien ne serait visible)
 Non Sécurisé (Server side authentication and
authorization)
14
Outils utiles
IDE (notepad++, sublime text, netbeans…)
NG Inspector
Batarang
15
Bibliographie & Nétographie
(1) https://docs.angularjs.org/guide/
(2) http://www.w3schools.com/angular/
(3) https://www.airpair.com/javascript/posts/services-in-angularjs-simplified-with-examples
(4) http://cdsweb.u-strasbg.fr/~landais/presentations/INFUSION_angular.pdf
(5) http://www.techaltair.com/5-best-javascript-ide-for-front-end-and-web-engineers/
(6) http://javascript.developpez.com/cours/outils-vraiment-utiles-pour-developpeurs-javascript/
16
Merci pour votre
attention
/in/radrouached /radhouenerouached @__G_T_O__
17

Contenu connexe

Tendances (20)

PDF
Node JS Crash Course
Haim Michael
 
PPTX
Introduction à spring boot
Antoine Rey
 
PDF
Concevoir, développer et sécuriser des micro-services avec Spring Boot
DNG Consulting
 
PDF
Support cours angular
Nizar MAATOUG -ISET Sidi Bouzid
 
PDF
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
ENSET, Université Hassan II Casablanca
 
PPTX
Angular
Mahmoud Nbet
 
PDF
Architectures orientées services
Donia Hammami
 
PPTX
Technologies sur angular.pptx
IdrissaDembl
 
PPTX
Angular modules in depth
Christoffer Noring
 
PPTX
Sharing Data Between Angular Components
Squash Apps Pvt Ltd
 
PDF
The Point of Vue - Intro to Vue.js
Holly Schinsky
 
PDF
Support de cours Spring M.youssfi
ENSET, Université Hassan II Casablanca
 
PPTX
Chp1- Introduction aux Technologies Web et SOA
Lilia Sfaxi
 
PPTX
Architectures orientés services (SOA)
Heithem Abbes
 
PPTX
Chp2 - Vers les Architectures Orientées Services
Lilia Sfaxi
 
PDF
Angular - Chapter 7 - HTTP Services
WebStackAcademy
 
PDF
JWT-spring-boot-avancer.pdf
Jaouad Assabbour
 
PPTX
Workshop spring session 2 - La persistance au sein des applications Java
Antoine Rey
 
PDF
Tp1 - WS avec JAXWS
Lilia Sfaxi
 
Node JS Crash Course
Haim Michael
 
Introduction à spring boot
Antoine Rey
 
Concevoir, développer et sécuriser des micro-services avec Spring Boot
DNG Consulting
 
Support cours angular
Nizar MAATOUG -ISET Sidi Bouzid
 
Mise en oeuvre des Frameworks de Machines et Deep Learning pour les Applicati...
ENSET, Université Hassan II Casablanca
 
Angular
Mahmoud Nbet
 
Architectures orientées services
Donia Hammami
 
Technologies sur angular.pptx
IdrissaDembl
 
Angular modules in depth
Christoffer Noring
 
Sharing Data Between Angular Components
Squash Apps Pvt Ltd
 
The Point of Vue - Intro to Vue.js
Holly Schinsky
 
Support de cours Spring M.youssfi
ENSET, Université Hassan II Casablanca
 
Chp1- Introduction aux Technologies Web et SOA
Lilia Sfaxi
 
Architectures orientés services (SOA)
Heithem Abbes
 
Chp2 - Vers les Architectures Orientées Services
Lilia Sfaxi
 
Angular - Chapter 7 - HTTP Services
WebStackAcademy
 
JWT-spring-boot-avancer.pdf
Jaouad Assabbour
 
Workshop spring session 2 - La persistance au sein des applications Java
Antoine Rey
 
Tp1 - WS avec JAXWS
Lilia Sfaxi
 

En vedette (20)

PPTX
AngularJS
Ouadie LAHDIOUI
 
PPTX
Introduction aux Frameworks java
RadhoueneRouached
 
PPTX
Web services SOAP et REST
RadhoueneRouached
 
PDF
comprendre angularJS en 10 minutes
David Bo
 
PPTX
Prismic
Ouadie LAHDIOUI
 
PPTX
Introduction à AngularJS
Abdoulaye Dieng
 
PDF
Apéro techno node.js + AngularJS @Omnilog 2014
Yves-Emmanuel Jutard
 
PDF
Design Patterns: Builder pattern (Le monteur)
RadhoueneRouached
 
PDF
AngularJS et autres techno frontend
yllieth
 
PPS
Siempre amanece
Charles Dent
 
PPT
Departamento de Salto (4a)
Verónica Blanco
 
PPT
En Busca De Negocios 08
elba.davila
 
PDF
Conférence Minergie, Séminaire Energie&Bâtiments 2015: L'enjeu de l'énergie g...
minergie-romande
 
PPT
Idea VilariñO(2)
Verónica Blanco
 
PPTX
Presentatie krottegem Franse les
broederschoolkrottegem
 
PPS
261501 messager(1)1
KenZobi
 
PPTX
Democràcia 2.0: la democràcia serà tecnològica i participativa o no serà?
Ricard Espelt
 
PDF
La formation à l'épreuve du numérique
Christelle Caruel
 
PDF
Esculturas
Verónica Blanco
 
PDF
Master m adef
Adil Baâli
 
AngularJS
Ouadie LAHDIOUI
 
Introduction aux Frameworks java
RadhoueneRouached
 
Web services SOAP et REST
RadhoueneRouached
 
comprendre angularJS en 10 minutes
David Bo
 
Introduction à AngularJS
Abdoulaye Dieng
 
Apéro techno node.js + AngularJS @Omnilog 2014
Yves-Emmanuel Jutard
 
Design Patterns: Builder pattern (Le monteur)
RadhoueneRouached
 
AngularJS et autres techno frontend
yllieth
 
Siempre amanece
Charles Dent
 
Departamento de Salto (4a)
Verónica Blanco
 
En Busca De Negocios 08
elba.davila
 
Conférence Minergie, Séminaire Energie&Bâtiments 2015: L'enjeu de l'énergie g...
minergie-romande
 
Idea VilariñO(2)
Verónica Blanco
 
Presentatie krottegem Franse les
broederschoolkrottegem
 
261501 messager(1)1
KenZobi
 
Democràcia 2.0: la democràcia serà tecnològica i participativa o no serà?
Ricard Espelt
 
La formation à l'épreuve du numérique
Christelle Caruel
 
Esculturas
Verónica Blanco
 
Master m adef
Adil Baâli
 
Publicité

Similaire à Introduction au Framework AngularJs (20)

PPTX
Hello AngularJS - Back to the future
Ouadie LAHDIOUI
 
PDF
Angluars js
RYMAA
 
PPTX
Angular retro
Deyine Jiddou
 
PDF
Introduction à Angularjs
Rossi Oddet
 
PPTX
Angular JS - Paterne Gaye-Guingnido
SOAT
 
PPTX
Ionic, AngularJS,Cordova,NodeJS,Sass
marwa baich
 
PDF
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
Horacio Gonzalez
 
PDF
Angular développer des applications .pdf
imenhamada17
 
PDF
Angular.pdf
Jaouad Assabbour
 
PDF
Partie 2: Angular
Habib Ayad
 
PDF
Cours 1 introduction
Aymen Sellaouti
 
PDF
Angular 11
PapaDjadjigueye
 
PDF
Angular : Un aperçu du framework de développement d’applications Web
Dekeltv1
 
PPTX
Comment réussir son projet en Angular 1.5 ?
Maxime Bernard
 
PDF
Introduction à Angular 2
Vincent Caillierez
 
ODP
Initiation To AngularJS
Mohamed Wassim Dimassi
 
PPTX
jQuery vs AngularJS
Safwen Chibeni
 
PPTX
Retour d'experience projet AngularJS
∞ François CHERPION ∞
 
PDF
Alphorm.com Formation Angular - Les fondamentaux
Alphorm
 
Hello AngularJS - Back to the future
Ouadie LAHDIOUI
 
Angluars js
RYMAA
 
Angular retro
Deyine Jiddou
 
Introduction à Angularjs
Rossi Oddet
 
Angular JS - Paterne Gaye-Guingnido
SOAT
 
Ionic, AngularJS,Cordova,NodeJS,Sass
marwa baich
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 3/3
Horacio Gonzalez
 
Angular développer des applications .pdf
imenhamada17
 
Angular.pdf
Jaouad Assabbour
 
Partie 2: Angular
Habib Ayad
 
Cours 1 introduction
Aymen Sellaouti
 
Angular 11
PapaDjadjigueye
 
Angular : Un aperçu du framework de développement d’applications Web
Dekeltv1
 
Comment réussir son projet en Angular 1.5 ?
Maxime Bernard
 
Introduction à Angular 2
Vincent Caillierez
 
Initiation To AngularJS
Mohamed Wassim Dimassi
 
jQuery vs AngularJS
Safwen Chibeni
 
Retour d'experience projet AngularJS
∞ François CHERPION ∞
 
Alphorm.com Formation Angular - Les fondamentaux
Alphorm
 
Publicité

Dernier (8)

PPTX
Presentation-projet-PFE pfe-2022-ichrak-2.pptx
houssembejaoui6
 
PPT
Atelier gestion des problèmes 180107.ppt
OlivierPaulin1
 
PDF
Rétro, c'est trop (lightning talk, version 2025)
Laurent Speyser
 
PDF
Télécommunication_optique_I(intro).pdf
OlivierBaderha
 
PPTX
Presentation-projet-PFE résentationSoutenance.pptx
houssembejaoui6
 
PPTX
Presentation-projet-PFE pfe-2022-ichrak-2.pptx
houssembejaoui6
 
PPTX
Y Gervaise V3 Conference AFTPVA 3 Juillet 2025.pptx
YvonGervaise
 
PDF
Ouvrez la porte ou prenez un mur (version 2025)
Laurent Speyser
 
Presentation-projet-PFE pfe-2022-ichrak-2.pptx
houssembejaoui6
 
Atelier gestion des problèmes 180107.ppt
OlivierPaulin1
 
Rétro, c'est trop (lightning talk, version 2025)
Laurent Speyser
 
Télécommunication_optique_I(intro).pdf
OlivierBaderha
 
Presentation-projet-PFE résentationSoutenance.pptx
houssembejaoui6
 
Presentation-projet-PFE pfe-2022-ichrak-2.pptx
houssembejaoui6
 
Y Gervaise V3 Conference AFTPVA 3 Juillet 2025.pptx
YvonGervaise
 
Ouvrez la porte ou prenez un mur (version 2025)
Laurent Speyser
 

Introduction au Framework AngularJs

  • 2. Plan I. Introduction II. Architecture III. Démonstration IV. Notions AngularJS V. Directives VI. Services VII. Routage VIII. Avantages & inconvénients IX. Outils utiles X. Bibliographie & Nétographie 2
  • 3. Introduction AngularJS est un Framework JavaScript open source développé par Google en 2009 sous la licence MIT. Il assure le création des applications web dynamiques de type SPA (Single Page Application), permettant ainsi développer ses propres balises et attributs HTML. AngularJS est utilisé dans les sites Web de: Et encore plus. 3
  • 4. Architecture Pour plusieurs années AngularJS était proche du MVC, mais au fil du temps et grâce à l'améliorations de l'API, il supporte MVW. Ce pattern est un dérivé du célèbre modèle de conception MVC dont Whatever désigne « whatever works for you». 4
  • 6. Notions AngularJS ◦ Le model : C'est un jeu de données permettant l'interaction de la page HTML et code JavaScript. Il est définit par les attributs ng-model des éléments du Template HTML. ◦ Le Controller: contrôle les données des applications angularJS. Il s’agit du contrôle des évènement du Template HTML. ◦ Le Module: peut être considérer comme un conteneur pour les différentes parties d'une applications, Controller, services, filtres, directives, etc. ◦ Le Scope: Il s'agit du contexte incluant contrôleurs, variables, module, services qui sont accessible depuis la vue. Chaque application a un seul rootScope. Tous les autres sont des scopes descendant du rootScope. ◦ Le Service: C’est l’unité de base qui regroupe une même logique. Un service Angular est un objet singleton créé par une usine(factory) de service. Ces factories de services sont des fonctions qui, à leur tour, sont créés par un fournisseur(provider) de services. 6
  • 7. Directives Les directives permet d’étendre les capacités du langage HTML. Il existe 4 types de directives: Directives Fonction ng-app Définir l’élément racine d’une application AngularJS. ng-init Affecter une valeur initiale a une application AngularJS. ng-model Attacher une valeur de formulaire aux données de l’application. Produire ainsi type de validation, statut et les classes CSS aux données. ng-repeat Parcourir une collection et cloner chaque élément HTML a un article. ng-controller Affecter un contrôleur a une vue. ng-click Spécifier un comportement particulier quand élément est cliqué. ng-view Inclure le Template rendu de la route actuelle a la page principale. https://docs.angularjs.org/guide/directive >> Elément, Attribut, Class, Commentaire 7
  • 9. Directives Créez votre propre directive :  Restrict: • ‘E’ = Element • ‘A’ = Attribute • ‘C’ = Class • ‘M’ = Comment 9
  • 10. Services Les services sont des objets substituables qui sont liés ensemble en utilisant l'injection de dépendance (DI) dans le but d'organiser et de partager le code dans application. Les services sont: ◦ Lazy: Angular seulement instancie un service quand un composant d'application dépend. ◦ Singletons : Chaque composant dépend d'un service obtient une référence à l'instance unique généré par l'usine(factory) de service. Les services natifs Services Fonction $scope Chaque application a une seule racine rootScope. Tous les autres scopes sont descendants de la portée de la racine. Scopes permet une séparation entre le modèle et la vue, par l'intermédiaire d'un mécanisme pour observer le modèle de modifications. $http permet de faire une demande au serveur, et de gérer votre application la réponse. $timeout Il s’agit d’angular version de la function window.setTimeout() >>10
  • 11. Services Créez votre propre service Factory: Service: Provider: Un Provider fournit la configuration du module à l'échelle de votre objet de service avant de le rendre disponible. Un service est une constructeur qui crée l'objet en utilisant un nouveau paramètre. Vous pouvez ajouter des propriétés et des fonctions à un service. Un Factory présente une fonction simple qui vous permet d'ajouter une certaine logique avant la création d'un objet. Elle retourne l'objet créé. 11
  • 12. Routing AngularJS Routes permet d'implémenter plusieurs vues SPA [Single page Applications]. Chaque vue serait chargé dynamiquement à la suite de l'action de l'utilisateur. 12
  • 13. Routing ngRoute: module fournit des services et des directives de routage et de liaison profonde pour les applications AngularJS. $route: est utilisé pour faire la liaison entre les contrôleurs et les vues. Il surveille $location.url() et tente de mapper le chemin à une définition de la route existante. $routeParams: permet de récupérer l'ensemble des paramètres l’utilisation a choisi. ngView: est la directive qui permet d'inclure le modèle rendu de la route actuelle dans la page principale 13
  • 14. Avantages & Limites Utilisation d’injection de dépendances La séparation des préoccupations fonctionne en mode déconnecté Le code Angular est testable (unit) Composant réutilisable Fournir la liaison de données (data-binding) aux pages HTML  Héritage Prototypal  Non dégradable (Si l'utilisateur désactive JavaScript, rien ne serait visible)  Non Sécurisé (Server side authentication and authorization) 14
  • 15. Outils utiles IDE (notepad++, sublime text, netbeans…) NG Inspector Batarang 15
  • 16. Bibliographie & Nétographie (1) https://docs.angularjs.org/guide/ (2) http://www.w3schools.com/angular/ (3) https://www.airpair.com/javascript/posts/services-in-angularjs-simplified-with-examples (4) http://cdsweb.u-strasbg.fr/~landais/presentations/INFUSION_angular.pdf (5) http://www.techaltair.com/5-best-javascript-ide-for-front-end-and-web-engineers/ (6) http://javascript.developpez.com/cours/outils-vraiment-utiles-pour-developpeurs-javascript/ 16
  • 17. Merci pour votre attention /in/radrouached /radhouenerouached @__G_T_O__ 17

Notes de l'éditeur

  • #2: Radhouene Rouached