Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
DÉVELOPPEUR WEB
FULL STACK
CONTENU DE LA FORMATION
➔ Module 5 : Développement web fullstack avec Laravel & Le versionning avec Git
LES PRINCIPES DE LA
PROGRAMMATION WEB
“ La programmation, appelée aussi codage dans le
domaine informatique, désigne l'ensemble des
activités qui permettent l'écriture des programmes
informatiques. C'est une étape importante du
développement de logiciels. L'écriture d'un programme
se fait dans un langage de programmation. ”
Métiers : différences entre l’intégrateur et le
développeur web
➔ Missions
➔ Outils
https://oclock.io/blog/4427/quelle-est-la-difference-entre-un-developpeur-web-et-un-integrateur-web
Comment fonctionne un site Internet ?
L'hébergement web
Le World Wide Web Consortium (W3C) développe des standards internationaux pour le web : HTML, CSS et
bien d’autres. Les standards web du W3C sont appelés Recommandations du W3C.
Les Éléments essentiels de l’accessibilité du Web (en anglais) montrent comment l’accessibilité du web
dépend de la combinaison harmonieuse des nombreuses composantes du développement web et de
l’interaction utilisateur, et comment les règles WAI (WCAG, ATAG, UAAG) s’appliquent.
https://www.w3.org/WAI/standards-guidelines/fr
Base de données : SQL vs NoSQL
SQL, ou Structured Query Language (langage de requête structurée en
Le NoSQL, Not Only SQL (pas seulement SQL), ou tout simplement No SQL.
français), permet de manipuler des données d’une base de données Son but est, comme son nom l’indique, de se passer du langage SQL, et de
relationnelle. manipuler des données sous un autre format que via des bases
relationnelles.
Pour être plus précis, une base de données relationnelle contient des
données sous formes de tables ayant des relations (jointures) entre elles, En clair, ici on n’utilise plus de tables liées entre elles, ni de colonnes. On
parlera plutôt de stockage sous forme clé-valeur (comme on en a
chaque table étant composée de colonnes, symbolisant une donnée dans
l’habitude dans le localStorage JavaScript), ou de documents. Le but, c’est
une table. de pouvoir stocker et récupérer toutes les données dont on a besoin au
même endroit, sans avoir à passer par des relations entre les tables.
● Avantages
- Stockage optimisé (car pas de duplication des données ● Avantages
– en théorie) ; - Simplicité d’apprentissage ; ce n’est pas un langage
complet à apprendre ;
- Stabilité de la techno et du langage, de part
- Modèle de données flexible (car non relationnel) ;
l’ancienneté. - Stockage sous format JSON, qui peut directement être
● Inconvénients interprété dans le code du développeur.
- Modèle rigide, difficile à modifier une fois la base de ● Inconvénients
données entièrement définie ; - Parfois trop permissif, comparé à SQL (notamment au
niveau du typage de SQL qui ajoute une couche de
- Demande une certaine maîtrise et expérience du validation de format).
langage en lui-même.
Qu’est-ce qu’une API ?
Parce que les API simplifient la façon dont les développeurs intègrent de
nouveaux composants d'applications dans une architecture existante,
elles facilitent la collaboration entre les équipes informatiques et métier.
Responsive et Application Mobile
Les acteurs d’un projet informatique Les priorités d’un projet informatique
Dans la réalisation de tout projet informatique, différents acteurs Pour piloter son projet informatique ou de système d’information, la·le
interviennent : chef·fe de projet s’appuie sur des données qualitatives et
quantitatives, afin de respecter les attentes sur différents plans :
- la maîtrise d’ouvrage (MOA) : il s’agit du « client » du projet,
soit celui qui en attend des résultats concrets. Il revient à cet
acteur de définir les objectifs, le budget et les délais ; - les coûts
- la maîtrise d’œuvre (MOE) : il s’agit du « fournisseur » du - les délais
projet, soit celui qui réalise l’ouvrage même. Il revient à cet
acteur de concevoir et de proposer des solutions, d’effectuer - la qualité
des tests avant la livraison et de respecter les coûts et les
délais fixés ;
- le chef de projet : il s’agit du « pilote » du projet, qui en
assume la responsabilité ; son rôle est détaillé ci-dessous. https://www.appvizer.fr/
La gestion de projet
La technologie est souvent coûteuse : près de la moitié des projets informatiques dépassent le budget alloué.
Voilà pourquoi vous devrez étudier, gérer et prévoir les coûts futurs associés à vos projets informatiques.
De plus, les projets informatiques comportent généralement davantage de dépendances que les autres projets au sein d’une entreprise. Ils
sont plus complexes et plus difficiles à suivre, et le moindre contretemps risque de provoquer l’interruption brutale de l’ensemble du projet.
La gestion de projet
Comment planifier et mettre en œuvre un projet informatique ? Chaque projet informatique se divise en cinq phases, le tout formant ce
que l’on appelle le cycle de vie de la gestion d’un projet informatique :
L’élaboration d’un plan de gestion de projet informatique solide
diffère peu des autres plans de projet. Tous suivent des étapes de - Lancement : une fois les objectifs informatiques fixés, le budget
planification similaires : et la portée sont définis, et un chef de projet est désigné
- Planification : les jalons ou les responsabilités sont déterminés
- Identifier les parties prenantes (y compris les clients et les par le chef de projet
utilisateurs finaux) et établir des liens avec elles
- Exécution : les équipes réalisent les tâches selon la méthode
- Déterminer vos objectifs
choisie
- Préciser les livrables et les étapes nécessaires pour
atteindre vos objectifs informatiques - Contrôle et suivi : le calendrier, les risques et le budget sont
- Établir un calendrier et identifier les dépendances évalués et gérés lors de réunions et via une communication
- Mener une évaluation des risques et anticiper les permanente entre les équipes.
problèmes possibles. - Clôture : le livrable est accepté, les équipes tirent un bilan des
- Présenter votre plan de projet aux parties prenantes réussites et difficultés du projet
Les méthodes de gestion de projet
Méthode agile
Modèle en cascade gestion de projet les plus populaires. D’abord utilisée dans le Méthode hybride
développement de logiciels, l’agilité s’est imposée dans tous les
secteurs car l’accent est mis sur l’amélioration continue. La méthode hybride combine des éléments
La méthode de gestion de projet
Contrairement au modèle en cascade, où les projets peuvent
informatique la plus couramment utilisée du modèle en cascade et de la méthode
être planifiés annuellement, l’agilité se fait en sprints courts (ou
est le modèle en cascade. Vous effectuez le agile. Les chefs de projets informatiques
par lots).
travail une étape après l’autre. Il s’agit utilisent souvent cette approche comme
d’une approche linéaire, c’est pourquoi elle tremplin pour les entreprises qui cherchent
fonctionne bien avec les diagrammes de L’un des principaux avantages de cette approche est son à devenir agiles, mais elle peut aussi être
Gantt, dans lesquels les tâches sont adaptabilité. Le travail itératif équivaut à des boucles de
utilisée seule. Cette méthode allie équipes
rétroaction plus courtes, ce qui signifie qu’il est plus facile
assignées selon un calendrier. Bien qu’idéal agiles et projets par étapes. Les entreprises
d’adapter les produits à la technologie dominante et/ou aux
pour les projets présentant des peuvent utiliser la planification à long
préférences des clients. Les projets agiles n’étant généralement
interdépendances complexes, le modèle en terme pour les objectifs stratégiques, tandis
pas planifiés sur de longues périodes, de nombreux chefs de
cascade n’est pas aussi adaptable et réactif que les projets informatiques sont réalisés
projets informatiques gèrent les tâches via des tableaux Kanban
au changement que l’approche agile. en sprints en appliquant la méthode agile.
plutôt qu’avec un diagramme de Gantt.
Comparatif Traditionnel vs Agile
Les méthodes traditionnelles
Cascade
Dans cette méthode, il n'y a donc pas vraiment de retour en arrière possible, car on
valide une phase avant de passer à la phase suivante. Cette méthode fonctionnera donc bien pour les petits/moyens projets, avec un
client qui a une vision assez claire de son projet
La méthode en Cascade fonctionne bien pour des petits projets, où le client est
certain du produit final qu'il souhaite.
Les méthodes agiles
Kanban
Scrum La méthode Kanban est une méthode souvent utilisée et assez réputée car elle permet d'avoir
une vision claire de l'état d'avancement d'un projet.
Il consiste en développer un produit de manière itérative, en réalisant des
cycles pouvant aller d'une à quatre semaines. En moyenne, un cycle (ou
sprint) dure deux semaines. Elle est très visuelle car l'objectif est de créer des colonnes pour y mettre des post-it, qui
correspondent aux tâches d'un projet. On peut définir quelques colonnes de base afin de
Au début du cycle, on va définir une liste de tâches au travers d'une rester simple, comme on peut très bien définir beaucoup de colonne afin d'avoir beaucoup de
réunion de planification de sprint. Ensuite, l'équipe développe les tâches statuts différents. L'objectif, c'est de faire avancer son post-it sur la colonne suivante, en
sur le périmètre défini, pour une date précise de livraison. A la fin du évitant les retours en arrière.
sprint, les acteurs se réunissent pour faire une rétrospective, afin de
discuter des difficultés rencontrées, ou de la charge des tâches dans le - ToDo : liste des tâches à faire
sprint, afin d'ajuster pour le cycle suivant. - Doing : liste des tâches en cours
- Done : liste des tâches terminées
L'avantage premier dans cette méthode, c'est que les livraisons se font de
manière continue, sur des petites périodes. Si le client change d'avis,
l'équipe en discute au prochain sprint et les tâches sont adaptées pour le Après ça, on peut imaginer énormément de colonnes, qui correspondent à d'autres statuts : à
nouveau besoin. L'autre avantage, c'est la communication entre tous les spécifier, à tester, à livrer en recette, à livrer en production, en attente, à jeter (celle la on va
acteurs. éviter..).
Kanban est une méthode qui est assez personnalisable selon le contexte. Elle peut être aussi
très utile en complément d'une autre méthode.
La gestion de version
Traduit par " cadre de travail ", le terme anglais framework désigne un Se servir d'un framework procure une multitude d'avantages :
ensemble de librairies et d'outils ayant pour objectif principal d'améliorer
- Un gain de temps remarquable grâce au fait que vous partez
la productivité en programmation informatique. L'idée est de permettre
d'une base structurelle préconçue vous permettant de vous
aux programmeurs informatiques d'accéder à des codes préétablis et concentrer sur les composants spécifiques de votre code ;
réutilisables pour le développement d'un site Internet, d'un jeu, d'une - Une excellente organisation du fait que vous pouvez classifier et
extension ou d'une application mobile. séparer facilement vos fichiers. Cette méthode vous permet
d'obtenir une interface éclairée et propre ;
- Un système de sécurité performant dès le moment où vous avez
Il existe différents types de Framework dans le développement web.
configuré parfaitement votre framework;
Certains d'entre eux sont créés pour la réalisation de projets de grande - Un travail en équipe facilité, car le framework est un bon moyen
envergure tandis que d'autres sont essentiels pour finir rapidement les de séparer les tâches. Il permet ainsi à plusieurs personnes de
petites tâches. travailler simultanément sur un même projet, mais sur des
points bien différents ;
- Une communauté omniprésente afin de mettre à jour les
Par ailleurs, les frameworks ne répondent pas forcément aux mêmes
frameworks et vous venir en aide en cas de soucis ;
critères et besoins. Si nécessaire, il est possible de combiner plusieurs - ...
frameworks.
Emmanuel GHOMSI GHOMSI - emmanuel.ghomsi@outlook.com