Vous êtes sur la page 1sur 14

RAPPORT

DE STAGE

DEVELOPPEMENT D'UNE
APPLICATION MOBILE
Effectué par : Mohamed Ali Hrizi
DU 17/07/2022 AU 31/08/2022

Tuteur de stage: Rachdi Ahmed Montacer


Entreprise d'accueil: Andromedia S.A.R.L

REMERCIEMENT
En premier lieu, je tiens à remercier Mr. Rachdi Ahmed
Montacer,gérant de l'entreprise Andromedia S.A.R.L. En tant
que maitre de stage, il m'a beaucoup appris et a partagé ses
conaissance dans le domaine informatique et développement.

Je saisi cette occasion pour adresser mes profonds


remerciements aux responsables et aau personnel de l'Ecole
Sup Privée d'Ingénierie et de Technologies (ESPRIT)

je désire aussi remercier les professeurs de l'Ecole Sup Privée


d'Ingénierie et de Technologies (ESPRIT),qui m'ont fourni les
outils nécessaires au bon déroulement de mon stage.

Merci
Résumé
J'ai effectué mon stage dans l'entreprise Andromedia SARL. C'est
la premiere expérience de m'intégrer dans la vie professionnelle
,surtout appprenez la collaboration dans l'equipe et le travail
collectif à travers la répartition des taches ce que me permet
d'améliorer mes connaissances théoriiques et pratique.

Bref, mon stage consistait dabs un premier lieu à intégrer les


composants logiciel pour realiser un application mobile à but de
faciliter la communication entre les utilisteurs.
Ce projet a été realiser à travers l'utilisations du plusieurs outils
de programmation (React JS/Redux...)
Table des matiéres
I. Introduction......................................................5
II. Organisme d'accueil .......................................6
III. Introduction du développement mobile......6
1. Type des Applications mobiles..................7
a. Native App..........................................7
b. Web App.............................................7
c. Hybrid App..........................................7
2.Cahier de charge..........................................8
3.Solution proposé..........................................8
IV. Conclusion.......................................................8
I. Introduction.........................................................9
II. Spécification des besoins..................................9
1. Identifications des acteurs.........................9
2.Besoins fonctionnels..................................10
3.Besoins non fonctionnels..........................10
III. Conclusion......................................................10
I. Introduction........................................................11
II. Presentation du projet ....................................11
III. Choix..................................................................11
1. Choix technologique...............................11/12
2.Environnement logiciel...............................13
IV. Conclusion........................................................14
Conclusion générale et perspectives................1
Introduction Générale
Le développement informatique est devenu nécessaire dans un monde
numérique où toutes les entreprises utilisent des systèmes et du matériel
informatique.

Dans le cadre de la formation au sein de L'École supérieure privée


d'ingénierie et de technologie Les étudiants d’Esprit s’engagent dans un
stage d’été  pour mettre en pratique et amélioré mes connaissance dans le
domaine .

Ainsi étant des étudiants en première année Cycle ingénieur en


informatique, on a pu intégrer la société Andromedia SARL et on a pris
comme thème la réalisation d’une Applications Chat

Dans ce sens, notre rapport sera composé de trois chapitres :

Première Chapitre : présentera l’organisme d’accueil «Andromedia SARL»

Deuxième Chapitre : traitera les informations détaillées sur les tâches que
nous avons réalisées pendant ce stage : entre les objectifs fixés, l’analyse
des besoins.

Troisième Chapitre : Comporte la réalisation du projet, en décrivant les


outils et les langages de développement utilisés.

Enfin, nous clôturons notre rapport par une conclusion générale résumant
les points essentiels de notre travail et nous dégageons quelques
perspectives.
CHAPITRE 1 :
CADRE DU PROJET ET GÉNÉRALITÉS SUR
L’APPLICATION MOBILE

