Die Renaissance des Rich Client

24.11.2003
Von 


Wolfgang Miedl arbeitet Autor und Berater mit Schwerpunkt IT und Business. Daneben publiziert er auf der Website Sharepoint360.de regelmäßig rund um Microsoft SharePoint, Office und Social Collaboration.

Auch Avanade-Manager Zill sieht im Projektgeschäft die Web-Service-Features als entscheidendes Argument: "Für unsere Kunden ist das netzunabhängige Arbeiten der Treiber für Smart-Client-Anwendungen - und Web-Services sind hierfür die ideale Grundlage." Neben der hohen Usability zähle dabei vor allem eine zentrale Geschäftslogik, auf die neben den Smart Clients auch andere Frontends wie Browser zugreifen können. Um eine lose Koppelung zu erreichen, die eine lokale Anwendung unabhängig von einer Server-Anbindung macht, sind spezielle Datenzugriffs-Schnittstellen notwendig. Bei .NET übernehmen die Komponenten von ADO.NET diese Aufgabe. Sie puffern beispielsweise im gemischten Online-Offline-Betrieb den Zugriff auf Datenbanken, halten Datensätze am Client vor und synchronisieren bei Verbindung im Hintergrund. Der Endanwender merkt von alledem nichts.

Das wichtigste Feature eines "echten" Smart Client ist die Automatisierung von Installation und Update - schließlich haben diesbezügliche Defizite den Rich Client unpopulär gemacht. .NET stellt mehrere Techniken bereit, um Anwendungen am Server zentral bereitzustellen und von dort auf die Clients auszurollen. Eine ungewöhnliche Variante Server-basierender Anwendungen dürfte dabei der Programmaufruf über einen HTML-Link sein: Welcher vernünftige Anwender klickt heutzutage schon auf eine EXE-Datei, die auf einer Web-Seite als Link angeboten wird, und lässt dieser Anwendung freien Lauf? Kein Problem ist das mit Windows-Forms-Programmen, wie das anschauliche Beispiel von Chris Sells zeigt. Sofern am Client-PC das .NET-Framework installiert ist, wird diese EXE-Datei -

es handelt sich um ein einfaches Tetris-Spiel - beim Klick im Browser in den lokalen Assembly-Cache geladen und sofort ausgeführt.

Das direkte Ausführen einer unbekannten EXE-Datei war bisher wegen der Sicherheitsrisiken auf der Win-32-Plattform ein absolutes Tabu. Durch ein fein abgestuftes Sicherheitskonzept des .NET-Frameworks kann nun aber jeglicher Zugriff auf Client-Ressourcen wie etwa das Dateisystem kontrolliert oder unterbunden werden. Dabei berücksichtigt die Code Access Security beispielsweise die Herkunft des Codes, eine digitale Signatur oder den Server-Pfad der Installation. Unbekannter Code aus dem Internet wird generell als nicht vertrauenswürdig eingestuft und erhält nur minimale Ausführungsrechte. Nachteil dieser Art der zentralen Softwarebereitstellung ist jedoch, dass die Anwendung über einen Link im Browser gestartet werden muss.

Für Unternehmen bietet sich eine benutzerfreundlichere Möglichkeit der Smart-Client-Installation an: Eine kleine Programmkomponente wird am Endgerät installiert, wobei deren XML-Metadaten das Server-Verzeichnis enthalten, in dem bei jedem Programmstart nach Updates gesucht werden soll. Sobald der Administrator eine aktuellere Version auf den Server stellt, erkennt die Anwendung dies selbständig und lädt die neueste Variante. Im Prinzip überflüssig werden damit die heute üblichen Werkzeuge für die Verteilung von Anwendungen auf die Clients sowie deren Überwachung.

Sich selbst installierende .NET-Anwendungen