294 : Réaliser le front-end d’une application Web interactive
Compétences
- Implémenter, au moyen de la technologie définie et à l’aide d’un back-end existant, le front-end d’une application Web interactive permettant la gestion de données.
Objectifs opérationnels
- Mettre en place l’environnement de développement et d’exécution local de manière à pouvoir développer un projet défini.
- Programmer, au moyen de la technologie définie et à l’aide d’un back-end documenté existant, le front-end structuré et efficient d’une application Web interactive permettant de gérer (Create, Read, Update, Delete [CRUD]) des données tout en se conformant aux consignes applicables en l’espèce.
- Programmer le front-end d’une application Web interactive afin de rendre accessibles, via un lien permanent, les différents éléments CRUD du front-end.
- Vérifier les résultats intermédiaires au regard des exigences (fonctionnel, non fonctionnel, sécurité) et procéder en continu à des corrections.
- Appliquer les conventions de code données et vérifier en continu si celles-ci sont respectées.
- Déposer les modifications et extensions de l’implémentation de façon claire et fiable dans un système de gestion des logiciels.
- Protéger au moins un domaine du front-end contre des accès anonymes.
Liens domaine de compétence opérationnels
- g2: Vérifier la faisabilité technique des prototypes d’interfaces utilisateur et les développer
- g5: Implémenter les applications et les interfaces selon le concept en respectant les exigences de sécurité
Domaine de compétence
| Domaine de compétence | Ingénierie d’applications / ingénierie Web |
| Objet | Front-end d’une application Web interactive. Représentation correspondante pour la gestion (Create, Read, Update, Delete) des données. Par exemple: gestion d’une liste de tâches |
| Attestation | |
| Prérequis | 293 : Créer et publier un site Web |
| 322 : Concevoir et implémenter des interfaces utilisateur | |
| 319 : Concevoir et implémenter des applications | |
| 320 : Programmer orienté objet | |
| Nombre de leçons | env. 40 |
| Reconnaissance | Certificat fédéral de capacité |
Connaissances opérationnelles nécessaires
| 1 | 1.1 | Connaître les composants à installer pour le développement (p. ex. les biblio-thèques de logiciels nécessaires à cet effet). |
| 1.2 | Connaître des procédures d’accès aux instructions/guides d’installation correspon-dants. | |
| 2 | 2.1 | Connaître les principes fondamentaux de mises en œuvre actuelles du front-end d’une application Web interactive (p. ex. Single Page Application avec Javascript ou Typescript). |
| 2.2 | Connaître des possibilités pour conserver des données dans le front-end d’une application Web interactive et les synchroniser avec un back-end. | |
| 2.3 | Connaître au moins une possibilité pour communiquer avec un back-end distant et échanger des données selon CRUD. | |
| 3 | 3.1 | Connaître des techniques qui, dans le front-end d’une application Web interactive, permettent de rendre accessibles les parties spécifiques d’une application Web (p. ex. vue détaillée d’un jeu de données sélectionné dans une liste) via un lien per-manent (p. ex. routage côté Client [Client Side Routing]). |
| 4 | 4.1 | Connaître des possibilités côté Client pour valider des données d’entrée. |
| 4.2 | Connaître les principales mesures de sécurité applicables à la manipulation des données d’entrée (p. ex. désinfection/assainissement/validation des données, CORS, HTTPS, etc.). | |
| 4.3 | Connaître des techniques de test permettant de vérifier si les exigences sont rem-plies (p. ex. tests automatisés ou manuels, logging, débogage). | |
| 5 | 5.1 | Connaître des techniques ou méthodes de configuration des outils/moyens correspondants afin que ceux-ci signalent en continu la violation des règles de code. |
| 5.2 | Connaître au moins une procédure pour corriger les règles de code non respec-tées. | |
| 6 | 6.1 | Connaître la manipulation fondamentale et le workflow d’un système de gestion de logiciels. |
| 7 | 7.1 | Connaître au moins une norme d’authentification actuelle (p. ex. JWT) et son im-plémentation dans le front-end (p. ex. pour faire la distinction entre accès en lec-ture et accès en traitement). |