+ All Categories
Home > Documents > Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne...

Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne...

Date post: 31-Oct-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
39
1 RAPPORT DE STAGE Du 20 décembre 2019 au 17 janvier 2020 (6 semaines) Avenir Bureautique 3 Rue Aristide Berges, 21800 Sennecey-lès-Dijon Maître de stage : M. Jocelyn Rabahi Yanis VUILLECARD Issu de la formation Webforce3 session de septembre 2019
Transcript
Page 1: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

1

RAPPORT DE STAGE Du 20 décembre 2019 au 17 janvier 2020

(6 semaines)

Avenir Bureautique 3 Rue Aristide Berges, 21800 Sennecey-lès-Dijon

Maître de stage : M. Jocelyn Rabahi

Yanis VUILLECARD

Issu de la formation Webforce3 – session de septembre

2019

Page 2: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

2

Table des matières

1. Introduction ................................................................................................................... 3

2. Présentation de l’entreprise d’accueil............................................................................. 4

3. Présentation du projet ................................................................................................... 4

A. Présentation et contexte ........................................................................................ 4

B. Objectifs ................................................................................................................. 5

C. Ressources apportées ............................................................................................. 5

4. Spécifications fonctionnelles .......................................................................................... 6

A. Fonctionnalités côté Utilisateur .............................................................................. 6

B. Fonctionnalités côté Administrateur ....................................................................... 8

5. Spécifications techniques ............................................................................................... 9

A. Choix technologiques.............................................................................................. 9

a) Front-Office ........................................................................................................ 9

b) Back-Office ....................................................................................................... 10

B. Domaine et hébergement ..................................................................................... 10

C. Accessibilité .......................................................................................................... 11

D. Maintenance et évolution ..................................................................................... 11

6. Réalisation ................................................................................................................... 12

A. Définition des objectifs du projet .......................................................................... 12

B. Découper le projet et définir la liste des tâches..................................................... 12

C. Développement des différentes pages et fonctionnalités ...................................... 13

a) L’interface d’administration .............................................................................. 13

b) La gestion des utilisateurs ................................................................................. 15

c) Mes commandes .............................................................................................. 17

d) Les offres .......................................................................................................... 18

e) Fichier .htaccess et robots.txt ........................................................................... 19

7. Améliorations éventuelles ............................................................................................ 20

8. Conclusion.................................................................................................................... 21

9. Annexes ....................................................................................................................... 22

Page 3: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

3

1. Introduction

Ayant toujours été attiré par le domaine du numérique, je me suis inscrit

en tant qu’étudiant à l’Université de Bourgogne. Mon but était d’obtenir une

licence STS (Sciences, Techniques et Santé) Spécialité Informatique. J’ai

néanmoins quitté la faculté après deux années car je n’appréciais ni le cursus

proposé, ni les méthodes de travail que je trouve trop théorique.

N’étant désormais plus étudiant, je me suis inscrit à la mission locale de

Fontaine d’Ouche pour rechercher une formation. Souhaitant poursuivre dans

l’informatique et plus particulièrement la programmation, on me proposa la

formation Webforce3. Il était judicieux de faire une formation dans le

développement web car je ne disposais que des bases de la programmation.

C’est dans ce but que je me suis inscrit à Webforce3, une formation qualifiante,

d’une durée de 4 mois, et qui forme au métier de développeur / intégrateur

web.

Afin de compléter cette formation, 6 semaines de stage en entreprise sont

prévues. La société Arius recherchait des stagiaires pour la réalisation d’un

catalogue vidéo pour leurs clients. Je me donc suis proposé car ce stage me

permettrait de mettre en pratique mes connaissances pour la réalisation d’un

véritable projet web.

C’est ainsi que dans ce dossier, je vais tout d’abord vous présenter

l'entreprise dans laquelle j’ai effectué mon stage, puis, je vais vous présenter le

projet en lui-même sur lequel j’ai été amené à travailler. Ensuite, je vous

