Categories: Software

Web Services: Johns ASPX GUI-Schicht

Die Anwendungen haben inzwischen einen Punkt erreicht, wo man mit der Implementierung der Präsentations-Schichten und des Codes für die Benutzerinteraktion beginnen kann. Die Teile 1 bis 5 dieser Artikelreihe haben sich mit dem Erstellen eines Datenbankschemas, der Schicht für die gespeicherten Prozeduren, der Datenbankkomponenten-Klassen sowie den Business-Komponenten-Klassen befasst. In diesem Artikel geht es um die Implementierung von Johns ASPX GUI-Schicht, die alle anderen Schichten zusammenfügt.


Vorausgegangene Artikel
  1. Web Services: Entwicklung eines Szenarios
  2. Web Services B2B-Implementierung: Komponenten, Ausnahme-Behandlung und Logging
  3. Web Services: Datenbank-Design
  4. Implementierung der Business-Logik
  5. Implementierung von B2B Web Services: Toms Anwendung

Planung ist alles

Aller Erfahrung nach ist die Präsentationsschicht die bei weitem chaotischste und am schwierigsten zu verwaltende Code-Schicht. Hier stoßen die gut organisierten objektorientierten Business- und Datenbank-Schichten mit der Unordnung von Präsentations-Logik und Datenübertragung zusammen.

Glücklicherweise hat das.NET Framework deutliche Fortschritte in Richtung einer einheitlicheren und konsistenteren Präsentationsschicht gemacht, indem OO-Prinzipien auf beinahe jedes verfügbare HTML-Element angewendet werden. Wenn dann noch benutzerdefinierbare GUI-Komponenten, Stylesheets und weitere effizienzsteigernde Funktionen hinzukommen, entsteht eine wesentlich strukturiertere Präsentationsschicht als bei früheren Methoden, wo ADO Recordset-Abfragen mit ASP-Servercode und HTML-Präsentationscode vermischt waren.

Für Johns Anwendung kann man auf drei einfache, aber leistungsfähige Designmuster zurückgreifen, mit denen die Präsentationsschicht strukturiert werden kann: ein Benutzersteuerelement (User Control), ein Stylesheet und eine ASPX-Identifier-Klasse. Zuerst das Stylesheet.

Hierzu öffnet man erst das Projekt mit Johns ASP.NET-Lösung und dann die Datei Styles.cssstylesheet, die standardmäßig zusammen mit der Lösung erstellt wurde. Den Inhalt dieser Datei ersetzt man durch den Code aus Listing I.

Die Arbeit an einem Stylesheet beginnt immer damit, dass man sich Gedanken über ein Farbschema macht und für die unterschiedlichen HTML-Elemente Style-Klassen einrichtet. Diese kann man dann erweitern, indem man Variationen bildet, wie z. B. größere Schriftarten, Fettdruck etc. Das Praktische an Stylesheets ist, dass man das gesamte Look & Feel einer Anwendung durch Bearbeiten einer einzigen Datei verändern kann. Dies spart unzählige Stunden aufwendiger Seitenänderungen, falls der Kunde eines Tages entscheidet, dass alle Schaltflächen nun hellblau statt dunkelblau sein sollen.

Zur Erstellung einer ASPX-Identifier-Klasse klickt man mit der rechten Maustaste auf das Haupt-ASP.NET-Projekt und fügt eine neue Klasse namens WebPageNames.vb hinzu. In diese Klasse kopiert man den Code aus Listing J.

Page: 1 2 3

ZDNet.de Redaktion

Recent Posts

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

3 Stunden ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

19 Stunden ago

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

23 Stunden ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

23 Stunden ago

Lags beim Online-Gaming? DSL-Vergleich und andere Tipps schaffen Abhilfe

Beim Online-Gaming kommt es nicht nur auf das eigene Können an. Auch die technischen Voraussetzungen…

24 Stunden ago

GenKI-Fortbildung immer noch Mangelware

Fast jedes zweite Unternehmen bietet keinerlei Schulungen an. In den übrigen Betrieben profitieren oft nur…

1 Tag ago