Introduction
Dans ce cours nous continuerons l'exploration des technologies front-end avec le framework Angular, et back-end avec nodeJS, BDs NoSQL, hébergement dans le cloud etc.
Séance 3 : fin de l'étude des services, router Angular
Vidéos du cours :
On s'est arrêté au transparent No 180
Séance 4 : Back end node/express/mongoose + mongoDB
Vidéos du cours :
On s'est arrêté au transparent : ah cette fois-ci pas de transparents car on a sauté directement après avoir fini la partie initiale du back end (node/mongoose/mongodb) vers la partie sur l'hébergement sur Heroku.
La prochaine fois il faudra voir le support pour la pagination (back et front).
Séance 5 : Ajout de la pagination dans le back-end et dans le front-end
On reprend au transparent No 212 sur la pagination.
Vidéos du cours :
On a fait les transparents 212 à 224
Evaluation du cours
- Le QCM en ligne à faire (vous avez droit aux documents), note de CC (30%)
- Modalités de rendu :
- A RENDRE LE 31 Janvier 2022 : Gadi Mohamed Amine est celui qui m'enverra un google spreadsheet avec les noms des binomes, et les liens remplis
- En binôme ou seul !
- Ca doit être un repository github
- Ca doit être hébergé sur heroku
- Ca doit avoir une video de 1mn sur YouTube et un Readme
Vous devrez modifier le projet pour ajouter certaines des fonctionnalités suivantes (pas besoin de tout faire sauf si vous êtes super forts :-)
- Une plus belle présentation (regarder la doc d'angular material, les composants, pour avoir un beau template), mettre en vert les assignments rendus, en rouge les autres, etc.
- Faire une plus belle pagination/réglages du nombre d'assignments par page etc.
Dans la vue tableau, faites ce que vous pouvez :
- On avait affiché le détail quand on cliquait sur un assignment dans la liste. Maintenant, on ne va plus faire comme cela, on va à la place afficher une icône dans une colonne supplémentaire à droite, et quand on clique dessus on a le détail. (ici aussi écouter (click) sur la cellule etc.)
- On pouvait supprimer un assignment avec le bouton DELETE qui était dans le composant de détail. Maintenant, EN PLUS, on voudrait une colonne supplémentaire dans le tableau qui présente la liste, et si on clique dessus ça supprime directement (sans passer par le détail)
- Un plus si vous arrivez à afficher un dialogue "êtes vous sur de vouloir supprimer cet assignment / cancel / ok". Aide: utiliser un Dialog aAngular Material ou équivalent (il y a peut-être un composant spécialisé)
- Optionnel : utiliser le composant angular material Snack Bar pour afficher les messages qu'on affiche dans la console (les plus intéressants, comme "assignment ajouté", supprimé, modifié, etc.
- Optionnel (pour les bons) : gérer la connexion login/password
- Vous ne ferez pas la partie back-end. Juste le client angular, avec un tableau de login/password codé en dur dans le service d'authentification.
- Pour l'interface graphique de connexion: coder un formulaire login/password en haut de l'écran, avec un bouton "deconnexion" qui n'apparait que si on est connecté, et un bouton connexion qui apparait que si on n'est pas connecté. FAIRE UN NOUVEAU COMPOSANT.
- On ne pourra editer et supprimer un assignment que si on est connecté en admin. Les boutons serons grisés pour ne pas proposer l'option si on n'a pas le droit.
- SI VOUS VOULEZ RAJOUTER DES CHOSES, faites-le ! J'aime être surpris :-)
Notes de bas de page
1 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/M2_INTENSE_Rabat_2021-2022_Technos_Web#Introduction
2 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/M2_INTENSE_Rabat_2021-2022_Technos_Web#S.c3.a9ance_1_.3a_introduction_.c3.a0_Angular
3 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/M2_INTENSE_Rabat_2021-2022_Technos_Web#S.c3.a9ance_2_.3a_communications_entre_composants.2c_d.c3.a9but_service_angular
4 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/M2_INTENSE_Rabat_2021-2022_Technos_Web#S.c3.a9ance_3_.3a_fin_de_l'.c3.a9tude_des_services.2c_router_Angular
5 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/M2_INTENSE_Rabat_2021-2022_Technos_Web#S.c3.a9ance_4_.3a_Back_end_node.2fexpress.2fmongoose_.2b_mongoDB
6 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/M2_INTENSE_Rabat_2021-2022_Technos_Web#S.c3.a9ance_5_.3a_Ajout_de_la_pagination_dans_le_back-end_et_dans_le_front-end
7 http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/M2_INTENSE_Rabat_2021-2022_Technos_Web#Evaluation_du_cours
8 https://youtu.be/ABLi7rFkJdg
9 https://youtu.be/NJ8BbRbh43E
10 https://docs.google.com/presentation/d/1O8cIb5iqlt9ZqG5zEmETnK-hAxBOGsUe0M1xm61sb2U/edit?usp=sharing
11 https://docs.google.com/document/d/1wntGTb5lwBcid9JWUV25t0Q76NevDcuPA-gjn248tD0/edit?usp=sharing
12 https://github.com/micbuffa/angularEmsiRabat2021_2022.git
13 https://youtu.be/sZeb8tpzbFY
14 https://youtu.be/PDsdkATwH_8
15 https://www.angularjswiki.com/angular/angular-date-pipe-formatting-date-times-in-angular-with-examples/
16 https://docs.google.com/presentation/d/1BMoZuD2ncRWnHd8EHUsasjyAStY9WCr5Y06hBgdv2-U/edit?usp=sharing
17 https://docs.google.com/presentation/d/12juEOI9pJatguMTPBukQyzx0LM2FjJDdSpv8EqQHD64/edit?usp=sharing
18 https://www.gekko.fr/les-bonnes-pratiques-a-suivre-pour-developper-des-apis-rest/
19 https://betterprogramming.pub/how-to-set-up-your-macbook-for-web-development-in-2021-a7a1f53f6462
20 https://betterprogramming.pub/my-top-homebrew-packages-for-2020-b6565d46de85
21 https://youtu.be/d22QpZezEjM
22 https://youtu.be/wVqP-X_cNcA
23 https://youtu.be/gvIrPtSGvYE
24 https://university.mongodb.com/courses/catalog
25 https://github.com/micbuffa/backEndEmsiRabat2022.git
26 https://youtu.be/ivR5iX5HkUw
27 https://youtu.be/MKlA3w0yBq0
28 https://youtu.be/3yOSs0eugG4
29 https://youtu.be/zn1dla4_uS8