exposerai les spécifications fonctionnelles et techniques. Puis, je vous

expliquerai tout le processus de réalisation du projet, et enfin je vous

présenterai mon bilan du stage.

Page 4: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

4

2. Présentation de l’entreprise

d’accueil

Arius est une marque française de dispositif d’affichage numérique

interactif proposant ses solutions aux entreprises pour leur communication.

L’entreprise propose de nombreux produits tels que : écran interactif HD, totem

d’affichage, kiosk d’accueil, table tactile et enfin le Glacis.

3. Présentation du projet

Le produit phare de la société Arius est le Glacis, un revêtement nano

technologique qui métamorphose n’importe quelle surface vitrée en un

écran haute résolution, permettant de diffuser des contenus numériques de

façon moderne et dynamique.

A. Présentation et contexte

Le Glacis est populaire grâce à ses technologies, néanmoins un

manque de contenu se fait sentir après l’installation de ce dernier.

En effet, bien qu'Arius propose un accès à du contenu multimédia

à afficher, celui-ci est standard et non-personnalisable pour les besoins de

chaque client.

Page 5: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

5

B. Objectifs

La société Arius m’a donné pour mission de réaliser un site internet sous

forme de catalogue de vidéo et d’application. Ce site aura pour objectifs :

− Être accessible uniquement par les clients Arius

− Intégrer une interface d’administration

− Posséder une charte graphique cohérente

− Permettre l’envoie de fichiers

− Gérer les exceptions (mot de passe oublié, type de fichiers, contraintes de

relation...)

C. Ressources apportées

Les seules ressources apportées par Arius pour ce projet, sont les

maquettes réalisées par le maître du stage (Voir Annexe 2 à 5), et

également les fichiers requis, tel que les logos Arius haute résolution et

certaines miniatures.

Je dispose également de l’aide de mon maître de stage, qui nous a

aidé notamment pour le front car il avait réalisé une partie du code. Il est

aussi toujours disponible pour répondre à nos questions et nous donner

des suggestions.

Page 6: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

6

4. Spécifications fonctionnelles

Les personnes utilisant ce service sont divisées en deux catégories : les

utilisateurs et les administrateurs. La hiérarchie des rôles fait que les

administrateurs sont aussi des utilisateurs.

A. Fonctionnalités côté Utilisateur

Connexion : L’utilisateur devra tout d’abord se connecter au site

avec ses identifiants personnels. Une fois connecté, il pourra consulter le

catalogue.

Commander : Un catalogue s’affiche avec une douzaine de vidéo

ou d’application sous forme de carte. L’utilisateur n’aura plus qu’à cliquer

sur un article qui lui convient, ouvrant ainsi la page de la dîtes vidéo avec

un formulaire de commande situé en-dessous. Cependant, il ne peut

commander une vidéo que s’il possède suffisamment de token.

Consulter : L’utilisateur peut consulter les commandes réalisées

depuis la page “Mes commandes”. Il y trouvera deux tableaux contenant

les commandes en cours et celles terminées avec toutes les infos relatives

relatifs et même accéder aux articles commandés.

Page 7: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

7

Compte : Si l’utilisateur souhaite modifier ses informations, il

pourra le faire via une page “Mon Compte”. Il y trouvera un formulaire lui

permettant de changer son nom d’utilisateur et son adresse email à

condition d’entrer son mot de passe actuel.

Mot de passe : L'utilisateur sera dans la possibilité de modifier son

mot de passe. Cette action est possible depuis la page “Mot de passe”. Il

devra entrer son mot de passe actuel et confirmer le nouveau mot de

passe.

Mot de passe oublié : Si l’utilisateur ne peut se connecter, il peut

demander à changer son mot de passe depuis la page de connexion. En

entrant son nom d’utilisateur ou son adresse email, celui-ci recevra un

email avec un lien unique vers la réinitialisation de son mot de passe.

Cette action est cependant contrôlée. En effet, l’utilisateur ne peut