I. Introduction
Dans ce chapitre nous allons présenter en premier lieu l’organisme d'accueil, ensuite
on va situer les déférentes type d’application mobile et en vas précisiez quelles sont les
différences exactement avec une conclusion , ensuite en présente le projet dans son
cadre général et les objectifs pour lesquels il a été conçu et développé. Nous allons par
la suite décrire l’état de l’art ainsi que la problématique et leur ampleur. Enfin, nous
présenterons brièvement le travail à réaliser.

II. Organisme d'accueil

Andromedia est une agence spécialisée dans l’IT et le marketing digital.


C’est une agence full service qui a comme vocation de répondre à l’ensemble de
nouveaux besoins, rencontrés par les Entreprises soucieuses de développer leur
notoriété et les performances de leur marque sur internet. Un accompagnement des
clients dans leur réflexion stratégique de communication en ligne, pour répondre à leurs
problématiques d’image, de ciblage, de qualification et de conquête.

III. Introduction au Développement mobile


Plus de la moitié de la population mondiale possède un téléphone portable , Il y a
presque 7 milliards de personnes dans le monde, dont 5,19 milliards possèdent un
téléphone portable selon (zenuacademie :
https://zenuacademie.com/statistiques/statistiques-mondiales-mobile/).
Le nombre d'utilisateurs accédant à Internet avec leurs smartphones a plus que
doublé au cours des cinq dernières années, tout comme le nombre d'utilisateurs
qui téléchargent et utilisant des applications mobiles
1. Type des Apps mobiles
a. Native App
Se sont toutes les applications destiner sur une plate-forme mobile spécifique (Android
/IOS/..) sont appelées applications natives ,mais une applications native est conçue
d’utilisé langage spécifique pour chaque platform ils appellent tous (Native languages)
par exemple pour IOS en utilise Swift ou parfois objectif-c et pour les applications
Android est codée en généralement en Java et utilise avec bibliothèque SDK pour cette
plate-forme

b. Web App
Les applications Web mobiles sont construits à l’aide de technologie Web standard
(html/css/javaScript), ils s’exécutent dans un navigateur Web standard comme
chrome,firfox,safari,ext, la seule différence est qu’ils sont conçu pour paraître et
pour bien fonctionner sur les appareils mobiles .
Les applications Web mobiles est plus rapide et moins chère par rapport a les
applications mobile native

c. Hybrid App
Applications mobile hybride est essentiellement une combinaison
d’une Web app et Native app, Elle utilise HTML , CSS et JavaScript ,mais
elle s’exécute également a l’intérieur d’une sorte de conteneur ou de
vue Web aucun navigateur n’est nécessaire ,ils peuvent être publiés
sur tous les magasins d’applications

Conclusion :
les applications Native ont l’accès aux API internes de l’appareil et ils peuvent
accéder à des fonctionnalités telles que le stockage ,géolocalisons , caméra et
beaucoup d’autre chose dépendent du plate-forme réel que vous utilisez de mémé
pour les applications hybride en outre il est plus rapide que native car vous avez
base code unique et optimisé pour le client pour les applications rapides sur
plusieurs plates-formes les applications Web sont moins interactive et plus lentes
que native et la raison étant que les applications native sont créées pour spécifique
plate-forme ,elles sont optimisées pour fonctionner sur les mobiles .
2. Cahier de charge
Le cahier des charges (CDC) est un document contractuel à
respecter lors d'un projet. Le cahier des charges permet au
maître d'ouvrage de faire savoir au maître d'œuvre ce qu'il attend
de lui lors de la réalisation du projet, entraînant des pénalités en
cas de non-respect. Il décrit précisément les besoins auxquels le
prestataire ou le soumissionnaire doit répondre, et organise la
relation entre les différents acteurs tout au long du projet.
L’application couvre principalement les volets suivants :

*Gestion des contacts


*Gestion de liste d'amis
*Gestion de demands
3. Solution proposé
Après une étude menée, on peut dire que la construction de la
plateforme se fait aujourd’hui dans le cadre de faciliter la communication
entre les differents utilisateurs et leur permet de
discuter à traves des messages instantané.
L'utilisateur peut consulter la liste d'amis il a le choix du ajouter ou retire
un amis de la listel’application fonctionner dans n’importe quel système
d’exploitation(IOS,Andoid,..) à condition d’avoir une connexion internet
car en travaille avec Base de données en ligne.

IV. Conclusion
Après avoir présenté dans ce chapitre le cadre général du projet
ainsi que l’application que nous allons proposer.
Nous passons maintenant au chapitre suivant qui sera consacré à
la partie de l’étude conceptuelle et à la réalisation de notre projet
CHAPITRE 2 :
ANALYSE DES BESOINS

I. Introduction
Le cahier des charges est la phase initiale de toute application à
développer dans laquelle nous identifierons les besoins de notre
site. Nous distinguons d'abord extraire les exigences
fonctionnelles et non fonctionnelles du cahier des charges,

II.Spécification des besoins


Dans cette partie, nous identifions les fonctionnalités de notre
application.

1.Identification des acteurs


Nous allons maintenant énumérer les acteurs susceptibles
d'interagir avec le système. Tout d'abord, nous commençons par
définir ce qui est un acteur.
un acteur représente l'abstraction d'un rôle joué par des entités
externes (utilisateur, dispositif matériel ou autre système) qui
interagissent directement avec le système étudié.
Les acteurs de notre application sont :
Le Mobinaute : toute personne qui installe l'application sur son
Smartphone Android dont il a la possibilité de consulter
l’application
 L’abonnées : toute personne qui fait l'inscription dans
l'application et il peut, par la suite, réserver des produits.
L'administrateur : c'est le superviseur qui contrôle et rectifie
l’application pour assurer le bon fonctionnement de système.
2.Besoins Fonctionnels
Dans la suite, nous désignons par centres d'intérêts les différents services
offerts par notre application :
les mobinautes dispose d'un accès au liste d'amis et messages reçus
Le système doit permettre au mobinautes d’abonnées , Cette
fonctionnalité lui permet d'avoir une notification si il y a une mise à
jour sur le contenu de l’application .
le mobinaute peut découvrir l'adresse, l'email, le informations
générales d'autres utilisateurs qui se trouvent sur son liste d'amis
3.Besoins Non Fonctionnels
Afin de satisfaire les attentes de nos clients, nous proposons de
concevoir une application qui permet de :
Notre application puisse fonctionner dans n’importe quel système
d’exploitation à condition d’avoir une connexion internet pour
accéder à la basse du données
Notre partie de l’application doit être extensible qui signifie la
possibilité d’ajout de nouvelles fonctionnalités ou modification de
l’existant.
Notre application devra assurer une bonne sécurité, chaque
abonner doit avoir un identifiant.

III.Conclusion
En plus des principaux points des besoins fonctionnels, notre
application Doit répondre aux critères suivants :
Facilité d’utilisation : notre Application mobile doit être facile à
utiliser
Contrainte temporelle : notre application doit satisfaire les délaies
mentionner dans le cahier de charge.
L’efficacité : notre application doit être efficace en terme de
contenue et de Services .
CHAPITRE 3 :
RÉALISATION

I. Introduction
Dans ce chapitre je veut présenter le projet d’une manière plus
détaillé et les différentes étapes de fonctionnements par la quelle
passera ce projet et on va décrire les logiciel du travaille pour crier
se projet.
II. Présentation du projet
Ce chapitre constitue le dernier volet de ce rapport, en vas traité
les phase qui vise à La mise en œuvre de notre application. Nous
commençons, tout d'abord, par décrire l'environnement matériel
et logiciel utilisé pour développer notre solution.

III. Choix
1.Choix technologique
React JS:

React (aussi appelé React.js ou ReactJS) est une


bibliothèque JavaScript libre développée par
Facebook depuis 2013. Le but principal de cette
bibliothèque est de faciliter la création d'application
web monopage, via la création de composants
dépendant d'un état et générant une page (ou
portion) HTML à chaque changement d'état.
Redux :
Redux est une bibliothèque open-source
JavaScript de gestion d'état pour applications
web. Elle est plus couramment utilisée avec des
bibliothèques comme React ou Angular pour la
construction d'interfaces utilisateur. Semblable à
(et inspirée de) l'architecture Flux, elle a été
créée par Dan Abramov et Andrew Clark.

