Quand utilise-t-on la programmation procédurale?

Concepts de paradigmes de programmation

Eleanor Thomas

Senior Data Analytics Engineer

Applications typiques de la programmation procédurale

  • Courante dans les langages polyvalents
  • Pertinente quand le problème se découpe naturellement en étapes
  • Idéale pour automatiser la préparation des données
  • Utilisée pour créer des sites Web
  • Toute tâche de codage définissable étape par étape et en sous-tâches

Trois images illustrant la préparation de données, la programmation de sites Web, des sous-tâches

Concepts de paradigmes de programmation

Exemple de programmation procédurale

price_in_cents = 500
price_in_dollars = price_in_cents / 100

discount = 0.20
final_price = price_in_dollars * (1 - discount)
print("The final price is: $", final_price)
  • Partir du prix en cents
  • Convertir en dollars
  • Appliquer un rabais
  • Afficher le résultat
Concepts de paradigmes de programmation

Avantages et inconvénients de la programmation procédurale

AVANTAGES

  • Favorise la modularité, réduit le code global et fait gagner du temps
  • Plus simple que d'autres paradigmes, accessible, très répandue avec beaucoup de ressources pédagogiques
  • Très flexible et adaptée à de nombreux cas d'usage

INCONVÉNIENTS

  • Parfois moins sécuritaire que d'autres paradigmes selon la circulation des données
  • Le code se réutilise rarement entre projets
  • Met l'accent sur les opérations sur les données plutôt que sur leur intégrité
Concepts de paradigmes de programmation

Programmation procédurale vs programmation impérative

  • La programmation procédurale est impérative, mais toute programmation impérative n'est pas procédurale
  • Toute programmation impérative suit des instructions étape par étape pour l'exécution
  • La programmation procédurale organise le code en procédures (ou sous-programmes) et dicte le flux du programme

Organigramme

Concepts de paradigmes de programmation

Passons à la pratique!

Concepts de paradigmes de programmation

Preparing Video For Download...