Eclipse Magazin 1.11
Keine Kommentare

Verteilte Versionierung mit EGit

Erhältlich ab: November 2010
Umfang: 90 Seiten Seiten
Autoren / Autorinnen:
Jürgen Becker, Christian Brand, Andreas Graf, Carsten Gräf, Matthias Gorning, Christian Hein, Jonas Helming, Tim Kaiser, Thorsten Kamann, Maximilian Koegel, Michael Lukas, Jürgen Pasch, Tom Ritter, Tom Seidel, Matthias Sohn, Mirko Stocker, Marc Teufel, Michael Wagner, Michael Wenz

Titelthema


Sei kein Depp!
GIT oder Subversion?
Thorsten Kamann


Verteilte Versionierung und Integration
Entwickeln im Team mit EGit und Gerrit Code Review
Matthias Sohn


Committen oder Pushen?
Die Umstellung von Intlands Softwareentwicklung auf das Distributed Version Control System Mercurial
Michael Lukas


Testen


Drei Schritte zur agilen Prozessoptimierung
Produktivitätssteigerung durch CodePro AnalytiX
Jim Christensen


Projekt e4


Angepackt
Teil 2: Aufbau einer e4-Anwendung, Einführung in Dependency Injection und OSGi Declarative Services
Marc Teufel


Development


Von Natures und Buildern
Der inkrementelle Build in Eclipse
Carsten Gräf


Von Werkzeugen zur Werkzeugkette
Dateien und Modelle mit ModelBus synchronisieren und gleichzeitig nutzen
Tom Ritter, Christian Hein und Michael Wagner


Nicht nur für Java
Statische Analyse für C
Andreas Graf


Eat your own dogfood!
Eine Einführung in die Scala IDE für Eclipse
Mirko Stocker


GUI-Tests mit Jubula
Ein neuer Star im Eclipse-Universum


Modeling


Graphiti
Entwicklung hochwertiger grafischer Modelleditoren
Christian Brand, Matthias Gorning, Tim Kaiser, Jürgen Pasch und Michael Wenz


EMF Client Platform
Mit einem Klick zur eigenen EMF-Anwendung
Jonas Helming und Maximilian Koegel


Runtime


SWT mit Stil
SWT/Qt: Die neue SWT-Plattform mit umfangreichen Stylingmöglichkeiten
Jürgen Becker


Marktplatz zum Selbstbau
Anbindung des Eclipse Marketplace Clients an einen eigenen Marktplatz
Tom Seidel


Interview


Eclipse Gemini
Mike Keith über den Enterprise-OSGi-Standard bei Eclipse


Ein weiterer Eckstein für Eclipse & OSGi
Kaloyan Raev über das Projekt OSGi Enterprise Tools


Das Ende von Eclipse auf dem Mac?
David Green über die Konsequenzen Apples Abkehr von Java


Die Suche nach dem neuen Standard


Hoch geht es zurzeit in Oracles Java-Universum her: Nach dem endgültigen Vollzug der Sun-Übernahme im Januar beendet Oracle OpenSolaris, klagt gegen Google wegen Android, stellt eine neue Roadmap für JDK 7 und JDK 8 vor, kündigt eine Neuausrichtung von JavaFX ohne JavaFX Script an, gewinnt IBM als Partner für die OpenJDK-Entwicklung, scheitert bei der Exekutiv-Komitee-Wahl des JCP mit seinem nominierten Unternehmen Hologic und, so erreicht uns kurz vor Redaktionsschluss die Meldung, wird in Kooperation mit Apple an einer OpenJDK-Version für Mac-Betriebssysteme arbeiten. Während sich die eine der großen Open Source Foundations, Apache, durch den Oracle-Kurs zunehmend ins Abseits gedrängt fühlt – hat sie mit IBM doch einen der wichtigsten Partner im Harmony-Projekt verloren – und offen mit einem Rückzug aus dem JCP droht, verhält sich die Eclipse Foundation auffallend ruhig und lässt die Ereignisse mit gelassener Zurückhaltung auf sich zukommen. Nicht dass Eclipse von den jüngsten Ereignissen nicht tangiert würde – im Gegenteil. Doch vieles spricht dafür, dass man einigen der Entscheidungen Oracles bei der Eclipse Foundation durchaus mit einem gewissen Wohlwollen gegenübersteht. Eclipse-Er nder IBM und Oracle, ebenfalls strategisches Eclipse-Foundation-Mitglied und Beiträger zu einigen der wichtigsten Eclipse-Projekte (EclipseLink, WTP etc.), sitzen nun an der Quelle der Macht – und es ist anzunehmen, dass Eclipse in deren Planungshorizont eine tragende Rolle spielt.


Und zu diesem Zweigestirn gesellt sich nun auch Apple. „Wenn kein großes Unternehmen einspringt und die Arbeit auf sich nimmt, einen Mac-Port für Eclipse zu entwickeln, ist es das Ende von Eclipse auf dem Mac“ – so hat sich Tasktop-Ingenieur David Green im Interview mit dem Eclipse Magazin geäußert (S. 89). Und diese „Einspringer“ sind nun offensichtlich gefunden: Oracle und Apple werden für die Weiterführung von Java auf dem Mac sorgen – und damit dürfte auch die Zukunft von Eclipse auf dem Mac so sicher sein wie nie zuvor. Eben zurück in den JCP gewählt, hat Mike Milinkovich Oracle denn auch gleich die Unterstützung für das geplante JDK 7 zugesagt. Nicht kooperationsbereit gibt man sich allerdings in Sachen JDK 8. Grund dafür ist der für JDK 8 geplante Modularisierungsstandard, der im so genannten Projekt Jigsaw entwickelt wird. Eclipse sähe hier lieber den auch für die Eclipse-IDE verwendeten OSGi-Standard integriert – und es könnte sein, dass die alte Debatte „OSGi versus Jigsaw“ mit neuen Vorzeichen wieder auf ammen wird. In der Tat sind sowohl IBM als auch Oracle, anders als Sun, starke Nutzer der OSGi-Technologie – und so sagt interessanterweise auch Oracle-Architekt Mike Keith im Interview (S. 86), OSGi werde als Modularisierungsstandard für JDK 8 ganz oben auf der Liste der möglichen Optionen stehen.


