Étude des langages de programmation pour applications web

Pour citer ce mémoire et accéder à toutes ses pages
🏫 Université Assane Seck de Ziguinchor - UFR DES SCIENCES ECONOMIQUES ET SOCIALES - DEPARTEMENT ECONOMIE-GESTION
📅 Mémoire de fin de cycle en vue de l'obtention du diplôme de Master - 2023-2024
🎓 Auteur·trice·s
Cheikhou DIOKOU
Cheikhou DIOKOU

Les langages de programmation web, tels que PHP et Laravel, sont au cœur du développement d’une application pour la gestion des faits d’état civil à la mairie de Ziguinchor. Cette étude propose une solution innovante visant à optimiser l’efficacité et la qualité des services administratifs.


Outils de programmation

Présentation de quelques langages de programmation

Un langage de programmation est un langage informatique, permettant à un être humain d’écrire un code source qui sera analysé par une machine, généralement un ordinateur. Le code source subit ensuite une transformation ou une évaluation dans une forme exploitable par la machine, ce qui permet d’obtenir un programme. Les langages permettent souvent de faire abstraction des mécanismes de bas niveau de la machine, de sorte que le code source représentant une solution puisse être écrit et compris par un être humain.

L’activité de rédaction du code source d’un programme est nommée programmation. Elle consiste en la mise en œuvre de techniques d’écriture et de résolution d’algorithmes informatiques, lesquelles sont fondées sur les mathématiques. À ce titre, un langage de programmation se distingue du langage mathématique par sa visée opérationnelle (une fonction et par extension, un programme, doit retourner une valeur), de sorte qu’un « langage de programmation est toujours un compromis entre la puissance d’expression et la possibilité d’exécution ». Il existe des milliers de langages de programmation, la plupart d’entre eux étant réservés à des domaines spécialisés. Ils font l’objet de recherches constantes dans les universités et dans l’industrie.1

Dans les lignes suivantes on va essayer de vous montrer quelques langages de programmation en vous montrant leurs avantages et leurs limites par rapport à notre projet.

Nous avons choisi d’étudier les langages de programmation qui pourront être utilisés pour implémenter notre solution informatique par exemple : PHP, JavaScript, HTML et CSS.

Présentation de quelques langages et frameworks côté serveur

Si on devait trouver une définition simple pour répondre à la question « c’est quoi un Framework ? » on dirait que c’est un cadre de travail qui permet de créer des applications web et mobiles. Un Framework propose une bibliothèque de fonctionnalités dans laquelle vos développeurs vont pouvoir piocher en fonction de vos besoins. En développement, l’utilisation d’un Framework permet donc de gagner du temps et aujourd’hui, il s’agit d’un standard dans la construction d’un projet web ou mobile. C’est pour cette raison qu’on a pour habitude de les comparer à une boite à outils. Un Framework est construit autour d’un langage de programmation : PHP, Python, JavaScript, Ruby, etc.

Dans notre mémoire comme nous avons décidé de choisir PHP comme langage de programmation.

[img_1]

Source : https://example.com/php-logo

Figure 8 : logo langage PHP

Pour le client, il est d’ailleurs impossible de voir si du PHP a été utilisé.2

Le rôle principal de PHP est de développer une bonne communication entre la page web et le serveur. En ce sens, PHP garantit la bonne stabilité des pages web.

  • Avantages

Les principaux avantages de PHP sont :

  • Sa grande flexibilité,
  • Sa compatibilité avec de nombreuses bases de données,
  • Sa compatibilité avec la plupart des systèmes d’exploitation.
  • Sa large communauté de passionnés
  • C’est un langage Open source
  • Inconvénients
  • PHP peut présenter l’inconvénient de générer des URL aléatoires, qu’il est nécessaire de réécrire pour ne pas voir vos pages pénalisées par les robots des moteurs de recherche.

Nous allons essayer d’étudier les Framework disponibles et utiliser l’un de ces cadres de travail. En effet l’utilisation d’un Framework ou bibliothèque dans un projet web a beaucoup d’avantages :

  • Gain de temps et d’efficacité
  • Une maintenance très propre
  • Les bonnes pratiques de développement (MVC)
  • La sécurité

Dans les paragraphes suivants nous allons faire la comparaison des deux boites à outils PHP les plus utilisés dont Laravel et Symfony. Mais il existe d’autres Framework notamment Codelgniter, Zend Framework, YII, Samane, etc. Samane MVC est un nouveau Framework local créé par un sénégalais du nom de Ngor SECK.

Présentation de quelques technologies coté client

JavaScript (« JS » en abrégé) est un langage de programmation dynamique complet

[img_2]

Source : https://example.com/js-logo

Figure 9 : logo langage JavaScript

qui, appliqué à un document HTML, peut fournir une interactivité dynamique sur les sites Web. Il a été inventé par Brendan Eich, co-fondateur du projet Mozilla, de la Mozilla Foundation et de la Mozilla Corporation.

JavaScript est d’une incroyable flexibilité. Vous pouvez commencer petit, avec des carrousels, des galeries d’images, des variations de mises en page et des réponses aux clics de boutons. Avec plus d’expérience, vous serez en mesure de créer des jeux, des graphiques 2D et 3D animés, des applications complètes fondées sur des bases de données et bien plus encore.3

