Qu'est-ce qu'une classe partielle?
Une classe partielle est une fonctionnalité de certains langages de programmation orientés objet qui permet de diviser la mise en œuvre d'une classe entre plusieurs fichiers de code source. Les classes partielles, également appelées types partiels, n'existent pas dans de nombreux langages de programmation, en particulier les plus anciens comme C ++ et Java. Chaque langage qui implémente des classes partielles, telles que C # et Ruby, gère l’implémentation un peu différemment.
En général, les classes partielles utilisent le mot-clé "partial" pour désigner les éléments de classe, et le caractère capitalisé ou non du mot-clé dépend du langage de programmation utilisé. Chaque partie de la classe est initialisée de la même manière avec des déclarations de classe identiques. Sans ce mot clé "partiel", il serait illégal de créer plusieurs classes dans plusieurs fichiers portant tous le même nom. Le mot-clé "partial" indique au compilateur ou à l'interprète, selon la langue, de fusionner toutes les classes en une seule grande unité. Toutes les parties distinctes de la classe doivent avoir la même visibilité, qu'elle soit publique, privée ou protégée. Si une partie de la classe est désignée comme abstraite, la classe fusionnée est également désignée comme abstraite, même si aucune des autres parties individuelles n'a été désignée comme telle.
L'implémentation d'une classe partielle sur plusieurs fichiers présente des avantages importants, à la fois en termes de style de programmation et d'organisation. Les classes partielles permettent de séparer explicitement les éléments de code associés en groupes plus spécialisés. De plus, une classe partielle permet à plusieurs programmeurs de travailler sur des parties de code spécifiques sans perturber les autres et écraser les révisions par inadvertance. Même pour les programmeurs individuels, les classes partielles peuvent être utiles car elles peuvent être utilisées pour créer de très grandes classes sans créer également un fichier lourd, difficile à organiser et à lire.
Les modèles d'implémentation de classe partielle présentent également des inconvénients importants. Bien qu’elles relèvent de la programmation orientée objet, les classes partielles violent les principes d’encapsulation essentiels à la programmation orientée objet. Dans la programmation orientée objet, une classe est supposée être une entité unifiée unique qui possède ses propres états et comportements uniques, est autonome et peut être utilisée en tant qu'unité cohérente. Les classes partielles violent cette idée car chaque classe partielle agit comme une seule classe séparée. Bien que les éléments composant une classe partielle soient fusionnés en une grande classe au moment de l'exécution, les éléments de la classe partielle sont souvent des entités indépendantes pouvant être utilisées seules, sans aucune forme de fusion.