Pattern zur Wiederverwendung von Code in ASP.NET

Beim Entwickeln von komplexen dynamischen ASP.NET-Anwendungen ist es wichtig, Code-Doppelungen möglichst zu vermeiden und so die Wiederverwertbarkeit und Flexibilität der Anwendung zu verbessern. Bei einigen Anwendungen führen die Benutzer womöglich viele verschiedene Aktionen aus, die unterschiedliche Controller-Logik erfordern, aber zur selben Darstellung führen. So führt zum Beispiel die Anzeige einer Produktliste, in der Benutzer Produkte hinzuzufügen oder entfernen können, zur Anzeige derselben Produktansicht mit den modifizierten Daten, nachdem der Controller den Benutzer durch den Vorgang des Hinzufügens und Löschens geleitet hat.

Der erste Schritt in Richtung bessere Wiederverwertung besteht darin, die Codemenge an Script in Server Pages zu minimieren. Die Logik von Scripts, die in Seiten eingebettet sind, ist nur schwer oder gar nicht wiederzuverwerten und führt zu einer schlechten Trennung zwischen View und Controller. Solche Scripts sind außerdem schwieriger zu testen und zu debuggen. Statt des Hinzufügens von Scriptcode zu einer .ASPX-Seite ist es effizienter, den Controller mithilfe von Klassen zu implementieren, was für ein einheitliches Erscheinungsbild und eine ebensolche Navigation der gesamten Webanwendung sorgt und die Wiederverwendung von Präsentationslogik innerhalb der Anwendung ermöglicht.

Es gibt zwei unterschiedliche Pattern, mit denen man Controller-Klassen für ASP.NET-Anwendungen implementieren kann. Der Page Controller unterstützt das Erstellen einer Anwendung, bei der die Navigation statisch ist, aber die Seiten dynamisch erzeugt werden. Bei komplexeren Anwendungen, bei denen die Navigation dynamisch oder nach bestimmten Regeln konfigurierbar ist (zum Beispiel Benutzerberechtigungen oder Anwendungsstatus), ermöglicht der Front Controller eine effizientere Implementierung. Im Folgenden wird jedes dieser Pattern genauer beschrieben.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

Jedes zweite Gerät mit Redline-Infostealer infiziert

Infostealer-Infektionen haben laut Kaspersky-Studie zwischen 2020 und 2023 um mehr als das sechsfache zugenommen.

4 Stunden ago

Kaspersky warnt vor kritischen Sicherheitslücken in Cinterion-Modems

Betroffen sind Millionen IoT- und M2M-Geräte Geräte weltweit. Unter anderem können Angreifer per SMS Schadcode…

9 Stunden ago

Google schließt Zero-Day-Lücke in Chrome

Von ihr geht ein hohes Risiko aus. Angreifbar sind Chrome für Windows, macOS und Linux.

3 Tagen ago

KI erkennt Emotionen in echten Sportsituationen

Forschende des KIT haben ein Modell zur Emotionsanalyse entwickelt, das affektive Zustände ähnlich genau wie…

4 Tagen ago

Ermittlern gelingt weiterer Schlag gegen Ransomware-Gruppe LockBit

Sie decken die Identität des Kopfs der Gruppe auf. Britische Behörden fahnden mit einem Foto…

5 Tagen ago

Apple stellt neuen Mobilprozessor M4 vor

Er treibt das neue iPad Pro mit OLED-Display an. Apple verspricht eine deutliche Leistungssteigerung gegenüber…

5 Tagen ago