effectuer cette action que toutes les heures, prévenant ainsi le spam.

Rang : L’utilisateur peut consulter la page “offre”, celle-ci possède

tous les rangs et leurs informations telle que le prix et le nombre de token.

Bien que l’utilisateur ne puisse modifier lui-même son rang, il peut notifier

l’administrateur de son souhait en cliquant sur l’un des rangs. Cela

enverra un email à l’administrateur contenant toutes les informations

qu’il a besoin.

Page 8: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

8

B. Fonctionnalités côté Administrateur

Hérédité : Grâce à la hiérarchie des rôles, l’administrateur peut faire

absolument toutes les actions des utilisateurs.

Interface administrateur : L'administrateur, de fait de son statut

particulier, peut accéder à une interface administrateur exclusif. Il y accède

depuis la route ‘’/admin’’, celle-ci est contrôlé et renvoie vers une page 403

pour un utilisateur non-administrateur.

C.R.U.D : la gestion des entités est assurée par l’administrateur, celui-

ci peut créer de nouvelles entités ou supprimer celle existante, accéder et

modifier leurs informations. L’administrateur n’a néanmoins pas le contrôle

sur certaines informations (mot de passe, compteur automatique…)

Commande : La gestion des commandes est primordiale pour

l’administrateur, c’est l’objectif principale du site : Les clients d’Arius doivent

pouvoir consulter puis commander des articles. Ces commandes sont ensuite

gérées par l’administrateur, celui-ci accède aux informations et fichiers

uploadés par les utilisateurs pour effectuer la dîtes commandes. Une fois la

commande terminée, il doit pouvoir changer son statut.

Page 9: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

9

5. Spécifications techniques

A. Choix technologiques

a) Front-Office

Design : Mon collègue à réaliser le Front-Office selon les maquettes

réalisées par le maître de stage. Pour cela il a utilisé plusieurs Framework

dont Bootstrap : le plus célèbre Framework Front-Office qui permet de

simplifier le design grâce notamment à son système de grille. Néanmoins,

l’effet visuel de Bootstrap est assez lassant, c’est pourquoi il l’a complété

avec un Framework : MD-Bootstrap qui propose un visuel ‘’Material Design’’

plus sobre et épuré, plus respectueux de la charte graphique.

Page 10: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

10

Animation : L’ajout d’animation permet de rendre l’expérience

utilisateur plus agréable en rendant les éléments de la page plus

dynamiques. Mon collègue a opté pour une librairie Javascript d’animation :

le plugin Aos qui permet l’apparition des articles avec une animation ‘’Slide-

Up’’. Pour ma part, j’ai utilisé Magnific Pop-Up qui permet l’affichage de

modal responsive.

b) Back-Office

Le projet a été réalisé sur le Framework PHP Symfony. Il était judicieux

de développer sur ce Framework car Symfony fournit des fonctionnalités

modulables et adaptables qui permettent de faciliter et d’accélérer le

développement d'un site web. La meilleure démonstration de ce constat est

l’utilisation de bundles : des ‘’plugins’’ ajoutant de nouvelles fonctionnalités

au projet, ce qui représente un gain de temps considérable qui peut être

redistribuer ailleurs.

Pour des soucis de compatiblité avec

les bundles utilisés, nous avons utilisé la

version 4.3.10 de Symfony.

B. Domaine et hébergement

Le site internet Myarius est hébergé sur le compte OVH du maître de

stage. Le nom de domaine http://www.myarius.com est réservé et le site est

actuellement accessible au client d’Arius. Il ne dispose pas de certificat SSL pour

le moment.

Page 11: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

11

C. Accessibilité

Pour commencer, le site internet Myarius ne sera pas responsive. En effet,

les clients du Glacis ont tous accès à des fournitures bureautiques tel que

l’ordinateur. De plus, réaliser une interface d’administration responsive est un

processus qui est assez complexe et mérite du temps de développement. Mais

ceci fera éventuellement partie des améliorations à prévoir.

