Les concepts importants en développement web

Les grands principes

Les styles de programmation

  • Programmation orientée objet
  • Programmation impérative
  • Programmation fonctionnelle

Les modèles MV …

Les architectures Modèle – Vue et Contrôleur ou Présenteur offrent une organisation claire du code, facilitant ainsi la maintenance et la testabilité.

Modèle MVP

Le modèle Model-View-Presenter (MVP) est un patron de conception utilisé pour séparer une application en trois composants principaux : le Modèle, la Vue et le Présentateur. Le Modèle gère les données et la logique métier. La Vue s’occupe de l’affichage et de l’interaction utilisateur. Le Présentateur agit comme un intermédiaire entre la Vue et le Modèle.

Dans le fonctionnement du MVP, l’utilisateur interagit avec la Vue, qui transmet ces interactions au Présentateur. Le Présentateur récupère ou modifie les données dans le Modèle puis met à jour la Vue en conséquence. Ce cycle permet une séparation claire des préoccupations : la Vue pour l’interface utilisateur, le Modèle pour les données et la logique, et le Présentateur pour coordonner les deux.

Le MVP est souvent utilisé dans le développement d’applications où une séparation nette entre la logique métier et l’interface utilisateur est souhaitable.

Le modèle MVC

Le modèle Model-View-Controller (MVC) est un autre patron de conception en architecture logicielle, utilisé pour découpler la logique métier d’une application de son interface utilisateur. Il se compose de trois composants principaux : le Modèle, la Vue et le Contrôleur. Le Modèle gère les données et les règles métier. La Vue s’occupe de l’affichage des données. Le Contrôleur gère les interactions entre la Vue et le Modèle.

Dans le MVC, l’utilisateur interagit avec la Vue, qui délègue ces interactions au Contrôleur. Le Contrôleur met à jour le Modèle si nécessaire, et la Vue est ensuite mise à jour en fonction des données du Modèle. Cette structure permet une séparation des préoccupations : le Modèle pour la logique métier, la Vue pour l’affichage et le Contrôleur pour orchestrer le tout.

Elle est particulièrement populaire dans le développement d’applications web, où elle est souvent utilisée dans des frameworks comme Ruby on Rails, Django et Angular.

Les différences entre MVC et MVP

La différence principale entre le modèle Model-View-Presenter (MVP) et le modèle Model-View-Controller (MVC) réside dans la manière dont ils gèrent la communication entre la Vue et le Modèle.

Dans MVP, la Vue est plus passive et dépend du Présentateur pour récupérer les données du Modèle et afficher les mises à jour. Le Présentateur sert d’intermédiaire et contient la logique pour mettre à jour la Vue en fonction des changements dans le Modèle.

Dans MVC, la Vue est plus active et peut écouter directement les changements dans le Modèle. Le Contrôleur sert principalement à mettre à jour le Modèle et peut ne pas être directement impliqué dans la mise à jour de la Vue.

En résumé, MVP met plus de responsabilités sur le Présentateur pour gérer la logique de présentation, tandis que dans MVC, ces responsabilités sont souvent réparties entre la Vue et le Contrôleur. Les deux modèles visent à séparer la logique métier de l’interface utilisateur, mais ils diffèrent dans la manière dont ils établissent cette séparation.

La méthodologie Agile

La méthodologie agile est devenue un standard dans la gestion de projets informatiques, apportant une alternative aux approches de développement linéaires traditionnelles. Initiée par le Manifeste Agile de 2001, cette méthodologie repose sur quatre valeurs clés et douze principes qui privilégient notamment la collaboration client, la réactivité aux changements et la livraison continue de logiciel fonctionnel.

Elle se décline en plusieurs pratiques et frameworks, dont SCRUM, Kanban et l’Extreme Programming (XP), chacun ayant ses propres rôles, rituels et principes. SCRUM, par exemple, organise le travail en « sprints » et définit des rôles comme le Product Owner et le Scrum Master pour gérer le développement et les obstacles. Le Kanban utilise un tableau pour visualiser le flux de travail, tandis que XP met l’accent sur l’excellence technique et la collaboration étroite entre tous les membres de l’équipe de développement.

Les éléments récurrents

Les conditions

If/Else if ou Elsif / Else

Les boucles

Boucles For et leurs déclinaisons

While et do/while