Firebase:
Firebase est un ensemble de services
d'hébergement pour n'importe quel type
d'application (Android, iOS, Javascript, Node.js,
Java, Unity, PHP, C++ ...). Il propose d'héberger
en NoSQL et en temps réel des bases de
données, du contenu, de l'authentification
sociale (Google, Facebook, Twitter et Github), et
des notifications, ou encore des services, tel que
par exemple un serveur de communication
temps réel. Lancé en 2011 sous le nom
d'Envolve, par Andrew Lee et par James Templin,
le service est racheté par Google en octobre
2014. Il appartient aujourd'hui à la maison mère
de Google : Alphabet.
2.Environnement logociel
Visual Studio code:
Visual Studio Code est un éditeur de code extensible
développé par Microsoft pour Windows, Linux et macOS2.
Les fonctionnalités incluent la prise en charge du débogage,
la mise en évidence de la syntaxe, la complétion intelligente
du code, les snippets, la refactorisation du code et Git
intégré. Les utilisateurs peuvent modifier le thème, les
raccourcis clavier, les préférences et installer des
extensions qui ajoutent des fonctionnalités
supplémentaires.

Visual Studio 2019:


Microsoft Visual Studio est une suite de logiciels de
développement pour Windows et mac OS conçue par
Microsoft. La dernière version s'appelle Visual Studio
2022.
Visual Studio est un ensemble complet d'outils de
développement permettant de générer des
applications web ASP.NET, des services web XML, des
applications bureautiques et des applications mobiles.
Visual Basic, Visual C++, Visual C# utilisent tous le
même environnement de développement intégré
(IDE), qui leur permet de partager des outils et facilite
la création de solutions faisant appel à plusieurs
langages. Par ailleurs, ces langages permettent de
mieux tirer parti des fonctionnalités du framework
.NET, qui fournit un accès à des technologies clés
simplifiant le développement d'applications web ASP
et de services web XML grâce à Visual Web Developer.

