Eclipse 4 RCP Training
Kursbeschreibung
Als Entwickler lernen Sie in 5 Tagen die professionelle Eclipse RCP Entwicklung auf Stand der
Eclipse 4.2 Platform kennen. Neue Ansätze wie das modellierte Applikationsmodel,
Dependency Injection und der Eclipse Context erlauben Ihnen effizient und flexibel zu entwickeln und
das Rendering Framework und deklarative Styling erzeugen visuell ansprechende Ergebnisse.
Umfangreiche Übungen erlauben Ihnen das erlernte Wissen zu festigen.
Dies ist keine reine Deltaschulung, d.h. der Kurs vermittelt
Ihnen auch die notwendigen Technologien, wie SWT, JFace, Databinding,
OSGi Modularität, OSGi Services, den Product Export und vieles mehr,
welche Sie auch für Eclipse 3.x Projekte einsetzen können.
Auch wird das Eclipse Kompatibilitätslayer behandelt, welches Ihnen erlaubt Ihre Eclipse 3.x Applikationen
und Plug-ins auf Eclipse 4 laufen zu lassen. Da Eclipse 3.8 das letzte Eclipse 3.x Release sein wird,
ist es gut zu lernen, wie man auf Eclipse 4 migrieren kann.
In der offenen Schulung wird die optimale Betreuung durch kleine Gruppengrößen sichergestellt.
Referenten
Lars Vogel
Lars Vogel ist
Committer im Eclipse 4 Projekt und betreibt die Webseite
vogella.com mit vielen Eclipse-bezogenen
Tutorials.
Mit mehr als einer Million Besuchern monatlich, ist
vogella.com eine der führenden Eclipse Resourcen weltweit.
Lars Vogel ist desweiteren erfolgreicher Buchauthor und schreibt aktuell an einen Eclipse 4 Buch,
welches die Basis für die Schulung darstellt.
Er ist regelmässiger Sprecher auf internationalen Konferenzen wie der
Devoxx, O'Reilly Android Open, EclipseCon und dem
Google Eclipse Day und führt seit ca. 13 Jahren erfolgreich Schulungen durch.
Lars wurde 2010 als Eclipse Top Contributor gewählt.
Marcel Bruch
Dr. Marcel Bruch ist Project Lead des
Eclipse Code Recommenders Projekts (ein Assistenzsystem für Softwareentwickler, das Entwicklern beim Erlernen neuer Bibliotheken unterstützt). Eclipse Code Recommenders wurde 2012 mit dem Eclipse Community Award als Most Innovative Eclipse Project 2012 ausgezeichnet. Marcel entwickelt seit mehr als 8 Jahren Plug-ins für Eclipse.
Darüber hinaus ist er Speaker auf zahlreichen Konferenzen, Java User Groups sowie Eclipse DemoCamps und hält Vorlesungen und Schulungen zum den Themen Softwareentwicklung und Plug-in Entwicklung in Eclipse.
Anmeldung
Auf Anfrage erhalten Sie alle weiteren Informationen und ein
unverbindliches Angebot für die Schulung.
Agenda - Eclipse 4 RCP Core Development
- Introduction into Eclipse
and Eclipse 4
- Eclipse 3.x in comparison with Eclipse 4.x
- Components of the Eclipse platform
- Eclipse Public License
- Further information sources
- Example Applications
- Eclipse Architecture
- Software components
- Important configuration files, plugin.xml, Manifest.mf
- Extensions and extension Points
- Parts (Views and Editors), Perspectives, PartStacks and PartSashContainer
- Deployment of an Eclipse application
- Feature projects
- Product configuration file
- Branding of the application, Splash-Screen
- Product export
- Start and launch configuration
- Problem analysis during export
- Eclipse 4 application model
- Application model
- Model editor
- Accessing the model at runtime
- Connection to the Java classes
- Model add-ons
- User interface components overview
- Dependency injection and Annotations
- The Eclipse dependency injection framework
- Define dependencies via @Inject
- Field, Method and Contructor dependency injection
- Behavior Annotations
- Eclipse 3.x - API definition via inheritance
- Eclipse 4.x - API definition via annotations
- Lifecyle Hooks
-
Commands, Handlers, Menus and Toolbars
- Commands and Handlers
- Comparision to Eclipse 3.x
- Menus and Toolbars
- View Menus and Toolbars
- Scope of handlers
- Core expressions
- Naming schema for ID's
- Keybindings
-
IEclipseContext - Scope of injection
- What can be injected
- Injection search strategy
- Creation of injectable objects
- Model elements and dependency injection
- Important model elements for dependency injection
- User Interface Development with SWT
- Overview SWT: Standard Widget Toolkit
- Class hierarchy
- Available widgets
- SWT event handling
- SWT layout manager: FillLayout, RowLayout and GridLayout
- Usage of user interface builder: SWT Designer
- SWT Snippets
- Custom Widgets and Nebula Widgets
- Modularity of the Eclipse platform with OSGi
- Plug-ins and bundles
- OSGi framework Equinox
- OSGi framework start configuration
- Definition of dependencies between plug-ins
- OSGi console
- API definition and design
- Introduction JFace
- Overview JFace components
- SWT ressourcen management
- Control Decorations
- Introduction into the Viewer framework(ComboViewer and TreeViewer)
- Label Provider and Content Provider
- Selectionen in a Viewer
- JFace TableViewer
- ColumnLabelProvider and CellLabelProvider
- Editable tables
- Sorting and filtering tables
- StyledCellLabelProvider
- Hidding table columns
- Tooltips
- Solving common layout issues with TableViewerColumn
- Platform services and interaction of components
- Service Overview
- Part Service
- Model Service
- Selection Service
- Command and Handler Service
- Concurrent UIs
- SWT-Threading
- Avoiding invalid thread access
- Asynchronous processing with the Eclipse Jobs framework
- Editoren Handling in Eclipse 4
- Parts - Views vs. Editoren
- Model property Dirtable
- Saving parts via the Part Service
Agenda - Eclipse RCP Advanced Development
- OSGi Services
- Services and Service Registry
- Publish services
- Usage of Services
- Tracking of Services with ServiceTracker
- Declarative Services
- Dependency Injection für Services
- Start level
- OSGi services and Eclipse context
- Using dependency injection for own objects
- Overview
- Using dependency injection to get own objects
- Using dependency injection to create own objects
- Accessing and extending the Eclipse context
- Accessing the context
- Putting objects in the context
- Best practices
- Dialog and Wizards
- SWT standard dialoge
- JFace Dialog and TitleDialog Klasse
- Wizards
- Fragment Projects
- Internationalization
- Translation of Strings in plugin.xml, Application.e4xmi and source code
- ResourceBundle and Eclipse NLS
- Usage of Fragments
- Flexible translations in Eclipse 4 via services
[
- JFace Data Binding
- Observe properties: Observable and ObservableValue
- Observables for SWT, JFace, Pojos and Java Beans
- Bind values: Binding and DataBindingContext
- Convertion
- Validation
- Update Strategies
- Advanced Binding with JFace Viewern and Selections
- JFace Databinding Snippets
- Settings and Preferences
- Configuration Area and Workspace
- Persistence of the Eclipse application
- Part persistence with Mementos
- Preference
- JFace Preference Dialog
- Modularity for Eclipse 4 applications
- Contributing to the application model
- Static model contributions with Fragments
- Dynamic model contributions with Processors
- Merging model elements at startup
- The Renderer Framework
- Default Renderer
- Define your own Renderer
- Usage of the renderer factory
- Outlook: Using JavaFX as renderer
- Declarative Styling with CSS
- Select styling for your application
- Colors and Gradients
- Styling specific widgets
- Dynamic style switching with themes
- CSS Spy
- Updates with Eclipse p2
- Overview: the p2 Provisioning Platform
- Creating p2 update sides
- Using the p2 API
- Update products and features
- Automatic product updates during startup
- Target Platform
- Definition of development components
- Creation of target platform definitions
- Compatibility Layer for Eclipse 3.x
- Running Eclipse 3.x plug-in on top of Eclipse 4
- Products based on features or Plug-ins
- Mixed model
- Best Practices and
Tipps & Tricks
- Bug reporting
- Component based development
- Using OSGi services
- Usage of own extension points
- Using model dynamics
- Usage of Target Platform
- Naming Conventions
- Dependency Management
- Tools suggestions for Eclipse development
Schulungskonzept
- Angewandtes Lernen:
Erlerntes Wissen wird sofort bei der Entwicklung eines durchgängigen
Schulungsbeispiels gefestigt und vertieft.
- Fachkundiger Referent:
Lars Vogel ist seit ca. 8 Jahren im Eclipse Umfeld tätig und führt seit ca. 13 Jahren Schulungen durch.
- Individuelle Betreuung:
In der offenen Schulung` wird die Gruppengröße auf max. 12 Teilnehmern festgelegt.
- Umfangreiche
Schulungsunterlagen: Sie erhalten Schulungsunterlagen
mit ausführlichen Anleitungen und Erläuterungen sowohl
im Druck als auch in PDF Form.
Voraussetzungen
Die Schulung richtet sich an Softwareentwickler und -architekten.
Vorausgesetzt werden gute Kenntnisse der Java-Programmierung und
Grundkenntnisse mit Eclipse als Java-Entwicklungsumgebung.
Unverbindliches Angebot
Fordern sie ein unverbindliches Angebot für einen der möglichen Termine
an:
Eclipse RCP Schulungstermine.