Avatar ·

Quand utiliser les classes statiques en C# et pourquoi ne sont-elles pas toujours mauvaises ?

Bonjour à tous ! Je suis un développeur C# débutant (j'apprends depuis environ 4 mois). J'ai apparemment compris les bases de la POO : classes, objets, héritage, polymorphisme. Mais il y a un sujet qui me trouble — les classes statiques.\n\nDans les exemples pédagogiques, je vois souvent qu'elles sont utilisées pour des helpers ou des constantes. Par exemple, j'ai écrit cette classe pour travailler avec des opérations mathématiques :\n\n```csharp\npublic static class MathHelper\n{\n public static double CircleArea(double radius)\n {\n return Math.PI * radius * radius;\n }\n\n public static double CelsiusToFahrenheit(double celsius)\n {\n return celsius * 9 / 5 + 32;\n }\n}\n```\n\nMais ensuite j'ai lu sur des forums que les classes statiques violent les principes de la POO (notamment Dependency Injection et testabilité), et qu'il vaut mieux les éviter. On