Ce document aborde la programmation orientée objet, avec un accent sur les concepts de composition, d'agrégation et d'immuabilité dans la création et la gestion des objets au sein de classes. Il illustre ces concepts à travers des exemples de code en Java et Python, et explique les implications de l'immuabilité et de la gestion des références entre objets. Le document conclut sur la notion de couplage et de cohésion dans le design des classes.