Méthodologies de programmation - Introduction

Lorsque des programmes sont développés pour résoudre des problèmes réels tels que la gestion des stocks, le traitement de la paie, les admissions d'étudiants, le traitement des résultats d'examen, etc., ils ont tendance à être énormes et complexes. L'approche permettant d'analyser ces problèmes complexes, de planifier le développement de logiciels et de contrôler le processus de développement est appeléeprogramming methodology.

Types de méthodologies de programmation

Il existe de nombreux types de méthodologies de programmation répandues parmi les développeurs de logiciels -

Programmation procédurale

Le problème est décomposé en procédures ou en blocs de code exécutant chacun une tâche. L'ensemble des procédures constitue l'ensemble du programme. Il convient uniquement aux petits programmes qui ont un faible niveau de complexité.

Example- Pour un programme de calcul qui effectue l'addition, la soustraction, la multiplication, la division, la racine carrée et la comparaison, chacune de ces opérations peut être développée en tant que procédures distinctes. Dans le programme principal, chaque procédure serait invoquée sur la base du choix de l'utilisateur.

Programmation orientée objet

Ici, la solution tourne autour d'entités ou d'objets qui font partie du problème. La solution traite de la façon de stocker les données liées aux entités, du comportement des entités et de la façon dont elles interagissent les unes avec les autres pour donner une solution cohérente.

Example - Si nous devons développer un système de gestion de la paie, nous aurons des entités comme les employés, la structure salariale, les règles de congé, etc. autour desquelles la solution doit être construite.

Programmation fonctionnelle

Ici, le problème, ou la solution souhaitée, est décomposé en unités fonctionnelles. Chaque unité effectue sa propre tâche et est autonome. Ces unités sont ensuite cousues ensemble pour former la solution complète.

Example - Un traitement de la paie peut avoir des unités fonctionnelles telles que la gestion des données des employés, le calcul du salaire de base, le calcul du salaire brut, le traitement des congés, le traitement du remboursement des prêts, etc.

Programmation logique

Ici, le problème est décomposé en unités logiques plutôt qu'en unités fonctionnelles. Example:Dans un système de gestion scolaire, les utilisateurs ont des rôles très définis comme enseignant de classe, enseignant de matière, assistant de laboratoire, coordinateur, responsable académique, etc. Ainsi, le logiciel peut être divisé en unités en fonction des rôles des utilisateurs. Chaque utilisateur peut avoir différentes interfaces, autorisations, etc.

Les développeurs de logiciels peuvent choisir une ou une combinaison de plusieurs de ces méthodologies pour développer un logiciel. Notez que dans chacune des méthodologies discutées, le problème doit être décomposé en unités plus petites. Pour ce faire, les développeurs utilisent l'une des deux approches suivantes:

  • Approche descendante
  • Une approche en profondeur

Approche descendante ou modulaire

Le problème est décomposé en unités plus petites, qui peuvent être décomposées en unités encore plus petites. Chaque unité est appelée unmodule. Chaque module est une unité autonome qui possède tout le nécessaire pour accomplir sa tâche.

L'illustration suivante montre un exemple de la façon dont vous pouvez suivre une approche modulaire pour créer différents modules lors du développement d'un programme de traitement de la paie.

Une approche en profondeur

Dans une approche ascendante, la conception du système commence par le niveau le plus bas de composants, qui sont ensuite interconnectés pour obtenir des composants de niveau supérieur. Ce processus se poursuit jusqu'à ce qu'une hiérarchie de tous les composants du système soit générée. Cependant, dans un scénario réel, il est très difficile de connaître au départ tous les composants de niveau inférieur. L'approche ascendante n'est donc utilisée que pour des problèmes très simples.

Regardons les composants d'un programme de calculatrice.