Sie sind hier
E-Book

Eclipse RCP im Unternehmenseinsatz

Verteilte Anwendungen entwerfen, entwickeln, testen und betreiben

AutorStefan Reichert
Verlagdpunkt
Erscheinungsjahr2012
Seitenanzahl296 Seiten
ISBN9783898649803
FormatPDF
KopierschutzWasserzeichen/DRM
GerätePC/MAC/eReader/Tablet
Preis9,99 EUR
Eclipse-RCP-Clients finden sich heute in einfachen Desktopanwendungen und in komplexen Frontends für verteilte Unternehmensanwendungen. Der Einsatz im Unternehmensumfeld stellt jedoch besondere Herausforderungen an die Clients, die nicht offensichtlich sind und bislang wenig dokumentiert wurden. Dieses Buch geht daher detailliert auf die speziellen Herausforderungen ein und bietet praktische Lösungen für den Unternehmenseinsatz an. Professionelle Java-Entwickler lernen hier, wie man Eclipse RCP einsetzt, um flexible und robuste Enterprise-Anwendungen zu realisieren.

Stefan Reichert, Diplom-Wirtschaftsinformatiker (FH), arbeitet als Softwarearchitekt in Hamburg. Er beschäftigt sich seit mehreren Jahren mit verteilten Java-Enterprise-Anwendungen, serviceorientierten Architekturen, Eclipse und Eclipse RCP. Darüber hinaus ist er Autor mehrerer Fachartikel und regelmäßig Referent auf Konferenzen.

Kaufen Sie hier:

Horizontale Tabs

