blob: aaec0bde4d6cc7d01a8169d5500cc3c006b9d7a3 [file] [log] [blame]
<html>
<head>
<TITLE>Interview mit Heiko B&ouml;ck</TITLE>
<META NAME="description" CONTENT="Interview mit Autor Heiko B&ouml;ck">
<link rel="stylesheet" type="text/css" href="../../../netbeans.css">
<META HTTP-EQUIV="content-type" CONTENT="text/html; charset=utf-8">
<meta http-equiv="content-language" CONTENT="de">
</head>
<body>
<h1>Interview mit Heiko B&ouml;ck</h1>
<img src="../../../images_www/articles/interviews/heiko-boeck.jpg" width="100" style="float:left;padding-right:20px">
<p>
<i>Heiko Böck hat Kommunikations- uns Softwaretechnik mit Vertiefung Softwaretechnik studiert. Dabei hat er vor über sechs Jahren seine Vorliebe für Java entdeckt. Derzeit studiert er an der TU München im Master-Studiengang Informatik und arbeitet als Werkstudent bei ProSiebenSat.1 Produktion.
<p>
Heiko ist Autor des neu erschienen Buches &quot;NetBeans Platform 6 - Rich-Client-Entwicklung mit Java&quot;, das wir hier vorstellen m&ouml;chten.</i>
</p>
<br clear=all />
<h2>Heiko, was ist Dein Hintergrund als Entwickler?</h2>
<p>
In zahlreichen Praxisphasen habe ich mein Wissen schon während des Studiums bei verschiedenen Unternehmen in die Tat umgesetzt, und mein Wissen im Bereich der professionellen Softwareentwicklung vertieft. Dabei galt mein Bestreben bei der Softwareentwicklung immer einer klar strukturierten und flexiblen Architektur. Viel Erfahrung konnte ich auch während meiner Diplomarbeit und besonders auch während eines innovativen Projekts in Kooperation mit dem Flughafen München sammeln.
</p>
<h2>Wo hast Du zum ersten Mal von der NetBeans Platform gehört?</h2>
<p>
Von der NetBeans Platform habe ich vor gut zwei Jahren gehört. Unter anderem wurde ich über das Java Magazin auf die NetBeans Platform aufmerksam. Während meiner Diplomarbeit befasste ich mich mit der Evaluierung der Eclipse Rich-Client Platform als Plattform für bestehende Unternehmensanwendungen. Dabei habe ich die NetBeans Platform als Alternative herangezogen, wobei der Hauptgrund natürlich im GUI Toolkit Swing lag.
</p>
<h2>Wie lange sammelst Du schon Erfahrung im Bereich der Platform-Entwicklung?</h2>
<p>
Ich befasse mich nun seit rund zwei Jahren mit der Entwicklung von Anwendungen mit der NetBeans Platform. Eingehend studiert habe ich die Plattform um ihre Eigenschaften denen der Eclipse RCP gegenüberzustellen, und die Vor- und Nachteile zu bewerten.
</p>
<p>
Seit ich die Vorzüge der NetBeans Platform kennen gelernt habe, entwickle ich sämtliche Anwendungen auf Basis der NetBeans Platform. Vor allem durch die prima IDE-Unterstützung sehe ich keine Alternative, wenn es um die produktive und professionelle Entwicklung von Client-Anwendungen geht.
</p>
<h2>Was für Lernmaterialien hast Du zum Einstieg benutzt?</h2>
<p>
Das meiste habe ich durch den Quelltext und die Javadoc gelernt. Sehr hilfreich fand ich auch die <a href="http://wiki.netbeans.org/NetBeansDeveloperFAQ">NetBeans Platform Wiki-Seiten</a> und die <a href="http://platform.netbeans.org/tutorials/">Tutorials</a> der NetBeans-Webseite. Den NetBeans IDE Field Guide habe ich natürlich auch gelesen, wobei mir dieses Buch für die NetBeans Platform Entwicklung nur wenig geholfen hat.
</p>
<h2>Während Du das Buch geschrieben hast, gab es da noch neue Erkenntnisse, die Dich überrascht haben?</h2>
<p>
Wirklich beeindruckt hat mich die Mächtigkeit und Flexibilität des File-, des Data Object-, des Node-, und des Explorer-Konzepts. Das Design dieser APIs ist wirklich sehr gut durchdacht. Da wundert es mich auch nicht, dass ich schon von mehreren Personen gehört habe, dass sie zur NetBeans Platform aufgrund dieser APIs gefunden haben.
</p>
<!-- <div style="width:200px;float:right;padding:0 0 10 10;font-size:120%;font-weight:bold">&ldquo;test&rdquo;</div> -->
<h2>Was fiel Dir anfangs schwer, und was hat Dir am meisten weitergeholfen?</h2>
<p>
Zu Beginn tat ich mir beim Gesamtverständnis der Nodes API und den darunter liegenden Data Systems und File Systems APIs schwer – vor allem in Bezug auf kontextsensitive Aktionen. Geholfen haben mir dabei vor allem die Nodes API-Tutorials und die entsprechende Javadoc. Entscheidend für das tief gehende Verständnis war natürlich das Learning By Doing.
</p>
<h2>Wie kamst Du darauf, ein deutsches Buch über die NetBeans Platform zu schreiben?</h2>
<div style="float:right;padding-left:30px;"><a href="http://www.galileocomputing.de/download/dateien/1406/galileocomputing_netbeans_platform_6.pdf"><img src="../../../images_www/articles/interviews/platform-book-heiko-boeck.jpg" width="200" ><br>Leseprobe herunterladen (PDF)</a></div>
<p>
Als ich erst einmal die wesentlichen Konzepte der NetBeans Platform kennen gelernt habe, stellte das für mich eine wahre Revolution der Client-Anwendungsentwicklung dar. Ja ich ärgerte mich sogar darüber, dass ich nicht schon bei früheren Projekten, bei denen genau die Aspekte große Probleme bereitet haben, für welche die NetBeans Platform geradezu ideale Lösungen parat hält, wie z. B. das Window System.
</p>
<p>
Somit stand für mich fest, dass ich mich auch in Zukunft intensiv mit der NetBeans Platform auseinander setzen wollte. Aus den NetBeans-Mailinglisten und diversen Foren verlautete immer wieder als großes Manko, die mangelnde Dokumentation der NetBeans Platform.
</p>
<p>
Da mich die NetBeans Platform vollkommen begeistert hat und ich in selbiger ein großes Potenzial sehe, sah ich es als große Herausforderung und Berufung an, ein Buch über die NetBeans Platform zu schreiben. Dies bot mir auch die Möglichkeit, mein Plattformwissen in sämtliche Details zu vertiefen um das volle Potenzial ausschöpfen zu können.
</p>
<br clear=all>
<h2>Eignet sich das Buch eher für Anfänger oder für Fortgeschrittene? </h2>
<p>
Das Buch ist sowohl für Einsteiger als auch für erfahrene Entwickler geeignet. Der Neuling findet zu Beginn des Buches die nötigen Grundlagen, was eine Rich-Client Plattform überhaupt ist, was diese ausmachen und auch welche Architektur sich hinter der NetBeans Platform verbirgt. Aufbauend auf diesem Wissen werden dann Schritt für Schritt mit Beispielen die einzelnen APIs und Konzepte erläutert und eingeordnet.
</p>
<p>
Sämtliche Beispiele des Buches wurden so konzipiert, dass man sie weitestgehend ohne das Wissen der jeweils vorgehenden Kapitel verstehen und reproduzieren kann. Dies soll dem bereits versierteren NetBeans Platform Entwickler den Direkteinstieg in einzelne spezielle Kapitel ermöglichen. Auch werden fortgeschrittene Themen wie Persistenz, Web Services oder Visual Library behandelt um somit auch den erfahreneren Entwicklern ein umfassendes Handbuch zur Verfügung zu stellen.
</p>
<h2>Was für Reaktionen hast Du bisher auf Dein Buch erhalten?</h2>
<p>
Bisher gab es ausschließlich sehr gute und konstruktive Kritik. Das Konzept der detaillierten Erläuterung und Erörterung der einzelnen APIs, unterstützt durch Darstellung der Konzepte mit Grafiken, fand große Zustimmung.
</p>
<h2>Gibt es vergleichbare Bücher auf dem Markt?</h2>
<p>
In Deutsch gibt es mittlerweile ein weiteres Buch, das die Rich-Client Entwicklung mit der NetBeans Platform thematisiert. Dieses habe ich allerdings selbst noch nicht gelesen und kann daher keinen objektiven Vergleich ziehen.
</p>
<p>
In Englisch gibt es das bekannte Buch Rich Client Programming, u. a. von Geertjan Wielenga, das ebenfalls die NetBeans Platform sehr detailliert mit vielen interessanten Themen behandelt. Was natürlich nicht verwundert, so sind doch die Autoren NetBeans Spezialisten der ersten Stunde.
</p>
<p>
Insgesamt bin ich der Meinung, dass jedes Buch auf interessante und unterschiedliche Weise verschiedene Aspekte der NetBeans Platform betrachtet. Ohnehin finde ich, dass man durch mehrere Bücher des gleichen Themas erhebliche Synergieeffekte erzielen kann. So habe ich selbst in meinen Bücherregalen nicht selten zu einem Themengebiet drei Bücher stehen.
</p>
<h2>Hast Du vor, noch weitere Bücher zu verfassen?</h2>
<p>
Im Moment ist die Zeit sehr knapp, so dass lediglich eine Neu-Auflage zur Version 7 der NetBeans Platform auf dem Plan steht. Sollte ich unerhofft zu viel Zeit kommen, würde ich aber sehr gerne ein Buch über die Eclipse RCP schreiben, auf eine Art und Weise, die sich grundlegend von den bereits existierenden Büchern unterscheidet.
</p>
<h2>Was würdest Du anders machen, wenn Du das Buch noch einmal komplett neu schreiben würdest?</h2>
<p>
Ich würde das Kapitel 4 über Aktionen eventuell an eine andere Stelle setzen. Das Kapitel 8 über grafische Komponenten würde ich anders aufteilen und Teile daraus extrahieren. Gerne würde ich auch das Kapitel über die Erweiterung der NetBeans IDE und die Migration von Eclipse zu NetBeans ausweiten.
</p>
<p>Hoffen wir also auf eine Neu-Auflage, dann werden diese Verbesserungen nur einige der vielen bereits geplanten Neuheiten sein. Man darf also sehr gespannt sein.
</p>
<p><br></p>
<h1>Mehr zum Buch</h1>
<h2>Inhaltsangabe</h2>
<p>
<ul>
<li> Konzepte (u. a. Classloader, Lookup)</li>
<li> APIs (u. a. Nodes API, Visual Library, Dialogs API)</li>
<li> Persistenz (Hibernate, JPA) und Web Services</li>
<li> NetBeans IDE erweitern, Neues in Java 6, Tipps und Tricks</li>
<li> Hilfestellungen zur Migration von Eclipse RCP Anwendungen auf die NetBeans Platform</li>
<li> CD-ROM mit JDK 6, NetBeans IDE 6, NetBeans Platform 6,
NetBeans Platform 6 JavaDoc, Beispielanwendung als NetBeans-Projekte.</li>
</ul>
</p>
<h2>Empfehlenswehrte Links</h2>
<p>
<ul>
<li><a href="http://www.galileocomputing.de/download/dateien/1406/galileocomputing_netbeans_platform_6.pdf">Leseprobe (PDF): Kapitel 6: Das Lookup-Konzept, sowie Inhaltsverzeichnis, Einführung und Index</a>
<li><a href="http://www.amazon.de/NetBeans-Platform-Rich-Client-Entwicklung-mit-Java/dp/3836210665"><i>NetBeans Platform 6 - Rich-Client-Entwicklung mit Java</i> bei Amazon.de</a></li>
<li><a href="http://www.galileocomputing.de/katalog/buecher/titel/gp/titelID-1542"><i>NetBeans Platform 6 - Rich-Client-Entwicklung mit Java</i> bei GalileoComputing.de</a></li>
<li><a href="../../../kb/articles/books.html">Alle Bücher mit und über NetBeas IDE</a> (Englisch)</li>
<li><a href="http://platform.netbeans.org/tutorials/">Tutorials zur Plattform- und Modulentwicklung</a> (Englisch)</li>
<li><a href="http://wiki.netbeans.org/NetBeansDeveloperFAQ">NetBeans Platform Developer FAQ</a> (Englisch)</li>
</p>
</body>
</html>