Académique Documents
Professionnel Documents
Culture Documents
Développement web
Email : Baccar.naahla@gmail.com
2021-2021
SOMMAIRE DU COURS
Développement web
4
INTRODUCTION AUX
Développement web
Quelle est la fonction d’un développeur Web ?
Un développeur ou programmeur Web est une personne qui
prend un projet Web, qui a été pensée et réfléchie par un client
ou une équipe de conception, et la transforme en site Web. Ils le
font en écrivant des lignes de code compliqué. Pour les écrire, ils
utilisent différents langages avec une spécificité et une utilité
pour chacun d’entre eux.
Les développeurs Web ont un travail assez difficile, car ils
doivent prendre une langue que nous comprenons, comme
l’anglais, et la traduire dans une langue qu’un ordinateur
comprend, comme Python ou HTML.
Comme vous pouvez l’imaginer, cela va prendre beaucoup de
temps et d’efforts pour apprendre différents langages de
programmation ainsi que leurs utilisations.
5
INTRODUCTION AUX
Développement web
6
INTRODUCTION AUX
Développement web
7
INTRODUCTION AUX
ARCHITECTURES N-TIER
L e s d i ff ér en t es c o u c h es d ’ u n e ar c h i t e c t u r e 4 - t i er :
4
INTRODUCTION AUX
ARCHITECTURES N-TIER
L e s d i ff ér en t es c o u c h es d ’ u n e ar c h i t e c t u r e 4 - t i er :
La couche de présentation contient les différents
types de clients, léger (ASP, JSP) ou lourd (Applet)
La couche applicative contient les traitements
représentant les règles métier (créer un compte de
facturation, calculer un amortissement ... )
La couche d'objets métier est représentée par les
objets du domaine, c'est à dire l'ensemble des entités
persistantes de l'application (Facture, Client ... )
La couche d'accès aux données contient les usines
d'objets métier, c'est à dire les classes chargées de créer
des objets métier de manière totalement transparente,
indépendamment de leur mode de stockage (SGBDR,
Objet, Fichiers, ...)
5
INTRODUCTION AUX
ARCHITECTURES N-TIER
La valeur ajoutée des architectures n-tier :
Cette séparation par couches de responsabilités
sert à découpler au maximum une couche de l'autre
afin d'éviter l'impact d'évolutions futures de
l'application.
Par exemple : si l’on est amené à devoir changer de
base de données relationnelle, seule la couche
d'accès aux données sera impactée, la couche de
service et la couche de présentation ne seront pas
concernées car elles auront été découplées des
autres.
6
INTRODUCTION AUX
ARCHITECTURES N-TIER
• Les différentes technologies côté client :
– C# / .Net (Microsoft)
Cette technologie ressemble en de nombreux points à la
technologie Java / J2EE. Elle présente cependant encore de
nombreuses faiblesses en terme de portabilité serveur,
multi-plateformes, scalabilité ...
9
COURS-DEV-WEB
11
COURS-DEV-WEB
12
COURS-DEV-WEB
13
COURS-DEV-WEB
L e s p a g e s d it e s s t a t i q u e s p o r t e n t e n g é n é r a l e
l ’ e x t e n s i o n . h t ml o u . h t m .
R m q : l e s si t e s I n t e r n e t f a i t i n t é g r a l e m e n t d e p a g e s w e b
statiques sont de nos jours très rares dû à l’évolution et des besoins
d e s u t i li s a t e u r s e t d u W e b .
15
COURS-DEV-WEB
16
COURS-DEV-WEB
U n e p ag e W e b d y n a m i q u e, es t u n e p a g e W eb q u i n ’ ex i s t e p as en
t an t q u e t el l e s u r l a m a c h i n e (l e s er v eu r We b ) m ai s q u i es t cré ée
s eu l e m e n t l o rs d e s a d e m a n d e p ar l a m ac h i n e, l ’o rd i n at e u r q u i v eu t
l ’affi ch ée à t rav ers s o n n av i g at eu r w eb .
O n d i t a l o r s q u e l e s e r v e u r c r é é d y n a mi q u e m e n t l a p a g e I n t e r n e t à
l a d e m a n d e ( il m e t t o u t e n œ u v r e p o u r c r é e r l a p a g e W e b ) .
P o u r c ré er l a p a g e We b d y n a m i q u e , b i en s o u v e n t l e s er v e u r
W e b ( l ’ o r d i n a t e u r ) u t i li s e t o u t e u n e m é c a n i q u e d e c o n s t r u c ti o n
p o u r p o u v o i r cr ée r l a p ag e. E x e m p l es (s i l e l an g ag e P H P e s t ch o i s i )
P o u r c o n s t r u i r e l a p a g e W e b o n p e u t r e c o u r i r à l ’ u ti l i s a ti o n s d e
17
COURS-DEV-WEB
p l u s i e u r s s c r i p t s P H P ( s i o n c o n s t r u it n o t r e s i t e I n t e r n e t s e l o n
l e mo d è l e M . V . C . ( M o d è l e V u e C o n t r ô l e u r ) , m a i s a u s s i r e c o u r i r à
l ’ u ti l i s a t i o n d ’ u n e b a s e d e d o n n é e s d a n s l a q u e l l e e s t s t o c k é e l e s
t ex t e , …
R m q : B i e n s o u v e n t l a m é c a n i q u e d e c o n s t r u c ti o n d e s p a g e s
W e b p o u r l a c r é a t i o n d e s it e I n t e r n e t e s t u n C M S . L e s p l u s c o n n u s
é t a n t W o r d Pr e s s , J o o m l a , D r u p a l , Pr e s t a S h o p , …
C o n t r ai re m en t à u n e p a g e We b s t at i q u e, l a p ag e We b c ré é e
d y n a m i q u e m e n t n e c o n t i e n d r a d o n c p a s t o u t e s l e s c a r a c t é r i st i q u e s
t ech n i q u es (l an g ag es d e p ro g ra m m at i o n s , … ) q u i o n t s er v i à s a
création. La page Web créée ne contiendra donc que les
c a r a c t é r i s ti q u e s ( l a n g a g e s d e p r o g r a m m a t i o n + t e x t e ) q u e
l e n a v i g at e u r We b s er a cap ab l e d ’i n t er p r ét er ( co m p r en d r e ) p o u r
q u e c el l e- ci p u i s s e êt r e affi ch é e p ar ce l u i -ci . O n d i t au s s i q u e
ces p ag es W e b s o n t s écu ri s ées ca r l es d o n n ée s , i n fo r m a t i o n s
q u ’ e l l e s c o n ti e n n e n t n e s o n t q u e c e l l e s q u e l ’ o n v e u t t r a n s m e t t r e
l o rs d e l eu r affi ch ag e a u t rav e rs d u n av i g at eu r.
18
COURS-DEV-WEB
L e s p a g e s d it e s d y n a m i q u e s p o r t e n t b e n s o u v e n t l ’ e x t e n s i o n
. P H P, . A S P X o u d ’ au t r es en co r e.
19
COURS-DEV-WEB
20
Les pages Web statiques resteront les mêmes jusqu’à ce que quelqu’un le Les pages Web dynamiques sont comportementales et ont la capacité de
Présentation modifie manuellement, à moins que quelqu’un le modifie. produire un contenu distinct pour différents visiteurs.
Base de données N’utilise pas de bases de données Une base de données est utilisée.
Temps de chargement de la page Demande moins de temps Demande plus de temps
Changement d’information Se produit rarement Fréquemment
Complexité Simple à concevoir. Compliqué à construire.
N o u s p r é s e n t o n s i c i u n e c o m p a r a i s o n i mp a r t i a l e e n t r e l e s s it e s
Web statiques et dynamiques, tout en identifiant certains points
c l é s s u r l e s q u e l s i l e s t p r é f é r a b l e d e c o n c e v o i r d e s s it e s W e b .
21
COURS-DEV-WEB
22
COURS-DEV-WEB
1. C h r om e D e vTo ol s
Faites place aux outils de développement ! Ils sont accessibles dans
G o o g l e C h r o m e , M o z i l l a Fi r e f o x o u t o u t a u t r e n a v i g a t e u r d e v o t r e
ch o i x et v o u s p er m et t e n t d e j et er u n œ i l s u r l e fo n ct i o n n e m e n t
interne d’un site Web et de ses applications. Ce sont des ressources
t r è s u ti l e s , c a r e l l e s v o u s p e r m e t t e n t :
D’ e x a m i n e r et d e m o d i f i er l es él é m en t s H T M L ;
D ’ a j o u t e r e t d e t e s t e r d e s n o r m e s d e st y l e C S S ;
D e c o n s u l t e r l e s f o n c t i o n s J a v a Sc r i p t d e l a p a g e ;
D ’i d en t i fi er q u el s s o n t l es él é m e n t s q u i s e ch ar g en t v i t e o u
l en t e m e n t .
23
COURS-DEV-WEB
Il existe pas mal de bons éditeurs (Sublime Text est l’un de nos favoris),
mais Visual Studio Code est l’éditeur NUMÉRO UN.
Selon les développeurs web expérimentés, ses points forts sont
l’intégration de GitHub et la saisie semi-automatique IntelliSense. Visual
Studio Code propose également une interface ergonomique, prend en
charge plusieurs langages et met en évidence votre syntaxe
24
COURS-DEV-WEB
FileOptimizer fait la même chose, mais au lieu de ranger les fichiers dans
un dossier compressé, il compresse le fichier d’origine.
25
COURS-DEV-WEB
4. Bootstrap
Vous n’avez pas envie de passer trop de temps sur le CSS de vos sites
Web ? Alors Bootstrap est l’outil qu’il vous faut. C’est un kit CSS créé
par des développeurs de Twitter, qui est vite devenu l’infrastructure CSS
de référence. Deux de ses fonctionnalités les plus appréciées sont :
Une façon facile et rapide de concevoir des sites Web attrayants et
dynamiques.
Une énorme communauté. Comme c’est un outil largement utilisé, il
existe de nombreux modèles de sites et beaucoup de tutoriels utiles. La
page GitHub officielle de Bootstrap est très active pour que l’outil soit
amélioré continuellement !
Il y a de plus en plus de nouvelles infrastructures
comme Materialize et Mui. Si vous souhaitez étendre encore plus
l’éventail de vos outils, ceux-ci pourraient constituer un bon départ.
26
COURS-DEV-WEB
5. GitHub
Avez-vous l’habitude d’écrire du code et de collaborer avec d’autres
développeurs ? Aimeriez-vous pouvoir suivre les modifications de votre
code en toute sécurité/sans perdre toutes vos données en cas de panne de
votre ordinateur ou serveur principal ?
De nos jours, la gestion des versions est essentielle. Git, un outil créé par
Linus Torvald, est parfait pour cela.
27
COURS-DEV-WEB
Q u 'e s t - c e q u e l 'er g o n o m i e w eb ? 9 r èg l es er g o n o m i q u e s d e s i t e
w eb
L'ergonomie web est un aspect primordial à comprendre et à optimiser
pour avoir des résultats avec son site web. Mais alors comment
l'optimiser ? Quelles sont les règles ergonomiques à respecter ?
28
COURS-DEV-WEB
Optimisation technique
Avant d’aller plus loin dans des méthodes complexes, il est d’abord primordial d’optimiser son site au niveau technique.
Si les bases ne sont pas respectées, rien ne sert d’aller c hercher des techniques révolutionnaires.
N'essayez pas de réinventer la roue, respectez avant tout les règles universelles pour une ergonomie web optimale.
32
COURS-DEV-WEB
Il y a trois règles de base qui mettent tout le monde d’accord. Ici, pas besoin de faire des recherches utilisateurs, de
savoir si oui ou non ces techniques vont fonctionner.
Les trois points qui peuvent améliorer directement l'ergonomie de votre site web sont :
La vitesse de chargement
L’accessibilité
Le responsive
La vitesse de chargement joue beaucoup sur l'utilisabilité d'une interface. Si un site web met du temps à charger, il a
des chances de décourager facilement les visiteurs.
L’accessibilité permet elle aussi d’améliorer facilement un site web. Pour une bonne ergonomie, un site se doit d' être
accessible sur un maximum de navigateurs. Il est important d’éviter le plus possible des bugs ou des casses sur certains
navigateurs, notamment les plus vieux. Il est également nécessaire de concevoir des pages adaptées pour les
personnes handicapées.
Le responsive est le fait de concevoir un design de site adapté pour les téléphones mobiles et tablettes. De plus en plus
de personnes naviguent sur internet à l’aide de smartphone. Si votre site web n'est pas adapté pour les plus petits
écrans, vous risquez de passer à côté de clients et d’une utilisabilité optimisée.
Évaluation heuristique
L’évaluation heuristique est une méthode d'analyse d’interface permettant de détecter les possibles points de
frictions, les problèmes d’utilisabilité et d’ergonomie.
33
COURS-DEV-WEB
34
COURS-DEV-WEB
Cette évaluation est basée sur l’expérience des spécialistes qui analysent l’interface. Les résultats ne sont pas garantis
d’être parfaitement justes, mais cette méthode a le mérite d'être rapide à mettre en place. De plus, les problèmes
détectés sont dans la plupart du temps des règles ergonomiques évidentes ne demandant aucune recherche.
Vous pouvez demander gratuitement une évaluation heuristique de +75 critères UX pour votre site web à un expert UX
de l'équipe et obtenir un plan d'action pour son op timisation. Demander mon Audit UX gratuit.
Bien sûr, cette évaluation est mieux si elle est faite en groupe avec des utilisateurs, des développeurs, des designers,
etc. Mais il doit y avoir au moins quelques spécialistes afin d’avoir un processus cohérent.
L'objectif ici est de récolter des avis et des opinions basées sur plusieurs critères :
La clarté : le contenu et l’offre sur l’ensemble du site sont-ils clairs ? Comment est-il possible de les rendre encore plus clairs et
compréhensibles ?
La valeur : le site web apporte-t-il de la valeur à l’utilisateur ? Comment pouvons-nous améliorer ce point ?
Pertinence : les pages du site répondent-elles aux attentes des utilisateurs. Comment les pages peuvent correspondre encore
plus ce qu’ils cherchent ?
Les frictions : quels sont les aspects qui peuvent créer du doute, des frustrations, des difficultés ? Comment réduire l’impact de
ces points de friction ?
En vous appuyant sur cela, vous serez en mesure de savoir quels sont les points pouvant améliorer l’utilisabilité et
l’ergonomie de votre site web.
Attention seulement, les observations que vous pouvez faire ne sont pas garanties d’êtr e de bonnes solutions pour
améliorer votre site web. Cette évaluation heuristique vous permet de trouver des indices sur ce qu’il est possible
35
COURS-DEV-WEB
d'améliorer. Le mieux est de tester des améliorations en lien avec vos observations afin de voir si oui ou non el les sont
cohérentes.
Test utilisateur
36
COURS-DEV-WEB
37
COURS-DEV-WEB
Au-delà de simples optimisation techniques, il existe des améliorations possibles qui sont plus compliquées à mettre en
place.
Les marchés, les personas, les différents secteurs d'activité, les cibles, les tendance s, etc sont des facteurs qui rendent
l’optimisation de l’utilisabilité plus complexe.
A un moment donné, les règles basiques d’ergonomie ne suffisent plus car chaque entreprise est différente. Il faut donc
des solutions sur mesures pour chaque site web en fonction de leur cible, des comportements de leurs utilisateurs, de
leurs données démographiques, etc.
Pour améliorer un maximum l’ergonomie et l’utilisabilité d’un site web, il faut donc connaître parfaitement ses
utilisateurs.
Le test utilisateur (ou test d’utilisabilité) consiste faire tester une interface par des utilisateurs de la cible en questio n. Le
but est de donner à l’utilisateur testé, des tâches à effectuer afin d’observer l'efficacité de l'inter face en matière
d’utilisabilité.
38
COURS-DEV-WEB
Les tests utilisateurs sont nécessaires pour optimiser au maximum l'expérience utilisateur, l'ergonomie et l'utilisabilité
d’un site web ou d’une application.
Même un expert en UX ne peut pas savoir à l’avance ce qui va fonctionner le mieux. Grâce à son expérience, il peut
détecter quelques problèmes grâce à l’évaluation heuristique. Mais il est impossible de concevoir un design UX parfait
sans recherche sur les utilisateurs.
1 - La clarté
39
COURS-DEV-WEB
40
COURS-DEV-WEB
Rien de pire pour un utilisateur d’être sur un site avec du contenu qu’il ne comprend pas. Surtout dans le cas d’un e -
commerce, les gens n’achètent pas ce qu'ils ne comprennent pas. L’humain a peur de l’inconnu, c’est comme ça.
C’est pour cela que si vous voulez que l'ergonomie de votre site soit bonne, il faut que celui -ci soit le plus clair possible.
Que ce soit au niveau des descriptions des produits, des services, de sa proposition de valeur, de sa position sur le
marché, de son prix, etc.
La simplicité fonctionne mieux que la complexité. Si votre texte demande des efforts pour être lu et assimilé, c'est que
vous êtes dans le faux.
Travaillez la clarté de votre site de sorte à ce que son contenu soit agréable à consommer et que l’on comprenne
facilement de quoi il traite.
2 - La hiérarchie visuelle
Le design de votre site est important pour plusieurs choses. C'est un moyen qui va vous permettre de montrer à vos
utilisateurs ce qui est important et ce qui l’est moins. Cela donne finalement au visiteu r un ordre dans votre contenu.
Chaque page de votre site doit montrer rapidement les informations recherchées par vos utilisateurs. Et cela dans le bon
ordre.
41
COURS-DEV-WEB
L’utilisateur doit faire le moins d’efforts possible pour accéder à ce qu'il cherche. C'est l'ob jectif premier de
la hiérarchisation visuelle.
3 - L’accessibilité
42
COURS-DEV-WEB
43
COURS-DEV-WEB
Le principe de l'accessibilité sur les sites web représente le fait que chaque individu, peu importe sa situation, ait accès
à votre site comme tout le monde. Peu importe sur quel navigateur il se trouve, s’il est sur mobile, s’il a des problèmes
de vue ou s'il est handicapé.
L'objectif est de rendre le site le plus accessible possible. Cela passe par :
un design adapté à tous les formats d’écran
un code adapté pour un maximum de navigateur
des images avec des descriptions
des vidéos traduites
Alors bien sûr, certains points sont plus importants que d'autres à optimiser car il concerne peu de personnes. Mais pour
une ergonomie parfaite, l'ergonomie doit être travaillée dans tous ces aspects de l'accessibilité.
Il est difficile, voire impossible de supprimer tous les points de friction qui peuvent exister sur une interface. Mais vous
pouvez les minimiser.
Les frictions qui peuvent exister sur un site sont dû aux doutes, aux craintes et aux hésitations des utilisateurs.
44
COURS-DEV-WEB
Dites-vous que quand un utilisateur se rend sur un site, il se pose de multiples questions :
Ce site vaut-il vraiment la peine ?
Puis-je faire confiance ce site ?
Est-ce une arnaque ?
Est-ce le bon choix pour moi ?
Et cela concerne surtout les e-commerces, où les parcours d'achat sont parfois longs et gênants.
Tous ces points de friction peuvent être réglés en améliorant l'expérience utilisateur de l'ensemble du site web.
45
COURS-DEV-WEB
Si votre site web est difficile à utiliser et compliqué à comprend re, l'ergonomie n’est pas optimisée. Même si vous
souhaitez que votre site soit unique, personnalisé et qu’il sorte du lot, vous ne pouvez pas ignorer complètement les
conventions du web.
Sachez qu'il existe un tas de standard concernant le web design avec lesquels les utilisateurs sont déjà familiers. Alors
pourquoi ne pas les respecter.
En respectant les standards existants, les utilisateurs comprendront facilement votre site web. L'objectif ici est de rendre
votre site web intuitif. Il faut que vos visiteurs soit le plus rapidement possible à l’aise avec votre interface et vos
fonctionnalités.
Ne vous sentez pas bloqué par ces conventions. Vous pouvez tout de même modifier ces éléments à votre sa uce.
L’important ici est juste de rester dans l’esprit afin que les utilisateurs comprennent rapidement votre interface.
6 - Design de qualité
46
COURS-DEV-WEB
Les utilisateurs ont tendance à juger rapidement si un site web est ‘’moche’’ ou ‘’beau’’. En fait, si vous ave z créé votre
site web vous-même et que vous n’êtes pas designer, il y a de fortes chances que votre site ne soit pas considéré
comme ‘’joli’’.
Un web design réussi n’est pas forcément un design avec beaucoup de couleurs, beaucoup de contrastes, d’animatio ns,
des visuelles, d’animations, etc. On a observé que les sites qui fonctionnaient le mieux étaient ceux avec un design
simple et minimaliste.
Cela peut être contre-intuitif car on peut se dire qu’un site trop simple est un site sans personnalité, sans s aveur et sans
image de marque forte. Mais un site qui montre sans cesse des éléments non nécessaires n’est pas un site réussi.
Les éléments de design doivent avoir une signification et doivent être justifiés.
7 - Le parcours client
Le site web doit représenter un parcours facilement compréhensible pour les utilisateurs. Il doit savoir où il se trouve, sur
quelle page, dans quelle section, dans quelle catégorie…
47
COURS-DEV-WEB
48
COURS-DEV-WEB
Par exemple pour un e-commerce, lors du parcours d’achat, il doit savoir précisément où il s e trouve dans ce parcours.
Est-il sur la page d’inscription ? Combien d’étapes lui manque -t-il avant d’arriver au paiement ?
Le but ici est d’avoir un site web avec le maximum d’informations permettant à l'utilisateur de l'état de sa situation sur le
site internet.
Une mention concernant les étapes manquantes avant de passer au paiement sur un site e-commerce par exemple.
8 - La confiance
L’ensemble de votre site web doit donner confiance à vos utilisateurs. Certains internautes ont tendance à facilement
sentir l’arnaque, notamment sur des e-commerces.
Pour avoir une ergonomie optimisée, vous devez donc faire en sorte que vos visiteurs se sentent en confiance face à
votre interface.
49
COURS-DEV-WEB
L'objectif ici est d’être le plus authentique possible. Les gens n'aiment pas avoir des doutes sur une entreprise ou sur
une personne. Si vous vous cachez derrière votre logo, les utilisateurs seront plus méfiants concernant vot re site web et
votre entreprise.
9 - La vitesse de chargement
52% des acheteurs en ligne affirment que le chargement rapide des pages influence leur fidélité à un site.
Une bonne ergonomie passe par un site web qui se charge rapidement. Au -delà de 5 secondes, une page est considérée
comme longue à charger.
Pour optimiser la vitesse de chargement de l’ensemble de votre site, plusieurs points sont à optimiser :
La taille des images
La taille des pages
Le code HTML/CSS/JS
L'hébergement
50
COURS-DEV-WEB
Les animations
L'objectif est de simplifier les aspects techniques des pages pour avoir un rendu visuel plus rapide. Que ce soit sur
mobile ou sur pc.
Résumé
L'ergonomie web (ou utilisabilité) est un terme qui désigne l'o ptimisation de l'interface web concernant les aspects qui
viennent améliorer le confort, la facilité d'utilisation, l'efficacité, la vitesse, l'utilité, la sécurité, la lisibilité, et c.
L’ergonomie d’un site web permet de créer une expérience utilisateur de qualité, une meilleure fidélité client et un taux
de conversion optimisée.
51
COURS-DEV-WEB
Pour optimiser l’ergonomie d’un site web, plusieurs techniques peuvent être u tilisées. Des améliorations techniques
doivent d'abord être faites pour respecter les normes ergonomiques de base, comme l'accessibilité, le responsive, la
vitesse de chargement, la navigation, le design, etc. Ensuite, pour aller plus loin, des évaluations heuristiques ou des
tests utilisateurs peuvent être mis en place pour obtenir des retours plus précis sur des potentiels problèmes concernant
l'utilisabilité.
52