D. Maintenance et évolution

Le site internet Myarius, une fois hébergé sur un serveur, pourra être

maintenue et améliorée, par le maître de stage pour le front et par un autre

développeur Symfony ou même PHP pour la partie back. Il pourra aussi mettre

à jour le projet (bundles inclus), d’autant que la version 4.3 de Symfony sera

prochainement obsolète car celle-ci ne recevra plus ni les corrections de bugs,

ni les patchs de sécurité.

Page 12: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

12

6. Réalisation

A. Définition des objectifs du projet

Tout d’abord, il est essentiel de clarifier les objectifs du projet (les priorités

et les objectifs secondaires), et ce que l’on attend de nous (livrables, temps,

délais…). Vous pouvez voir la liste des objectifs dans la partie II. Présentation du

projet, 2)

Objectifs. Ces objectifs ont été établis lors du premier jour de stage avec

Jocelyn RABAHI, Assistant Marketing chez ARIUS TOUCH et actuellement notre

maître de stage. Pour ce projet, il y a une contrainte de 6 semaines, durée totale

du stage.

B. Découper le projet et définir la liste des tâches

Nous sommes deux sur le projet, il est donc essentiel de se répartir les

tâches : Vincent s’occupera du Front-Office et je réaliserai le Back-Office. Il est

également judicieux de travailler avec l’appui d’un logiciel de gestion de versions

car cela comporte de nombreux avantages :

- Retrouver les modifications apportées au projet en tout temps,

pratique en cas de bug lors d’ajout de fonctionnalité.

- Pouvoir fusionner nos branches pour bénéficier des changements

apportés par les collaborateurs.

- Garder une sauvegarde fonctionnelle du projet en cas de pépin.

- Pouvoir accéder au code depuis le repository, permettant le

télétravail.

J’utilise aussi personnellement PHP Storm, un éditeur de code pour PHP, HTML,

CSS et JavaScript.

Page 13: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

13

Voici les taches à réaliser pour le Back-Office :

- Intégrer une interface d’administration

- Mettre en place la gestion des utilisateurs

- Gérer la connexion / déconnexion

- Restreindre l’accès à certaines parties du site

- Permettre l’envoie et le téléchargement de fichiers

- Sécuriser l’envoie des fichiers

C. Développement des différentes pages et fonctionnalités

a) L’interface d’administration

Le développement d’une interface d’administration simple, complète et

fonctionnelle prend un temps considérable, que je souhaite optimiser au mieux.

Heureusement, la particularité de Symfony est de pouvoir intégrer facilement

des bundles, j’ai donc intégré le bundle EasyAdmin au projet. Il est judicieux

d’utiliser ce bundle en particulier pour plusieurs raisons :

- Temps d’apprentissage minime : j’ai déjà utilisé ce bundle dans mon

précédent projet et est donc déjà les habitudes de développement.

- Communauté active : ce bundle d’une grosse communauté et donc

d’un gros suivi. Documentation, tutoriels et aides sont disponibles en

nombres sur le web, facilitant le développement.

- Personnalisable : on peut personnaliser l’interface utilisateur avec

notre propre fichier CSS mais aussi réécrire les fonctions existantes et

en rajouter de nouvelle.

Page 14: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

14

A cette étape, nous avons une interface d’administration basique

permettant un C.R.U.D complet mais ne prenant pas en compte les exceptions

et non personnalisée.

Il est maintenant temps de personnaliser l’interface d’administration,

voici les différentes fonctionnalités à intégrer afin d’arriver au résultat voulu par

le client :

- Changer la couleur du fond en blanc

- Afficher le logo Arius en tant que lien cliquable redirigeant vers la page

d’accueil de l’interface

- Ajouter le logo Arius en favicon

- Positionner les liens vers le site web

- Rendre possible la suppression de plusieurs entités

- Permettre le téléchargement en fichier .zip des logos des commandes

- Les fichiers envoyés seront sauvegardés dans un dossier

préalablement créé

