« Bonjour, Amigo ! Je veux que tu comprennes le but de la POO. Alors je vais te raconter une histoire. »

Il était une fois une petite entreprise qui expédiait des marchandises dans l'espace...

« Comme le Voyageur Interstellaire ? »

« C'est ça, comme le Voyageur Interstellaire. 5 personnes y travaillaient. La première était chargée des finances, la deuxième travaillait dans l'entrepôt, la troisième s'occupait des expéditions, la quatrième était responsable de la publicité, et la dernière supervisait tout ce petit monde. »

Ils travaillaient dur et prospéraient. L'entreprise avait bonne réputation et gagnait beaucoup d'argent. Le nombre de commandes augmentait d'année en année, alors le PDG a dû embaucher de nouveaux employés. Plusieurs pour l'entrepôt, plusieurs chargés des expéditions, un autre financier et un publicitaire pour augmenter les ventes.

C'est là que les problèmes commencèrent. Maintenant qu'il y avait plus de personnel, ils commençaient à se tirer sur les pattes.

Le publicitaire a passé tout l'argent dans une nouvelle campagne de pub, ne laissant pas un sou à disposition pour acheter les produits qui étaient censés être expédiés de toute urgence.

L'entrepôt avait 10 boîtes d'hypermoteurs flambant neufs à expédier une fois par mois. Un livreur a décollé avec un hypermoteur, causant un retard supplémentaire d'un mois pour la commande de 10 hypermoteurs d'un autre client. Le premier livreur n'était tout simplement pas au courant de la commande que le second devait honorer.

Le nouvel assistant du PDG a envoyé un assistant acheter des marchandises dans un vaisseau, laissant tous les autres attendre le prochain. Il y avait beaucoup de livraisons urgentes, mais cet assistant ne gérait que les achats et essayait de bien faire son travail. Plus une personne s'efforçait de bien exercer ses responsabilités, plus elle interférait avec les autres.

En analysant la situation, le PDG s'est rendu compte que les ressources importantes, comme le vaisseau, l'argent et les biens n'étaient pas utilisées optimalement, mais plutôt sur une base de « premier arrivé, premier servi ». N'importe qui pouvait prendre des ressources pour effectuer son travail, menaçant la productivité du reste des employés et de l'entreprise.

Il fallait faire quelque chose. Le PDG a décidé de diviser son entreprise monolithique en plusieurs départements. Il a créé un service d'expédition, un service marketing, un service achats, un service financier, et un service d'entreposage. Maintenant, plus personne ne pouvait simplement prendre le vaisseau quand bon lui semblait. Le directeur du service d'expédition recevait toutes les informations d'expédition et confiait le vaisseau au livreur dont la livraison serait la plus rentable pour l'entreprise. De même, l'entrepôt ne laissait plus les livreurs récupérer les marchandises à leur bon gré. Le processus était maintenant contrôlé. Le service financier a cessé d'allouer des fonds au marketing si un achat était à faire prochainement. Chaque service avait un personnage public : le chef de service. La structure interne de chaque service était à sa discrétion. Si un livreur voulait prendre des marchandises, c'est au chef d'entrepôt qu'il devait parler, pas à l'entrepôt entier. Quand une nouvelle commande arrivait, elle allait au chef du service d'expédition (une personne publique), et non au livreur (une personne privée).

Autrement dit, le PDG a regroupé les ressources et actions en services, et interdit aux autres d'interférer avec les structures internes de ces services. Seules des personnes spécifiques pouvaient être contactées.

En matière de POO, il ne s'agit de rien d'autre que de diviser un programme en objets. Un programme monolithique, composé de fonctions et de variables, est converti en un programme composé d'objets. Et ces objets contiennent des variables et des fonctions.

« Une minute. Tu dis que le problème était que chaque employé avait un accès illimité aux ressources et pouvait donner des ordres à n'importe quel autre employé ? »

« Oui, exactement. ».

« Intéressant. Nous avons introduit une petite restriction, mais reçu plus de commandes. Et ils ont pu maintenir un meilleur contrôle sur toutes choses. »

« Oui. Le concept de 'diviser pour mieux régner' sous sa forme la plus pure. »

« Diviser pour mieux régner, c'est bien dit. Je retiendrai la formule. »