Programmieren: Rust und .NET parallel einsetzen
C# ist eine moderne Programmiersprache und .NET eine Softwareentwicklungs-Plattform. Auch Rust hat Vorteile. Wir zeigen, wie Sie C# und Rust parallel einsetzen.
- Rainer Stropek
Die Programmiersprache Rust wird häufig als sichere Alternative zu C und C++ angepriesen. Angesichts der vielen in Rust enthaltenen Mechanismen für Speichersicherheit ist diese Einschätzung auch zutreffend. Viele Entwicklungsteams, die auf .NET setzen, schlussfolgern jedoch, dass für sie Rust keine Vorteile hat. Schließlich besitzt .NET einen Garbage Collector. Laufzeitfehler, wie man sie aus der manuellen Speicherverwaltung von C kennt, sollten also ausgeschlossen sein.
Erfahrene .NET-Entwicklerinnen und -Entwickler wissen jedoch, dass der C#-Compiler nicht alle Speicherfehler entdeckt, die zur Laufzeit auftreten können. Speicherbezogene Laufzeitfehler sind keine Seltenheit, wie die folgenden Beispiele zeigen:
1. Objekte, deren Klassen IDisposable
implementieren, müssen Entwickler in C# explizit freigeben, wenn sie sie nicht länger benötigen. Machen sie das falsch, kommt es zu Use-after-free- oder Double-free-Fehlern.