- La suppression d’une entité entrainera la suppression du dossier et de

ses fichiers relatifs

Page 15: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

15

- Afficher les informations détaillées de chaque entité

- Filtres dynamiques d’entité

- Choisir si une entité est affichée

- Choisir si un article est commandable

- Choisir si un utilisateur est autorisé à se connecter

- Gérer les exceptions (nom et caractères réservés des dossiers par

exemple)

- Ajout des notifications de réussites, d’échec ou d’exception à chaque

action

- Ajout d’une notification des nouvelles commandes d’aujourd’hui

- Et bien d’autres tâches plus secondaires …

Après ajout de toutes les fonctionnalités, l’interface d’administration

devient finalement conforme à la demande du client : design simple et épuré

(Voir annexe 11), fonctionnalités avancées disponibles et notifications après

chaque action.

b) La gestion des utilisateurs

Le développement d’une gestion des utilisateurs simple, complète et

fonctionnelle prend un temps considérable, que je souhaite optimiser au mieux.

Heureusement, la particularité de Symfony est de pouvoir intégrer facilement

des bundles, j’ai donc intégré le bundle FOSUserBundle au projet. Il est judicieux

d’utiliser ce bundle en particulier pour plusieurs raisons :

- Temps d’apprentissage minime : j’ai déjà utilisé ce bundle dans mon

précédent projet et est donc déjà les habitudes de développement.

- Communauté active : ce bundle d’une grosse communauté et donc

d’un gros suivi. Documentation, tutoriels et aides sont disponibles en

nombres sur le web, facilitant le développement.

- Personnalisable : on peut réécrire les fonctions existantes et en

rajouter de nouvelle.

Page 16: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

16

- Fonctionnalité avancé disponibles : Réinitialisation de mot de passe à

partir d’un lien unique provisoire par exemple

A cette étape, nous avons une gestion d’utilisateur basique permettant la

création, la modification et la suppression d’utilisateur, mais ces utilisateurs

nécessitent de posséder d’autres propriétés pour les besoins du projet.

Il est maintenant temps de personnaliser la gestion d’utilisateur, voici les

différentes fonctionnalités à intégrer afin d’arriver au résultat voulu par le

client :

- Permettre à un utilisateur de se connecter (Voir annexe 6)

- Permettre à un utilisateur de se déconnecter

- Désactiver l’inscription pour les visiteurs

- Gestion des utilisateurs depuis l’interface d’administration

- Génération d’un mot de passe aléatoire lors de la création d’un

utilisateur

- Désactiver la suppression de compte de l’utilisateur

- Restreindre les informations pouvant être modifier par l’utilisateur

(Voir annexe 13)

- Permettre à l’utilisateur de réinitialiser son mot de passe de manière

sécurisé (Voir annexe 7)

- Permettre à l’utilisateur de changer son mot de passe (Voir annexe 14)

- Définir le niveau de privilèges des utilisateurs : administrateur ou

utilisateur

- Interdire l’accès à l’interface d’administration aux utilisateurs non-

administrateur (Voir annexe 16)

- Interdire l’accès au site pour les visiteurs

- Gérer les exceptions (erreur 404 : voir annexe 17)

Après ajout de toutes les fonctionnalités, la gestion des utilisateurs est

désormais conforme à l’attente du client, les utilisateurs peuvent dorénavant

accéder à un panel d’options pour gérer leurs comptes et l’administrateur peut

gérer chaque utilisateur de manière simple et complète.

Page 17: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

17

c) Mes commandes

Description de la page

Un utilisateur, une fois connecté, peut naviguer sur le site, et, s’il le souhaite et

si ses token sont suffisants, peut commander un article. L’utilisateur peut

ensuite visiter la page ‘’mes commandes’’, celle-ci offre la possibilité à

l’utilisateur d’avoir un historique de ses commandes sous formes de deux

tableaux distincts : les commandes en cours et les commandes terminées.

(Voir Annexe 12)

Explication technique

