A und O einer serviceorientierten Architektur sind sogenannte Web Services. Web Services sind technische Schnittstellen, die bestimmte Informationen und/oder Funktionen bereitstellen. Überwiegend werden Web Service zur Kommunikation zwischen verschiedenen Programmen, Systemen, etc. verwendet.
Ich behaupte, dass innerhalb von 15 Sekunden wirklich JEDER Java-Entwickler einen eignen Webservice schreiben kann! Anhand der legendären Rechteck-Klasse erläutere ich den „Code First“-Ansatz. Beachten Sie bitte, dass ich das JDK 6 benutze und mit Eclipse arbeite.
(mehr …)
JUnit ist eines der wichtigsten Tools, die man als Java-Entwickler beherrschen sollte. Es erleichtert das Testen von Java-Klassen und ist zu 100% in Eclipse integriert! Anhand einer Beispiel-Klasse erkläre ich den Aufbau und die Funktionsweise von JUnit Test 4. Warum man eigentlich JUnit nutzen sollte, erläutert Jörg Hinrichs in seinem Artikel „Unit Tests: Zeitverschwendung?“.
(mehr …)
Das Pendant zum „i like“-Button von Facebook ist die neue Google +1 Schaltfläche. Damit zeigt man anderen Besuchern, dass einem die entsprechende Seite gefallen hat. Außerdem vermute ich, dass die Anzahl der +1en, den Suchindex von Google indirekt beeinflusst. Aber das sei erst mal dahin gestellt.
Für die Integration der Schaltfläche hat Google für die Webmaster eine eigene Webseite online gestellt. Mit dieser kann man die Schaltfläche individuell an die eigenen Wünsche und Vorstellungen anpassen. (mehr …)
Wie der Titel bereits verrät, geht es in diesem Artikel um Indikatoren, an denen man schlechte Softwarearchitektur erkennen kann. Generell sollte man aber zuvor das Lasten-/Pflichtenheft des Projektes gelesen haben, um sich überhaupt ein Urteil erlauben zu können. Denn nicht jeder Auftraggeber verlangt oder legt wert auf: Wartbarkeit, Flexibilität oder Erweiterbarkeit. Die folgende Grafik veranschaulicht die 7 wichtigsten Indikatoren:

(mehr …)
Strg + Shift + F
Ein sehr triviales Problem tritt bei der Darstellung von sehr großen Zahlen auf. Um die Lesbarkeit dieser Zahlen zu erhöhen, sollte man die Ziffern gruppieren. Allgemein spricht man hier von der Tausendertrennung. Diese Funktion erledigt das für euch!
// Ergebnis: 1.010 groupNumber(1010); // Ergebnis 222.111 groupNumber(222111); // Ergebnis 1.234.567.890 groupNumber(1234567890);
Die Funktion finden Sie nach dem Break!
(mehr …)
Meines Erachtens nach das beste Buch um Design Patterns zu verstehen! Das Buch „Entwurfsmuster von Kopf bis Fuß“ von Eric Freeman, Elisabeth Freeman, Kathy Sierra und Bert Bates ist sehr verständlich geschrieben und führt wirklichen jeden das Thema näher. Egal ob Factory, Strategy oder Observer, man versteht es und kann es sofort anwenden. Mein Buchtipp:

Verschiedene Faktoren haben heutzutage Einfluss auf die aktuelle Softwarearchitektur. In diesem Beitrag erkläre ich die Hauptaspekte mit einigen Beispielen.

(mehr …)
Am 06.06.2011 stellte Steve Jobs auf der Worldwide Developers Conference, kurz WWDC, einen neuen Service Namens „iCloud“ vor. Dieser ermöglicht es Bilder, Musik, Kalenderdaten, Dokumente, Kontakte, Mails und vieles mehr zwischen mehreren Apple Geräten zu synchronisieren. Jedoch sollte man den neuen Service mit Vorsicht genießen! Jeder webbasierende Synchronisationsdienst hat seine Schattenseiten und ich beschreibe sie am Beispiel der iCloud;-)
Weitere Informationen zur iCloud finden Sie momentan nur auf der englischsprachigen Seite von Apple.
(mehr …)
In den Medien und auf der Webseite vieler Hardwarehersteller wirbt man mit der Unterstützung von Adobe Flash. Jedoch bedeutet das nicht, dass diese Aussage für alle Android Smartphones zutrifft! So besitzen das HTC Wildfire und das Sony Ericsson Xperia Mini die Android Version 2.2, können aber nicht den Flashplayer installieren. Grund hierfür sind der geringe Arbeitsspeicher (RAM) und die verbauten Prozessoren, die für die Darstellung von Flash eine zu schwache Leistung liefern. Eine aktuelle Übersicht der zertifizierten Geräte findet man nur auf der englischen Seite von Adobe. Hier ist eine kompakte Zusammenfassung (Stand 30.05.2011):
(mehr …)