Blick ins Buch
Inhaltsverzeichnis
Inhaltsverzeichnis8
Einführung14
Enterprise Eclipse RCP15
Warum dieses Buch?16
Themen und Aspekte16
Aufbau und Gliederung17
Dankeschön17
Teil I Architektur18
1 Aspekte der Architektur verteilter Anwendungen20
1.1 Architekturvarianten20
1.1.1 Client-Server-Architektur21
1.1.2 3-Schichten-Architektur22
1.1.3 Mehrschichten-Architektur23
1.1.4 Architekturen für EERCP-Anwendungen24
1.2 Entwurfsprinzipien24
1.2.1 Modularisierung24
1.2.2 Abhängigkeit und Hierarchie27
1.2.3 Serviceorientierung29
1.3 Funktionale Kernbestandteile29
1.3.1 Datenerfassung30
1.3.2 Datenvalidierung32
1.3.3 Datenverarbeitung34
1.3.4 Datenzugriff und -haltung35
1.3.5 Visualisierung der Daten36
1.4 Kommunikation36
1.4.1 Kommunikation in verteilten Systemen36
1.4.2 Kommunikationsprotokolle38
1.4.3 Eignung von Protokollen für die Kommunikation41
2 Komponenten42
2.1 Komponenten in Eclipse43
2.1.1 Technische Komponenten43
2.1.2 Der Begriff Bundle43
2.1.3 Bundletypen44
2.1.4 Bundles und Features45
2.2 Strukturierungsprinzipien45
2.2.1 Fachliche Bundles: Der richtige Schnitt46
2.2.2 Technische Bundles: Querschnittsfunktionalität46
2.3 Komponentenbildung47
2.3.1 Bundle-Struktur47
2.3.2 Packagestruktur49
2.3.3 Public und Private API50
2.4 Versionierung von Bundles51
2.4.1 Versionierungsschemata51
2.4.2 Versionsnummern vergeben52
2.4.3 Verschiedene Versionen des gleichen Bundles verwenden53
2.5 Bundle Classloading54
2.5.1 Standard-Classloading54
2.5.2 Classloader Hell54
2.5.3 Beispiel56
3 UI-Architektur64
3.1 Eclipse-Oberflächen65
3.1.1 Hauptfenster66
3.1.2 Menüzeile66
3.1.3 Toolbar66
3.1.4 Statuszeile66
3.1.5 Editoren66
3.1.6 Views67
3.1.7 Perspektiven67
3.2 Oberflächenmetaphern68
3.2.1 Die Workbench-Metapher68
3.2.2 Die Desktop-Metapher70
3.2.3 Die richtige Metapher wählen71
3.3 UI-Varianten72
3.3.1 Workbench mit Perspektiven72
3.3.2 Workbench mit einer Perspektive74
3.3.3 Eclipse Riena75
3.4 Oberflächenkonzept75
3.4.1 Aufbau der Oberfläche76
3.4.2 Inhalt der Oberfläche77
3.4.3 Oberflächen und Rollen78
4 Referenzanwendung80
4.1 Dysis, eine Zeiterfassung80
4.2 Fachliche Beschreibung der Anwendung81
4.3 Anwendungsfälle82
4.3.1 Am System anmelden82
4.3.2 Vom System abmelden82
4.3.3 Stammdaten erfassen83
4.3.4 Stammdaten bearbeiten83
4.3.5 Zeiten buchen83
4.4 Datenmodell83
4.5 Architektur84
4.5.1 Fachlicher Schnitt85
4.5.2 Umsetzung der Clientseite86
4.5.3 Umsetzung der Serverseite87
4.5.4 Kommunikation88
4.6 Installation88
4.6.1 Das Dysis-Projekt89
4.6.2 Hostnamen konfigurieren89
4.6.3 Die Datenbank einrichten90
4.6.4 Den Server einrichten90
4.6.5 Den Client installieren91
Teil II Implementierung92
5 Enterprise UI94
5.1 Login94
5.1.1 Authentifizierung95
5.1.2 Automatische Authentifizierung95
5.1.3 Sprachauswahl98
5.2 Navigation100
5.2.1 Strukturen für Funktionen101
5.2.2 Funktionsgruppen darstellen102
5.3 Tabellen und Bäume104
5.3.1 Datenmengen darstellen104
5.3.2 Datenmengen laden105
5.4 Suche108
5.4.1 Schema einer Suche108
5.4.2 Generische Suche109
5.4.3 Grafischer Aufbau110
5.4.4 Funktionales Schema113
5.5 Nebenläufigkeit114
5.5.1 Serviceaufrufe auslagern114
5.5.2 Das UI synchronisieren115
5.5.3 Controller-Objekte einsetzen116
5.6 Wizards einsetzen124
5.6.1 Das New-Wizard-DropDown-Menü124
5.6.2 Wizards an Perspektiven binden125
5.6.3 Perspektiven an Wizards binden126
5.7 UI-Elemente maskieren127
5.7.1 Datumsfelder darstellen128
5.7.2 Textfelder maskieren128
6 Ressourcenschonende Implementierung130
6.1 Betriebssystemressourcen und Speicher130
6.1.1 SWT130
6.1.2 Handles131
6.1.3 UI-Elemente131
6.1.4 Weitere Betriebssystemressourcen133
6.1.5 Speicherbedarf133
6.2 Profiling137
6.2.1 Überwachung der Handles137
6.2.2 Speicherverbauch138
6.3 Optimierungspotenziale139
6.3.1 Systemressourcen wiederverwenden140
6.3.2 Clientseitig cachen140
6.3.3 UI-Designrichtlinien140
7 Databinding142
7.1 Idee und Grundgedanke142
7.1.1 Komplexe Verbindungen143
7.1.2 MVC – Model-View-Controller143
7.1.3 Synchronisation144
7.2 Konzept der Synchronisation145
7.2.1 Transformation145
7.2.2 Validierung146
7.2.3 Phasen der Synchronisation146
7.2.4 Synchronisationsarten146
7.3 Validierung147
7.3.1 Validierungstypen147
7.3.2 Ergebnis der Validierung148
7.3.3 Einbindung der Validierung150
7.4 Eclipse Databinding150
7.4.1 DataBindingContext150
7.4.2 IObservableValue150
7.4.3 Synchronisationsarten151
7.4.4 Konvertierung152
7.4.5 Validierung152
7.4.6 Darstellung154
8 Hilfe162
8.1 Eclipse-Online-Hilfe162
8.1.1 Abhängigkeiten163
8.1.2 Aufbau164
8.1.3 Online-Hilfen erstellen165
8.1.4 Online-Hilfe einbinden174
8.2 Kontextsensitive Hilfe175
8.2.1 Dynamic Help Bundles175
8.2.2 Dynamic Help erstellen176
8.3 Cheat Sheets178
8.3.1 Cheat Sheet Bundles179
8.3.2 Cheat Sheets erstellen180
8.3.3 Cheat Sheets integrieren180
9 Remoting184
9.1 Remoting-Mentalitäten185
9.1.1 Transparentes Remoting185
9.1.2 Service Remoting185
9.1.3 Rahmenbedingungen185
9.2 Einbindung in den Client186
9.3 Spring Remoting187
9.3.1 Konfiguration des Service187
9.3.2 Konfiguration des Clients190
9.3.3 Service Proxys verwenden191
9.3.4 Das ServiceLocator-Entwurfsmuster192
9.3.5 Service Proxys im OSGi-Kontext195
9.3.6 Clientseitige Dependency Injection197
9.4 OSGi Remoting201
10 Nichtfunktionale Anforderungen204
10.1 Verfügbarkeit204
10.1.1 Clustering204
10.1.2 Offline-Fähigkeit205
10.2 Performance206
10.2.1 Granularität der Kommunikation207
10.2.2 Datentransport207
10.2.3 Serverseitiges Caching209
10.2.4 Clientseitiges Caching209
10.3 Sicherheit216
10.3.1 Authentifizierung216
10.3.2 Autorisierung222
10.3.3 Datensicherheit225
10.3.4 Codesicherheit228
11 Continuous Integration230
11.1 Automatisiertes Bauen230
11.1.1 Produktexport aus dem UI231
11.1.2 PDE-Build-Skript231
11.1.3 Produktexport mit Ant233
11.1.4 Automatisierter Produktexport237
11.2 Automatisiertes Testen241
11.2.1 JUnit-Plugin-Tests241
11.2.2 JUnit-Plugin-Tests aus dem UI ausführen243
11.2.3 Anwendungen für Tests starten245
11.2.4 Automatisierte JUnit-Plugin-Tests248
11.2.5 Oberflächen testen254
11.3 Continuous Build Server255
Teil III Betrieb258
12 Deployment260
12.1 Eclipse RCP als Client260
12.2 Softwareverteilung261
12.2.1 Rahmenbedingungen auf dem Zielsystem261
12.2.2 Softwareverteilungssysteme263
12.2.3 Installation via Java Web Start263
12.2.4 Installation via NSIS269
12.3 Softwareaktualisierung269
12.3.1 Die Update-Problematik269
12.3.2 Externe Softwareaktualisierung271
12.3.3 Den Eclipse Update Manager verwenden271
13 Monitoring276
13.1 Logging und Tracing276
13.1.1 Eclipse Log277
13.1.2 Tracing280
13.1.3 Logging-Frameworks283
13.1.4 Einheitliches Logging283
13.1.5 End-to-End Logging286
13.2 Keep-alive-Meldungen287
13.2.1 Session Handling287
13.2.2 Time-out287
13.2.3 Logout288
13.2.4 Keep-alive288
Literaturverzeichnis290
Index294