J’ai réalisé l’intégralité de cette page en trois parties :

- D’abord, j’ai étendu cette page à la page de base, récupérant ainsi le

style et donc la charte graphique du site, mais aussi les différents

scripts javascript utilisés.

- Ensuite, je réalise une requête vers la base de données : je récupère

toutes les commandes de l’utilisateur connecté.

- Enfin, si l’utilisateur possède des commandes alors celles en cours sont

affichées dans un tableau ‘’Commandes en cours’’, les autres sont

affichées dans un tableau ‘’Commandes terminées’’.

- Sinon, un simple texte indiquant qu’aucune commande n’a été

enregistré par l’utilisateur est affiché.

Page 18: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

18

d) Les offres

Description de la page

Un utilisateur connecté à la possibilité de consulter les offres disponibles, c’est-

à-dire que l’administrateur à décider d’afficher sur une page dédiée. Cette

page affiche les informations principales des rangs que l’utilisateur peut

accéder, en plus de son propre rang. Si l’utilisateur souhaite de changer de

rang, il peut cliquer sur le bouton ‘’choisir’’ qui s’affiche lors du survol du

curseur sur ce rang. Un email est alors envoyé à l’administrateur pour le

notifier avec comme informations : l’utilisateur, son rang actuel et le rang

souhaité. (Voir Annexe 15)

Explication technique

J’ai réalisé l’intégralité de cette page en trois parties :

- D’abord, j’ai étendu cette page à la page de base, récupérant ainsi le

style et donc la charte graphique du site, mais aussi les différents

scripts javascript utilisés.

- Ensuite, je réalise une requête vers la base de données : je récupère

tous les rangs ‘’affichables’’ que j’affiche sous forme de cartes

interactifs.

- Enfin, j’ai réalisé une Template d’email qui contiendra les

informations de l’utilisateur et du rang sélectionné, Template qui sera

envoyé en email à l’administrateur.

Page 19: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

19

e) Fichier .htaccess et robots.txt

Description de la page

Lors de la mise en ligne du projet, le chemin devant être spécifié pour arriver à

la page d’accueil du site était incorrecte : http://myarius.com/public .

La page http://myarius.com renvoyait sur l’explorateur de fichier, qui affichait

tous les fichiers du projet Symfony : ce problème représente un risque de

sécurité majeur car il permet à n’importe qui d’accéder au code source du

projet, en plus de ne pas correspondre au souhait du client.

Le client souhaitait que http://myarius.com soit la page d’accueil et que le site

web ne soit pas indexé par les robots des différents moteurs de recherche.

Explication technique

Pour réaliser cette demande, j’ai ajouté deux fichiers à la racine du projet :

- Le premier fichier est .htaccess, celui-ci permet la redirection de

http://myarius.com vers http://myarius.com/public tout en

conservant la même url.

- Le second fichier est robots.txt, celui permet de spécifier si les robots

des moteurs de recherche sont autorisés à visiter et indexer les

différentes pages du site web. Par défaut, tous les robots y sont

autorisés, ce qui ne correspond pas aux attentes du client. J’ai donc

spécifié dans ce fichier qu’aucun robot n’était autorisés à accéder à la

page d’accueil, et donc à toutes les autres pages du site.

- Enfin, j’ai ajouté la balise <meta name="robots" content="noindex,

nofollow"> dans la Template source, celle-ci sera alors présente dans

toutes les pages pour qu’elles ne soient pas indexées.

Page 20: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

20

7. Améliorations éventuelles

Comme dans la majorité des projets, il est possible d’effectuer des

améliorations. Cette étape se fera lorsque le site web sera en ligne

officiellement. Ainsi, on pourra tester cet outil dans les conditions réelles. En

effet, à l’heure où je rédige ce document, le site web n’a pas encore été testé.

Cependant, je peux d’ores et déjà vous présenter une liste

d’améliorations :

- Rendre le site web responsive (qui s’adapte à tous types d’écrans)