Ganz unabhängig von diesen politischen Grabenkämpfen dreht sich das Technologierad bei Eclipse weiter wie ein Schweizer Uhrwerk. Der Indigo-Release-Zyklus nimmt langsam Fahrt auf, mit Eclipse 4.1 im Gepäck (Marc Teufel, S. 35), das deutlich in Sachen Performanz und Stabilität zugelegt hat. In erstaunlicher Regelmäßigkeit entstehen vielversprechende neue Projekte (Jubula S. 64, OSGi Enterprise Tools S. 88 , Eclipse Client Platform S. 74, Graphiti S. 67), die Gründung neuer Industry Working Groups steht bevor (Automotive, Modeling) und auch im Tooling-Bereich darf sich die Eclipse-Community über die Freigabe der Qualitätswerkzeuge der von Google übernommenen Instantiations freuen (S. 33). Keineswegs von Krisenstimmung war auch der diesjährige Ludwigsburger Eclipse Summit geprägt. Vor rekordverdächtiger Besucherkulisse bot die Konferenz ein qualitativ hochwertiges Programm wie selten zuvor – in einer Art Rückbesinnung auf die Qualitäten von Eclipse: technologische Exzellenz und Innovationsgeist. Wie schon auf der EclipseCon begeisterte Nasa-Softwarearchitekt Jeff Norris mit seiner Keynote „Mission-Critical Agility“, in der er seine Eclipse-Jünger beschwor, sich nicht auf dem bisher Erreichten auszuruhen und sich auf die mutige Suche nach neuen Standards zu machen, selbst auf die Gefahr hin, alte Zöpfe endgültig abschneiden zu müssen.


Einer dieser neuen Standards, der die Zukunft von Eclipse prägend verändern könnte, ist auch das Titelthema dieser Ausgabe des Eclipse Magazins: Das Versionskontrollsystem Git wird über kurz oder lang die alten SVN und CVS beerben. Und mit dem Projekt EGit, einem Git-Teamprovider für Eclipse, scheint sich in Sachen räumlich verteiltes Entwickeln im Team bei Eclipse ein neuer State of the Art herauszubilden, von dem die ganze Java-Community profitieren wird.


Viele spannende Stunden beim Lesen dieser Ausgabe wünscht


Hartmut Schlosser, Redakteur


Exklusiv auf CD:


Gerrit Code Review


Gerrit Code Review ist ein webbasiertes Code-Review-System für Git Repositories, das technisch als Java-Webapplikation realisiert ist, die auf JGit und Google Web Toolkit basiert. Gerrit dient als Git-Server und stellt ein Berechtigungskonzept für Git Repositories sowie einen ausgefeilten, webbasierten Code Review Workflow zur Verfügung. Im Rahmen unseres Titelthemas „Versionskontrolle mit EGit“ stellt Matthias Sohn die Arbeit mit Gerrit und Git Schritt für Schritt zum Nachvollziehen vor (S. 14). Alle nötige Software dazu findet sich auf der Heft-CD.


Die Highlights


Statische Analyse für C


CDT analysiert den Quellcode und erstellt einen abstrakten Syntaxbaum (Abstract Syntax Tree, AST), der für andere Plug-ins zugreifbar ist. Diese Funktionalität macht sich das Unterprojekt Codan zunutze, um ein Framework für statische Analyse darauf aufzusetzen. Die Arbeit mit Codan demonstriert Andreas Graf in seinem Artikel „Nicht nur für Java“, S. 54 anhand eines Praxisbeispiels.


OSGi Declarative Services mit Eclipse e4


Der Artikel „Angepackt“ von Marc Teufel beschreibt den Aufbau einer e4-Anwendung und gibt eine Einführung in Dependency Injection und OSGi Declarative Services. Als Beispielanwendung dient ein Abfrageservice für Bankleitzahlen. Die kompletten Sourcen des Beispielprojekts finden Sie auf der Heft-CD.


Weitere Inhalte


Gemini


Das Gemini-Projekt zielt darauf ab, modulare OSGibasierte Implementierungen der Java-EE-Technologie bereitzustellen. Unterteilt ist Gemini („The Enterprise Modules Project“) in die Subprojekte Gemini Web, Gemini Blueprint, Gemini JPA, Gemini DBAccess, Gemini Management und Gemini Naming.


Graphiti 0.7.0


Graphiti ist ein Framework zur Entwicklung von Diagrammeditoren für Domänenmodelle. Es stellt ein Java-API für die Entwicklung gra scher Werkzeuge bereit, das plattformabhängige Technologien wie GEF oder Draw2D kapselt.


Mercurial 1.7


Mercurial ist ein verteiltes Sourcecode-Management-System, das für die Verwaltung von großen Projekten geeignet ist. Die Bedienung erfolgt über die Kommandozeile, wobei alle Kommandos mit hg beginnen. Diese Version benötigt Python 2.4 oder höher.



Weitere Ausgaben

X
- Gib Deinen Standort ein -
- or -