Weitere E-Books zum Thema: Java - JavaScript

SAP für Java-Entwickler

E-Book SAP für Java-Entwickler
Konzepte, Schnittstellen, Technologien Format: PDF

Seit kurzem forciert SAP die Verbreitung der Netweaver-Technologie und initiiert damit eine Gleichstellung von Java und ABAP als Sprachen zur SAP-Programmierung. Dieses Buch leistet einem erfahrenen…

SAP für Java-Entwickler

E-Book SAP für Java-Entwickler
Konzepte, Schnittstellen, Technologien Format: PDF

Seit kurzem forciert SAP die Verbreitung der Netweaver-Technologie und initiiert damit eine Gleichstellung von Java und ABAP als Sprachen zur SAP-Programmierung. Dieses Buch leistet einem erfahrenen…

Programmieren in Java 1.5

E-Book Programmieren in Java 1.5
Ein kompaktes, interaktives Tutorial Format: PDF

Die Autoren geben eine kompakte und fundierte Einführung in die objektorientierte Programmierung mittels Java. Im Zentrum stehen dabei die Vermittlung grundlegender Programmierfertigkeiten, also der…

Software modular bauen

E-Book Software modular bauen
Architektur von langlebigen Softwaresystemen - Grundlagen und Anwendung mit OSGi und Java Format: PDF/ePUB

Software wird in Projekten zumeist unter extremem Zeitdruck geschrieben. Dieser Zeitdruck liefert auch gute Ergebnisse, aber die Software ist für spätere Erweiterungen nicht geeignet. Daher sollten…

JavaScript und Ajax

E-Book JavaScript und Ajax
Das Praxisbuch für Web-Entwickler Format: PDF

Fast alle Webseiten haben eines gemeinsam: Sie bestehen aus JavaScript-, HTML- und CSS-Code. Während HTML und CSS stagnieren, hat sich Java- Script mit Ajax zur dominierenden Web-2.0-Technik…

SAP für Java-Entwickler

E-Book SAP für Java-Entwickler
Konzepte, Schnittstellen, Technologien Format: PDF

Seit kurzem forciert SAP die Verbreitung der Netweaver-Technologie und initiiert damit eine Gleichstellung von Java und ABAP als Sprachen zur SAP-Programmierung. Dieses Buch leistet einem erfahrenen…

Weitere Zeitschriften

Atalanta

Atalanta

Atalanta ist die Zeitschrift der Deutschen Forschungszentrale für Schmetterlingswanderung. Im Atalanta-Magazin werden Themen behandelt wie Wanderfalterforschung, Systematik, Taxonomie und Ökologie. ...

Computerwoche

Computerwoche

Die COMPUTERWOCHE berichtet schnell und detailliert über alle Belange der Informations- und Kommunikationstechnik in Unternehmen – über Trends, neue Technologien, Produkte und Märkte. IT-Manager ...

Gastronomie Report

Gastronomie Report

News & Infos für die Gastronomie: Tipps, Trends und Ideen, Produkte aus aller Welt, Innovative Konzepte, Küchentechnik der Zukunft, Service mit Zusatznutzen und vieles mehr. Frech, offensiv, ...

Deutsche Hockey Zeitung

Deutsche Hockey Zeitung

Informiert über das internationale, nationale und internationale Hockey. Die Deutsche Hockeyzeitung ist Ihr kompetenter Partner für Ihr Wirken im Hockeymarkt. Sie ist die einzige ...

ERNEUERBARE ENERGIEN

ERNEUERBARE ENERGIEN

ERNEUERBARE ENERGIEN informiert durch unabhängigen Journalismus umfassend über die wichtigsten Geschehnisse im Markt der regenerativen Energien. Mit Leidenschaft sind wir stets auf der Suche nach ...

FileMaker Magazin

FileMaker Magazin

Das unabhängige Magazin für Anwender und Entwickler, die mit dem Datenbankprogramm Claris FileMaker Pro arbeiten. In jeder Ausgabe finden Sie von kompletten Lösungsschritten bis zu ...