Paradigme de programmation

De Didaquest
Aller à la navigationAller à la recherche

Définition de paradigmes

  • Un paradigme est une représentation du monde, une manière de voir les choses. Le mot paradigme tient son origine des mots grecs paradeigma qui signifie « modèle » ou « exemple », et paradeiknunai qui signifie « démontrer ».

Définition de paradigmes de langages de programmation

  • Un paradigme de programmation est un style fondamental de programmation informatique qui traite de la manière dont les solutions aux problèmes doivent être formulées dans un langage de programmation (à comparer à la méthodologie, qui est une manière de résoudre des problèmes spécifiques de génie logiciel).

Utilisation

  • Un paradigme de programmation fournit (et détermine) la vue qu’a le développeur de l’exécution de son programme. Par exemple, en programmation orientée objet, les développeurs peuvent considérer le programme comme une collection d’objets en interaction, tandis qu’en programmation fonctionnelle un programme peut être vu comme une suite d'évaluations de fonctions sans états. Lors de la programmation d’ordinateurs ou de systèmes multi-processeurs, la programmation orientée processus permet aux développeurs de voir les applications comme des ensembles de processus agissant sur des structures de données localement partagées.

  • De la même manière que des courants différents du génie logiciel préconisent des « méthodologies » différentes, des langages de programmation différents plaident pour des « paradigmes de programmation » différents. Certains langages sont conçus pour supporter un paradigme en particulier (Smalltalk et Java supportent la programmation orientée objet, tandis que Haskell supporte la programmation fonctionnelle) alors que d’autres supportent des paradigmes multiples (à l’image de C++, Common Lisp, OCaml, Oz, Python, Ruby ou Scheme).

Exemples de paradigmes

Programmation procédurale

  • La programmation procédurale est un paradigme de programmation basé sur le concept d'appel procédural. Une procédure, aussi appelée routine, sous-routine ou fonction (à ne pas confondre avec les fonctions de la programmation fonctionnelle reposant sur des fonctions mathématiques) contient simplement une série d'étapes à réaliser. N'importe quelle procédure peut être appelée à n'importe quelle étape de l'exécution du programme, incluant d'autres procédures voire la procédure elle-même (récursivité).

  • La programmation procédurale est souvent un meilleur choix qu'une simple programmation séquentielle ou programmation non-structurée.

Avantages :

  • La possibilité de réutiliser le même code à différents emplacements dans le programme sans avoir à le retaper ;
  • Une façon plus simple de suivre l'évolution du programme.
  • facilitent la tâche du programmeur en permettant de privilégier une approche procédurale.

Le plus vieil exemple de ce type de langage est l'ALGOL.

Programmation orientée objet

La programmation orientée objet (POO) ou programmation par objet, est un paradigme de programmation informatique qui consiste en la définition et l'assemblage de briques logicielles appelées objets ; un objet représente un concept, une idée ou toute entité du monde physique, comme une voiture, une personne ou encore une page d'un livre.

Quelques langages à objets : Ada, Java, C#, Objective C, Eiffel, Python, C++, PHP, Smalltalk...

Programmation événementielle

En informatique, la programmation événementielle est un paradigme de programmation fondé sur les événements. Elle s'oppose à la programmation séquentielle. Le programme sera principalement défini par ses réactions aux différents événements qui peuvent se produire, c'est-à-dire des changements d'état de variable, par exemple l'incrémentation d'une liste, un mouvement de souris ou de clavier.