Immutabilität und Reinheit durchsetzen
Unveränderliche Objekte & reine Methoden
Zur Laufzeit sind die Zustände eines Programms Instanz- und statische Feldwerte. Zu kontrollieren, wie, wann und warum sich Zustände ändern, ist eine der anspruchsvollsten Programmieraufgaben. In Multithreading-Umgebungen wird dies ungemein schwierig, da potenzielle Nebeneffekte durch Zustandsänderungen zu kompliziert werden, um sie zu verstehen.
Warum Immutabilität wichtig ist
Objektorientierte Entwickler lassen sich zunehmend vom funktionalen Programmieransatz inspirieren, bei dem die meisten Zustände unveränderlich sind. Ein Objekt ist unveränderlich wenn sich sein Zustand nach der Erstellung nicht mehr ändert. Eine Methode ist rein wenn ihre Ausführung keinen Feldzustand ändert. Unveränderliche Objekte und reine Methoden sind zwei effiziente Wege, unerwartete Nebeneffekte zu begrenzen.
Wie CppDepend hilft
Über dedizierte Code-Quest-Bedingungen und -Regeln können Sie mit CppDepend Immutabilität und Reinheit Ihrer Klassen und Methoden sicherstellen. Sie können:
- Veränderliche Felder in vermeintlich unveränderlichen Klassen erkennen
- Unreine Methoden identifizieren, die Objektzustände ändern
- Reinheitsbeschränkungen in der gesamten Codebasis durchsetzen
- Berichte zur Immutabilitäts-Compliance erstellen
Der beste Einstieg in diese Funktion ist ein Blick auf die Liste der Standard-Code-Quest-Einschränkungen und die zugehörige Dokumentation. CppDepend enthält integrierte Regeln zur Erkennung immutabler Typen, reiner Methoden und Seiteneffekt-Verstöße.
Testen Immutabilität und Reinheit durchsetzen mit CppDepend
Starten Sie Ihre 14-tägige kostenlose Testphase mit vollem Zugriff auf alle Funktionen. Keine Kreditkarte erforderlich.