IV.Conclusion
Tout au long de ce stage, j’ai beaucoup appris. Les apports que j’ai tirés de cette
expérience professionnelle peuvent être regroupés autour de trois idées principales :
les compétences acquises, les difficultés rencontrés ainsi que la vie en société
Compétence acquises
Durant ce stage, j’ai eu l’occasion de me perfectionner dans les différents langages et
technologies (dart ,flutter)
Difficultés rencontrés
Au cours de ce projet, j’ai rencontré différente difficulté parmi les quellesr les bases de
la création d’application mobile avec reactjs/redux
J’ai aussi rencontré des difficultés pour utiliser les plugins pour accéder à la base de
données et stocker toutes les données que j’ai aurai reçus,

Conclusion générale et perspectives


Aujourd’hui, on ne peut pas nier l’importance des téléphones dans
notre vie quotidienne, ils sont plus pratiques et faciles : il devient
l'outil relationnel le plus proche des utilisateurs/consommateurs, et
ce dans différents domaines d’application tels que : Les jeux,
applications d’informations (presse, météo, cinéma, etc.), et
applications pratiques (banque, immobilier, rencontres, etc.) .
Notre projet s’inscrit justement dans ce cadre, il s’agit de concevoir
et de développer une application mobile en utilisant React JS/
Redux /Firebase pour assurer la communication. entre les
utilisateurs d'yne maniére facile et rapide

Vous aimerez peut-être aussi