JavaScript est plutôt compact tout en étant très souple. Les développeurs ont écrit de nombreux outils sur le cœur du langage JavaScript, créant des fonctionnalités supplémentaires très simplement. Parmi ces outils, il y a :

  • Des Interfaces de Programmation d’Applications pour navigateurs (API) — API intégrées aux navigateurs web permettant de créer dynamiquement du HTML, de définir des styles de CSS, de collecter et manipuler un flux vidéo depuis la webcam de l’utilisateur ou de créer des graphiques 3D et des échantillonnages audio.
  • [img_3]
  • Source : https://example.com/html-logo
  • Des modèles et bibliothèques tierces-parties applicables à votre HTML permettant de mettre en œuvre rapidement des sites et des applications.

HyperText Markup Language (HTML) est le code utilisé pour structurer une page

Figure 10 : logo langage HTML

web et son contenu. Par exemple, le contenu de votre page pourra être structuré en un ensemble de paragraphes, une liste à puces ou avec des images et des tableaux de données.

HTML n’est pas un langage de programmation. C’est un langage de balises qui définit la structure de votre contenu. HTML se compose d’une série d’éléments, utilisés pour entourer, ou envelopper, les diverses parties du contenu pour les faire apparaître ou agir d’une certaine façon.4

Les Cascading Style Sheets — ou CSS — (Feuilles de style en cascade) sont la première technique à apprendre après le HTML. Alors que HTML s’utilise pour définir la structure et la sémantique du contenu, les CSS sont employées pour composer et déterminer l’apparence de ce contenu. Ainsi par exemple, vous utiliserez les CSS pour modifier les polices, la couleur, la taille et l’espacement de votre contenu, pour le répartir sur plusieurs colonnes ou bien pour ajouter des animations et autres fonctionnalités décoratives.

En dépit de tout cela nous avons les principaux langages du développement web dont les langages de programmations, les langages de scripts et les langages de balisages pour la structuration de nos pages web. A travers ces différents langages de programmation nous allons faire un choix sur le langage que nous allons utiliser pour notre solution informatique.

Quelques serveurs

Un serveur informatique fournit des services accessibles via un réseau. Il peut être de nature matérielle ou logicielle, représentant un ordinateur qui exécute des opérations en réponse aux requêtes émises par un autre ordinateur appelé « client ». C’est pourquoi on parle couramment de la relation « client/serveur ». Par exemple, un utilisateur (en tant que client) peut utiliser un navigateur web pour rechercher un site internet. Afin d’afficher ce site, le navigateur effectue une requête auprès du serveur HTTP, qui est un serveur web.

On note principalement deux (2) types de serveurs : notamment le serveur web et le serveur d’applications. Le serveur web se différencie du serveur d’application du fait qu’il ne reçoit et accepte que seulement les demandes HTTP (Hyper Text Transfert Protocol).

Cette figure suivante (ci-dessous) illustre bien le fonctionnement du serveur web.

[img_4]

Source : https://example.com/server-diagram

Figure 11 : fonctionnement serveur web

Comme vous le voyez le visiteur demande une ressource au serveur web. Celui-ci va rechercher la ressource et envoyer cela au visiteur (client). Notons que cette ressource peut être une image, une page html, un fichier à télécharger, etc. De ce fait il est possible que parfois le client lui envoie des données pour un traitement donné par exemple l’inscription d’un nouvel utilisateur dans une plateforme web.

Nous allons voir dans les paragraphes suivants les différents serveurs web disponibles afin de faire notre choix sur l’un de ces serveurs web.

A travers nos recherches nous notons quelque logiciel de serveur web les plus actifs parmi lesquels : Apache web server, Nginx et Apache Tomcat.

Base de données et SGBD

Un système de gestion de base de données (SGBD) est le logiciel qui permet à un ordinateur de stocker, récupérer, ajouter, supprimer et modifier des données. Un SGBD gère tous les aspects primaires d’une base de données, y compris la gestion de la manipulation des données, comme l’authentification des utilisateurs, ainsi que l’insertion ou l’extraction des données.

Un SGBD définit ce qu’on appelle le schéma de données ou la structure dans laquelle les données sont stockées.5 Il existe plusieurs systèmes de gestion de bases de données, tels que Microsoft Access, Microsoft SQL Server, MySQL, PostgreSQL, MongoDB et Oracle Database. Parmi ceux-ci, nous nous concentrerons sur les systèmes les plus populaires et largement utilisés dans le domaine relationnel, à savoir MySQL, PostgreSQL et Microsoft SQL Server

Conclusion

En somme l’étude des différents outils et technologies pour la conception de notre application web, est très importante pour choisir les meilleurs langages de programmation, le meilleur Framework PHP à utiliser, la base de données et le SGBD à utiliser, le serveur web dont on aura besoin pour l’exécution de notre application et enfin les outils complémentaires et d’optimisation. En effet le choix des outils les plus performants va se refléter dans le temps de développement et la performance de l’application.

Nous avions eu à voir les principaux langages de programmation web dans le monde numérique ainsi que leurs dérivés (bibliothèques ou Framework).

Cependant, notre choix s’est porté sur la combinaison suivante : PHP, JavaScript et le duo HTML/CSS. Notre objectif est de ne pas réinventer la roue, mais plutôt d’utiliser les fonctions et méthodes déjà existantes pour faciliter notre travail de développement.

Après avoir décidé de la préférence des outils technologies, nous allons vous montrer l’analyse et la conception de la solution.

________________________

1 [8]

2 [9]

3 [10]

4 [11]

5 [12]

Rechercher
Télécharger ce mémoire en ligne PDF (gratuit)

Laisser un commentaire

Votre adresse courriel ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Scroll to Top