© best_vector/Shutterstock.com
Windows-Forms-Anwendungen durch MvvmForms modernisieren

Auf zu neuen Ufern mit MvvmForms


Für den Entwickler, der Gedanken wie „Wann sollen wir das alles lernen?“ oder „Am besten wegwerfen und neu machen!“ noch nie hatte, ist dieser Artikel nichts. Für alle anderen, die einen zeitlich und finanziell machbaren Weg aus ihrer monolithischen Windows-Forms-Anwendung suchen, um sich um die neuen Bedürfnisse ihres Fachbereichs kümmern zu können, gilt: Das könnte es sein!

Es gibt sie zu Hunderten, ach was, zu Tausenden! Spezialanwendungen, die Nischenbereiche abdecken – oft sogar den domänenspezifischen Workflow ganzer Abteilungen oder eines ganzes Unternehmens darstellen, und ohne die der Betrieb quasi stehen würde. Oft sind sie nach der MS-DOS-Ära in Visual Basic 4, 5 oder 6 begonnen worden, haben dort ihre Benutzerakzeptanz und – nach vielen Tränen – ihre Benutzerreife erlangt, und die meisten konnten dann mit Ach und Krach und Mühen und Schwielen als Code-Behind-Windows-Forms-App immerhin unter Windows 7 wieder zum Laufen und Atmen gebracht werden. Und nicht wenige fristen bis heute ihr noch unstabiles VB6-Dasein.

Das WinForms-Problem

Und so laufen diese Windows-Forms-Anwendungen mitunter auch richtig gut und brauchbar. Aber die Ansprüche steigen. Und die Entwicklungsabteilungen in größeren Mittelstandsunternehmen, die sich aus Zeit- und Kostengründen zu einem Langzeitprovisorium bei der Architektur ihrer WinForms-App eingelassen haben, plagt ein Problem, das sich vom Damoklesschwert immer mehr zur tickenden Zeitbombe entwickelt: eine Softwaremodernisierung in Richtung Cloud First/Mobile First. Die bräuchte es nämlich in vielen Fällen dringend, das klappt aber nicht. Warum? Weil „wir“ die neuen Techniken erst lernen und dann die bereits funktionierende, akzeptierte und fertig getestete Lösung wegwerfen und neu machen müssten. Weil ganze Teams auf dem Wissenstand von WinForms 2.0 oder vielleicht 4.0 sind, und mit ihnen natürlich auch ihre Software. Und dafür gibt es keine Lösung, die bezahlbar oder zeitlich machbar wäre. Schließlich bräuchte man eine XAML-Technologie wie WPF, Xamarin Forms oder Universal-Windows-Apps, um eine saubere Architektur auf die Beine zu stellen, und damit wäre der Designbruch viel zu groß, eine solche Modernisierung Schritt für Schritt zu machen, damit ein Team auch wirklich hinterherkommt – oder nicht?

Die MVVM-Strategie

Es gibt ein Entwicklungsentwurfsmuster, das in der Welt der Cross-Plattform-Entwicklung zunehmend beliebter wird, weil es auf wirklich funktionierende Weise hilft. Mit ihm können große Teile an komplexem...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang