Archiv

Archive for Juli 2011

Java 7 – was lange dauerte ist endlich da

31. Juli 2011 Kommentare aus

Man hätte schon fast meinen können Java 7 würde nicht mehr erscheinen. Java 6 erschien Mitte Dezember 2006 und erlaubte uns damals noch einige letzte Tests bevor unsere Diplomarbeit AtaraxiS abgegeben werden musste. Diese Woche war es nun so weit: nach 4 Jahren und fast 7 Monaten hat Oracle das JDK 7 freigegeben.

 
Wenig Neues…
Über die vielen Jahre wechselte Java nicht nur von Sun zu Oracle, auch die Feature-Liste schmolz wie Schnee im Sommer. Von den 70 Verbesserungen die Project Coin vorgeschlagen hat sind so nur 6 in Java 7 angekommen. Und Coin war nur eines von vielen Themen.

 
…aber einige praktische Verbesserungen
Von den wenigen Verbesserungen gibt es aber 2 die einem sofort ins Auge stechen:

  • Strings in Switch-Statements
  • Mehrere Exceptions mit einem Catch-Block fangen

Dazu hat Heise einige Beispiele zusammen getragen. Auch wenn das nichts Revolutionäres ist, so kann man damit doch einige recht mühsame Umgehungslösungen vermeiden.

 
Dateisystem: Da war doch was?
Bisher war die Arbeit mit dem Dateisystem in Java jeweils mühsam. Man musste für jede Kleinigkeit (wie copy) selber seine Methoden schreiben oder auf Bibliotheken wie Apache Commons IO ausweichen. Java 7 bringt nun auch dafür etliche Verbesserungen. Neue Klassen und Interfaces wie Path, Files oder WatchService geben dem Entwickler viele neue Möglichkeiten. Wie bei den Strings und switch kann man den nötigen Code für die gleiche Funktionalität massiv reduzieren.

 
Ausblick Java 8
All die Features die nicht in Java 7 drin sind sollen es in Java 8 schaffen. Geplant ist Java 8 für Ende 2012. Schaut man aber wie gut der Plan für Java 7 stimmte dürfte es niemanden erstaunen wenn es da noch etliche Verschiebungen geben wird.

 
Fazit
Java 7 bietet etliche Detailverbesserungen, alle grossen Neuerungen dürften aber frühestens mit Java 8 kommen. Bis dahin werden wohl andere Sprachen die auf der JRE aufsetzen (wie zum Beispiel Groovy) als Trendsetter dienen müssen.

Schlagworte:

Tipps für die Vorbereitung der Zertifizierungen 70-511 (Windows Applications Development) und 70-513 (WCF)

13. Juli 2011 1 Kommentar

Für die Zertifizierungen 70-511 und 70-513 fasse ich meine Vorbereitungstipps in einen Blogbeitrag. Dies da der Umfang der Prüfungen deutlich kleiner ist und die Tipps für die beiden Zertifizierungen ähnlich sind. Zudem habe ich die verwendeten Bücher bereits mit jeweils einem eigenen Beitrag vorgestellt.

 
70-511 – Windows Applications Development
Bei dieser Zertifizierung geht es um die Entwicklung von Desktop Applikationen mittels WPF (Windows Presentation Foundation) und Windows Forms. Von Microsoft gibt es dazu ein Training Kit. Ich fand dies sehr hilfreich um mich auf die Zertifizierung vorzubereiten und genügte mir als Vorbereitungsmaterial.

Ich habe allerdings vor einem Jahr schon die Zertifizierung für WPF in .Net 3.5 gemacht und seit mehr als einem Jahr Windows Forms Anwendungen entwickelt. Für diese Technology Specialist Zertifizierung sehe ich es als besonders hilfreich an wenn man über viel Praxiserfahrung verfügt.

Idealerweise schreibt man eine einfache kleine Anwendung die Daten ans GUI bindet und vor dem abspeichern validiert. Dies unbedingt in beiden geprüften Technologien machen, da man so sehr einfach die Differenzen bemerkt. So eine Anwendung kann man auch dazu nutzen um GUI-Komponenten der jeweils anderen Technologie einzubinden.

 
70-513 – Windows Communication Foundation
Diese Zertifizierung beinhaltet „nur“ die Windows Communication Foundation (WCF). Allerdings ist dies immer noch ein grosses Thema. Wer sich schon einmal mit verteilten Systemen beschäftigt hat wird damit aber sehr schnell zu Recht kommen.

Für Einsteiger kann ich das Buch „Professional WCF 4“ empfehlen. Dies startet bei Null und erklärt alle Teile. Die Beispiele dazu haben mir enorm geholfen und sollte man unbedingt nachbauen. Wer sich schon ein wenig mit WCF auskennt oder sehr viel mehr Detailtiefe benötigt sollte sich „Programming WCF Services (3rd Edition)“ anschauen.

 
Tools
Für all diese Zertifizierungen genügt Visual Studio Express. Wenn man genau wissen will was WCF übers Netz schickt sollte einen Blick auf Wireshark werfen.

 
MSDN
Wie bei 70-516 (Accessing Data with .Net 4) ist auch für diese Zertifizierungen MSDN eine gute Anlaufstelle für Details der einzelnen Themen.

 
Ich hoffe damit allen geholfen zu habe die sich auf diese Zertifizierungen vorbereiten wollen. Über Kommentare mit weiteren Tipps zur Vorbereitung würde ich mich auch dieses mal freuen.

Schlagworte: , ,

svn export – oder wie man die .svn Verzeichnisse los wird

Wer mit Subversion arbeitet wir sich sicher schon gefragt haben wie man die .svn Verzeichnisse aus allen Unterordner loswerden kann. Dies ist vor allem bei Webseiten ein Thema, wo die ganze Seite mit all ihren Unterverzeichnissen möglichst 1:1 auf den Webserver soll.

In der Regel werden die meisten Leute eine dieser beiden Ansätze verfolgen:

  1. Alle .svn Ordner von Hand löschen
  2. Die .svn Ordner drin lassen und hoffen das es niemand bemerkt

Der erste Ansatz ist aufwendig und wird innert kürzester Zeit für den zweiten Ansatz fallen gelassen. Das sollte man aber nicht tun.

 
Wieso .svn Verzeichnisse nicht ins Web gehören
In den .svn Ordnern liegen sehr viele Daten die man nicht unbedingt über einen Webserver der Öffentlichkeit freigeben möchte. Subversion legt intern eine Kopie aller unter Versionsverwaltung stehenden Dateien an und legt diese im .svn Ordner ab. Kennt man sich ein bisschen mit der Ablagestruktur aus kann man recht einfach den Quellcode einer PHP oder ASP.Net Seite kommen. Vom abkupfern der Funktionalität zum stehlen DB-Passworts ist es dann oft nur ein kleiner Schritt. Die Metadaten von Subversion müssen also auf eine einfache Art entfernt werden.

 
svn export
Subversion hat für diese Aufgabe den Befehl export. Dieser funktioniert fast wie checkout, räumt aber all die .svn Verzeichnisse weg. Die so erhaltene Kopie beinhaltet nichts mehr was auf Subversion schliessen lässt – ein commit der Änderungen ist damit aber auch nicht mehr möglich!

So kann man den export Befehl aufrufen:

svn export https://svn.origo.ethz.ch/ataraxis/ ataraxisExport

Verfügt man bereits über eine lokale Arbeitskopie (mit allen .svn Verzeichnissen), kann man auch diese als Quelle nutzen:

svn export ataraxis ataraxisOhneSvnOrdner

 
Fazit
Mit dem simplen Befehl svn export kann man ohne grossen Aufwand die lästigen .svn Verzeichnisse vor der Veröffentlichung entfernen.

Schlagworte: ,
Folgen

Erhalte jeden neuen Beitrag in deinen Posteingang.

Schließe dich 295 Followern an