web-dev-qa-db-fra.com

Avant la POO, comment les systèmes étaient-ils modélisés

Avant l'avènement de la POO, comment les systèmes étaient-ils modélisés dans d'autres paradigmes de programmation.

De toute évidence, les logiciels existaient avant les années 1970 et ils interagissaient avec les gens et étaient utilisés dans des endroits cruciaux.

Comment le premier paradigme de programmation a-t-il abordé le problème de la modélisation des données.

6
EdgeDev

Il serait assez idiot de penser que nous n'avions pas d'objets avant la POO.

La POO formalise une notion de classe, ce qui permet une organisation de code sans doute supérieure. Mais ces mêmes constructions peuvent être effectuées dans Assembly ou C. De plus, les structures marquées avec des instructions switch fournissent également la fonctionnalité équivalente des classes, sous-classes et remplacements, bien que de manière beaucoup moins formelle.

Les ordinateurs Macintosh basés sur 68k utilisaient beaucoup d'assemblage (en partie parce que les compilateurs n'étaient tout simplement pas aussi bons il y a 40 ans).

Nous avons toujours eu un moyen de regrouper des champs en un objet.

FORTRAN '66 - manquant notamment d'une structure formelle de structure ou d'enregistrement - les programmeurs utiliseraient simplement des tableaux parallèles où les tableaux séparés contenaient les différents champs d'intérêt, et la même position d'index dans chaque tableau séparé constituait un objet.

Il y a toujours (et toujours eu) un moyen de composer des champs en un objet, de relier un objet à un autre, de substituer un objet à un autre, de gérer un objet différemment d'un autre.

8
Erik Eidt

La POO est en fait plus limitée en ce qui concerne la modélisation. La raison en est que chaque verbe doit être étroitement couplé à exactement un nom. D'autres paradigmes n'ont pas cette limitation. Vous n'êtes pas obligé de prendre des décisions stupides comme de faire item.addToCart(cart) ou cart.addItem(item). Vous pouvez avoir une addItemToCart(item, cart).

5
Karl Bielefeldt

Avant la POO, le paradigme programmation structurée utilisé pour séparer les processus et les données.

Cette séparation s'applique également à la modélisation:

Notez que ERD, et dans une moindre mesure IDEF0, sont toujours utilisés aujourd'hui.

Notez également que OO n'est pas une fin et le seul moyen de construire des systèmes complexes. Si vous regardez la taille du code d'un système d'exploitation, vous serez surpris de voir à quel point il est complexe, et il y a encore peu OO là-dedans.

4
Christophe