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 …)
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:

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 …)
In Vorschau-Fenstern oder MP3-Playern sieht/hört man zufällig abgespielte MovieClips. Dieses Howto erklärt euch, wie ihr eine zufällige Wiedergabe in Actionscript 3 realisiert. Dabei werden verschiedene Varianten erklärt mit unterschiedlichen Ansätzen. Folgende MovieClip-Klassen(mit Animation) sind vorhanden:
Die meisten Anfänger scheitern schon bei den einfachsten Anforderungen. Dazu gehört beispielsweise ein einfacher Button, der dynamisch zur Laufzeit beschriftet wird und eine externe Webseite/URL-Adresse öffnet. Verwendet wird diese Art von Buttons in Navigationen für Webseiten oder in CMS Systemen. Das folgende Skript macht aus einer beliebigen Instanz mit dem Namen „meinFeld“ einen Button. Dieses muss in die Zeitleiste des Films eingefügt werden:
import flash.events.MouseEvent;
//Eventlistner hinzufügen
meinFeld.addEventListener(MouseEvent.CLICK, click);
// Clickevent verarbeiten
function click(e:MouseEvent):void
{
// Hier passiert was, z.B.
trace("Klick erfolgreich!");
}
Ab und zu nutze ich die Komponenten aus Flash. Da kann es schon mal vorkommen, dass ich die Formatierung innerhalb eines dynamisch erzeugten TextFields ändern muss. Mit der Klasse „TextFormat“ geht das ganz einfach:
package
{
import flash.display.Sprite;
import flash.events.Event;
import flash.text.TextField;
import flash.text.TextFormat;
import flash.text.TextFormatAlign;
/**
* ...
* @author Alexander Gr. - AxxG Blog
*/
public class Main extends Sprite
{
public function Main():void
{
if (stage) init();
else addEventListener(Event.ADDED_TO_STAGE, init);
}
private function init(e:Event = null):void
{
removeEventListener(Event.ADDED_TO_STAGE, init);
var mytext:TextField = new TextField();
mytext.text = "AxxG Blog";
var mytext2:TextField = new TextField();
mytext2.text = "Hallo Welt";
var newFormat:TextFormat = new TextFormat();
newFormat.align = TextFormatAlign.CENTER;
newFormat.bold = true;
// weitere Eigenschaften definieren
text.setTextFormat(newFormat);
// Erklaerung
// mytext.setTextFormat(textFormat:TextFormat) Wendet die Eigenschaften von textFormat auf den gesamten Text im Textfeld an.
// mytext.setTextFormat(textFormat:TextFormat, beginIndex:int) Wendet die Eigenschaften von textFormat auf den Text an, der an der Position beginIndex beginnt.
// mytext.setTextFormat(textFormat:TextFormat, beginIndex:int, endIndex:int) Wendet die Eigenschaften von textFormat auf den Textbereich zwischen beginIndex und endIndex - 1 an.
this.addChild(mytext);
this.addChild(mytext2);
}
}
}