Von den zahlreichen Werkzeugen, die für die Softwareentwicklung auf Basis von .NET zur Verfügung stehen, sind nur einige wenige derart gelungen, dass sie ohne Wenn und Aber für wirklich jeden Entwickler empfehlenswert sind.
Zu diesen Werkzeugen zählen meiner Meinung nach unter anderem Resharper von JetBrains und .NET Reflector von Red Gate.
Resharper ist ein typisches Mausrad-Produkt: Eigentlich braucht man es nicht – aber nachdem man es für einige Weile genutzt hat, vermisst man es schmerzlich, wenn man dann ohne es auskommen muss. Erst in solchen Augenblicken spürt man, wie nützlich das Werkzeug ist, und wie nahtlos es sich in die eigene Arbeitsweise integriert.
.NET Reflector ist im Gegensatz zu Resharper bislang kein Addin für Visual Studio, sondern ein eigenständiges Produkt gewesen: Es ermöglicht das Disassemblieren und Rückübersetzen von Assemblies in zahlreiche Sprachen wie C#, Visual Basic oder auch MSIL.
Die Anwendungsgebiete sind vielfältig: Diese reichen von der Analyse von bestehendem Code zu Lernzwecken bis hin zur Fehlersuche in externen Assemblies. Zweifelsohne zählt .NET Reflector daher zu den Werkzeugen, die ein Entwickler früher oder später tatsächlich benötigt.
So praktisch .NET Reflector bislang war, so hakelig war auch die Bedienung: Da keine Integration in Visual Studio stattfand, musste .NET Reflector als eigenständiger Prozess nebenher laufen, die zu analysierenden Assemblies mussten per Hand gesucht und eingebunden werden, … nahtlose Integration sieht anders aus.
Vor einigen Tagen ist nun die neue Version 6 von .NET Reflector erschienen. Neben der Unterstützung von .NET 4.0 gibt es als neues Feature eine Integration in Visual Studio, die es ermöglicht, direkt aus dem Kontextmenü des Quellcodeeditors an die zugehörige Stelle innerhalb der disassemblierten Assembly zu springen.
Allein dieses Feature macht die Arbeit mit .NET Reflector bedeutend angenehmer und vor allem schneller, da aufwändige Suchen der Vergangenheit angehören. Aber – die neue Version bietet noch mehr: Erstmalig steht von .NET Reflector eine zweite Edition zur Verfügung: .NET Reflector Pro.
Die Webseite von Red Gate verspricht zu .NET Reflector Pro, dass es aus Visual Studio heraus möglich sein soll, Assemblies zu disassemblieren und diese disassemblierten Assemblies gemeinsam mit dem eigenen Code im Rahmen des Debuggers verwenden zu können.
Und – es funktioniert tatsächlich! .NET Reflector Pro verspricht nicht nur eine nahtlose Integration, tatsächlich ist es eine nahtlose Integration! So ist es mit .NET Reflector Pro problemlos möglich, gemeinsam mit eigenem Code die von dort verwendeten .NET-eigenen Assemblies Step-by-Step zu debuggen.
Kaum ein Produkt hat mich in den vergangenen Jahren derart begeistert wie .NET Reflector Pro – hinter einer schlichten und sehr kompakten Benutzeroberfläche verbirgt sich ein unglaubliches Potenzial.
Als einziger Wermutstropfen kann gelten, dass .NET Reflector Pro kostenpflichtig ist. Mit einem Preis von 145 Euro bewegt es sich aber – ebenso wie auch Resharper – in einem durchaus auch für private Entwickler erschwinglichen Rahmen, zudem muss man lange suchen, bis man ein weiteres Produkt mit einem ähnlichen, derart herausragenden Preis-Leistungs-Verhältnis findet.