- Possibilité de recherche/tri avancée dans les catalogues (en fonction

de la date, du nombre de vues/commandes, article non-commandé…)

qui pourrai s’avérer utile quand il y aura un grand nombre d’articles.

- Instaurer un système anti-spam pour les formulaires et l’envoie

d’email (nombre d’essai, limite de temps…)

- Permettre à l’utilisateur de consulter tous les logos de ses

commandes envoyés dans une galerie, et de pouvoir les télécharger

dans un fichier .zip comme pour l’administrateur.

Bien entendu, ces différents points ne constituent pas la liste officielle

des améliorations qui seront prévues. En effet, il faudra que celles-ci soient

approuvées par la direction, tout en prenant en compte du temps de

développement nécessaire à la réalisation de celles-ci.

Page 21: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

21

8. Conclusion

Ce stage de 6 semaines m’a permis de réaliser plusieurs conclusions.

Tous d’abord, ma vitesse de développement ainsi que mes méthodes de

recherches sont les deux compétences qui ont le plus évoluer. En effet, à mon

retour de formation, j’ai constaté que je pouvais réaliser des programmes

complexes bien plus efficacement qu’auparavant, et que mon temps de

recherches était dorénavant bien plus réduit.

Le stage est une très bonne mise en pratique des connaissances

accumulées. Participer à un réel projet complet, de sa conception à sa mise en

ligne se montre très gratifiant. Malgré la durée du stage qui est assez courte

pour un projet tel qu’un site web complet, j’ai pu atteindre la majorité des

objectifs du cahier des charges, bien que j’aurais aimé peaufiner certains

détails. Le fait de rechercher, d’essayer, de corriger et d’améliorer du code à

temps plein est ce qui m’a fait énormément progresser.

Cependant, la formation Webforce3 à laquelle j’ai participé, avait pour

objectif d’introduire aux bases de la programmation web qui doivent être

perpétuellement approfondies. Durant ce stage, j’ai commis plusieurs

d’erreurs qui auraient pu être évité et qui aurait permis de faire gagner du

temps. Elles sont pour la plupart dû au manque d’expérience. Mais c’est

également le principe de la programmation informatique : on apprend de ses

erreurs.

Dans le futur, je souhaiterai continuer dans le domaine du

développement web et logiciel. Mes compétences acquises au cours de cette

formation me permettront de faciliter l’apprentissage et la compréhension de

nouveaux langages informatiques : Java, C, C++, Python.

Page 22: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

22

9. Annexes

Page 23: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

23

Annexe 1

Modèle Conceptuel des données du projet Arius (MCD)

Page 24: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

24

Annexe 2

Maquette de la page d’accueil

Page 25: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

25

Annexe 3

Maquette de la page ‘’Espace Vidéo’’

Page 26: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

26

Annexe 4

Maquette de la page d’une vidéo

Page 27: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

27

Annexe 5

Maquette de la page ‘’Offres’’

Page 28: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

28

Annexe 6

Page de connexion

Page 29: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

29

Annexe 7

Page ‘’Mot de passe oublié’’ ou ‘’Première connexion’’

Page 30: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

30

Annexe 8

Page d’Accueil

Page 31: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

31

Annexe 9

Page de catalogue d’application

Page 32: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

32

Annexe 10

Page de Commande d’un Article

Page 33: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

33

Annexe 11

Interface d’Administration

Page 34: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

34

Annexe 12

Page ‘’Mes commandes’’

Page 35: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

35

Annexe 13

Page ‘’Mon compte’’

Page 36: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

36

Annexe 14

Page ‘’Modifier le mot de passe’’

Page 37: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

37

Annexe 15

Page ‘’Offres’’

Page 38: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

38

Annexe 16

Page 403

Page 39: Développeur Web et Web mobile - Rapport de stage · 2020. 5. 29. · développement web car je ne disposais que des bases de la programmation. [est dans ce but que je me suis inscrit

39

Annexe 17

Page 404


Recommended