07.12.2013

Testen einer REST-Schnittstelle mit REST Assured.
In dem folgenden Artikel wird beschrieben, wie ein REST-Service, der mit Spring MVC implementiert wurde, mittels REST Assured getestet werden kann. Dabei werden die Requests POST, PUT, GET und DELETE verwendet. Bei den REST Assured Tests werden beim Überprüfen der JSON-Responses zwei Möglichkeiten vorgestellt. Als erstes ein eigener Hamcrest-Matcher und als zweites Möglichkeit die Überprüfung mittels JSONPath...

Weiter

03.12.2013

Spring MVC: Ein minimales REST-Beispiel.
Der folgende Artikel zeigt, wie man mit Spring MVC eine REST-Schnittstelle implementiert, die die Requests GET, PUT, POST und DELETE unterstützt. Es soll kein Tutorial und auch keine Einführung in Spring MVC sein, es zeigt einfach sehr kompakt, wie sich ein REST-Webservice aufsetzen läßt, der als Austauschformat JSON verwendet. Zusätzlich zu den Requests wird gezeigt, wie Exception Handler mit der Annotation @ExceptionHandler registriert werden können...

Weiter

30.11.2013

Rezension: JUnit-Profiwissen - Michael Tamm.
Eine Rezension zu dem Buch JUnit-Profiwissen - Effizientes Arbeiten mit der Standardbibliothek für automatisierte Tests in Java von Michael Tamm.

Weiter

02.11.2013

Rezension: REST und HTTP - Einsatz der Architektur des Web für Integrationsszenarien.
Eine Rezension zu dem Buch REST und HTTP - Einsatz der Architektur des Web für Integrationsszenarien von Stefan Tilkov.

Weiter

20.10.2013

Setup Arquillian tests with Maven, an embedded Tomcat and Dependency Injection (CDI).
This short article describes how to setup the environment to test CDI (Dependency Injection) with Arquillian and Maven in an embedded Tomcat 7 container...

Weiter

11.08.2013

JavaFX - Alien Rallye.
This article describes how to parse the content of a SVG path element and create a set of JavaFX PathElements which are added to a javafx.scene.shape.Path. The idea behind this is that the JavaFX Path can be used to create a PathTransition. I used the Apache Batik parser to split the SVG path element and wrote my own PathHandler to create the PathElements. This means: Parse a SVG string M 150 50 L 550,50 A 50 50 0 0 1 600,100 L 600,350 and create PathElements (ArcTo, LineTo, MoveTo, CubicCurveTo).

Weiter

27.07.2013

JavaFX - Lottery Wheel.
This article shows how to use TranslateTransitions, FadeTransitions, Timelines and Timeline chaining to implement a simple lottery wheel where names rotate around a point. The wheel reduces its speed continuously and at the end the winner name is highlighted. The names are loaded from a simple text file and positioned around the middle point. The winner is indicated by an arrow which is created with a Path. The Font size and the Color of the names depends on the angle where they are placed around the circle...

Weiter

06.07.2013

HTML5 and JavaScript - Draw a Sierpinski Triangle on a Canvas.
The following article describes how to draw lines into the 2D context of an HTML5 canvas with JavaScript. As example I use the Sierpinski Triangle (Sierpinski Curve). I will give a short description of the algorithm which is used to draw the Sierpinski curve and show how to use the combination of JavaScript and the HTML5 canvas element...


Weiter

29.06.2013

JavaFX Puzzle Game.
The following article describes how to create a simple Puzzle game with JavaFX. In this example MouseEvents are used to trigger the move of a puzzle tile from one position to the next. The EventHandler is registered on a Rectangle with setOnMouseClicked. The colors of the tiles can be customized via a CSS file. Also a Property Binding is used to update the text value of a Label automatically...


Weiter

26.05.2013

Git-Tutorial.
Dieser Artikel beschreibt, wie man das Versionskontrollsystem (VCS) Git verwenden kann, um verschiedene Versionsstände von Dateien zu verwalten. In diesem Artikel steht die Benutzung von lokalen Repositories auf dem eigenen Rechner im Vordergrund, wobei aber auch die Benutzung von remote Repositories kurz erklärt wird. Das Ziel des Artikels ist, dass man bei lokalen Projekten eine zuverlässige Möglichkeit hat, zu einen vorherigen Version zurückzukehren...

Weiter

28.04.2013

How to use and extend the library JFXtras.
This article describes how to compile the latest version of the JFXtras library in your own IDE so it is possible to debug directly into the source code and make changes which can be contributed to the project. I describe several ways to import and build the JFXtras library with Netbeans, Eclipse, Gradle, the e(fx)clipse plugin and the Eclipse Gradle Integration. Also I explain how to use Git to fork and clone the repository so you can contribute new components or bug fixes to the project...

Weiter

12.04.2013

RaspberryPi - Wetterstation.
In dem Artikel habe ich kurz beschrieben, wie man den RaspberryPi einsetzen kann, um eine kleine Wetterstation zu bauen. Es wird erklärt, welche Hardware vorhanden sein muss und wie die notwendige Software installiert und eingerichtet wird. Das Ziel dieses kleinen Projekts war es, eine stromsparende und "kostengünstige" Lösung zu finden, die Wetterdaten aufzeichnet, in einer Datenbank speichert und eine grafische Darstellung der Temperatur- und Luftfeuchtigkeitsdaten ermöglicht..

Weiter

29.03.2013

JavaFX - Fractal: The Mandelbrot and the Julia Set.
The following article describes how to paint the Mandelbrot and the Julia set with JavaFX. Also I explain how to change the colors of the graphical representations of the sets. Additional the look of the Julia set can be changed by adapting the function values...


Weiter

22.03.2013

How to get a list of all JavaFX color names which are pre-defined in the class Color?.
The class javafx.scene.paint.Color in JavaFX has a lot of pre-defined static color names. The usage is very simple, e.g. Color.BLUE. But how do you get a list of all these color names which are defined in the class Color? This article describes a way which uses the Java Reflection API to create a list with all these color names...


Weiter

21.03.2013

JavaFX - Mandelbrot Set.
The following short article describes how to paint a Mandelbrot set with JavaFX. The Mandelbrot set will be painted into a javafx.scene.canvas.Canvas with the methods GraphicsContext.setFill() and GraphicsContext.fillRect()...



Weiter

17.03.2013

JavaFX - Dartboard with Shapes (Path, Arc, ArcTo, Circle) and Text.
The following article describes how to paint a dartboard with JavaFX. This article tries to describe how to use primitive shapes to paint a complex Scene with JavaFX. A side-effect is that you will learn how to use trigonometric functions like sine and cosine and place points at an arbitrary position on a circle. In the example, a Scene is created which contains some javafx.scene.shape.Circle objects, javafx.scene.shape.Arc...

Weiter

17.03.2013

DataSource Configuration in JBoss AS 7.1.1 for Apache Derby.
This short article describes how configure a DataSource for Apache Derby 10.9 in JBoss AS 7.1.1. Generally there are two ways to create a DataSource in JBoss...

Weiter

14.03.2013

JavaFX - Animation of Circles with a Timeline.
The following article describes how to animate objects in JavaFX. In the example, a Scene is created which contains some objects (javafx.scene.shape.Circle-Objects) which are flying around an imaginary middlepoint. The animation is realized with a JavaFX javafx.animation.Timeline and javafx.animation.TranslateTransitions to move the objects from one point to the next position around the orbit. The objects are styled by a CSS file which defines a...

Weiter

06.03.2013

Game of Life mit JavaFX.
In dem folgenden Beispiel wird mit JavaFX eine einfache Oberfläche für Game of Life erstellt. Die Zellen werden mit javafx.scene.layout.StackPanes realisiert, die innerhalb eines javafx.scene.layout.Pane angeordnet sind. Die StackPane-Objekte werden mittels eines javafx.scene.layout.StackPaneBuilder erstellt. Die Anmination wurde mit einer javafx.animation.Timeline umgesetzt...

Weiter

05.03.2013

Ein Schachbrett mit javafx.scene.shape.Rectangle und CSS-Styling.
In dem folgenden kleinen JavaFX-Beispiel wird ein Schachbrett mit den Klassen Rectangle und dem RectangleBuilder erstellt. Das Aussehen der schwarzen Felder wird über eine CSS-Datei gesteuert. Zu Einsatz kommen außerdem noch die JavaFX-Klassen Application, Pane, Scene und Stage...


Weiter

26.02.2013

Beispiel mit einer JSF-selectOneListbox.
In dem folgenden Beispiel wird erklärt, wie eine selectOneListbox mit einer Liste von Datenbank-Entities verbunden wird. Genauer gesagt, soll innerhalb einer JSF-Seite eine Auswahlbox angezeigt werden, die ihre SelectItem-Elemente über eine Service-Schicht (Controller) direkt aus einer Datenbank bezieht...

Weiter

02.02.2013

JAX-RS 2.0: The Java API for RESTful Web Services.
In diesem Tutorial werden die Neuerungen von JSR 339: JAX-RS 2.0: The Java API for RESTful Web Services vorgestellt. Dazu gehören neben der neuen und standartisierten Client-API, verschiedene Filter, Interceptoren und die Möglichkeit zur asynchronen Ausführung von Methoden. Außerdem wird auf MessageBodyReader und MessageBodyWriter eingegangen, weil diese nun auch auf der Client-Seite verwendet werden können...

Weiter

26.01.2013

JSF-Templates mit Java EE6.
In diesem Artikel wird erklärt, was JSF-Templates sind und wie man sie verwendet, um Web-Anwendungen einfacher und wartbarer zu gestalten. Außerdem wird eine Möglichkeit vorgestellt, wie sich Servlets und JSP-Seiten in JSF-Anwendungen einbetten lassen, so dass "Legacy"-Seiten, bis zu ihrer Ablösung, auch in neu entwickelten JSF-Webanwendungen verwendet werden können...

Weiter

20.01.2013

Java EE6 - WebClients.
In den folgenden fünf Artikeln werden Servlets, JSP-Seiten und JSF-Seiten vorgestellt, wobei noch auf die JSTL und Ajax eingegangen wird. Mit jeder dieser Technologien wird das "bekannte" Einkaufswagen-Beispiel umgesetzt. D.h. es gibt eine Liste mit Artikeln, die in einen Einkaufswagen (Shopping-Cart) gelegt und auch wieder entfernt werden können....

Weiter

19.01.2013

RaspberryPi - WLAN einrichten.
Ich beschreibe hier kurz, welche Schritte notwendig sind, um eine WLAN-Stick auf dem RaspberryPi einzurichten. In dem Beispiel wird der WLan-Stick TP-Link TL-WN727N mit einen Ralink-Chip verwendet. Der TP-Link TL-WN721N mit Athos-Chipsatz funktioniert aber auch problemlos...

Weiter

12.11.2012

Xtend Tutorial.
In dem folgenden Artikel wird Xtend kurz vorgestellt. Inspiriert durch den Vortrag von Sebastian Zarnekow bei der Java User Group Frankfurt habe ich mir Xtend und die Integration in Java und Eclipse angesehen und einen kleinen Artikel dazu geschrieben. Hauptaugenmerk lag auf der Integration von Xtend in Java und die Entwicklungsumgebung Eclipse...

Weiter

26.10.2012

Das Java-Framework Lombok.
In diesem Artikel wird kurz beschrieben was es mit dem Java-Framework Lombok auf sich hat und wie man es am Besten einsetzen kann, um Quellcode lesbarer zu machen und sich gleichzeitig unnötige Tipparbeit erspart. Dazu wird in einem kleinen Beispiel eine Klasse Person mit einigen Member-Variablen erstellt und eine Testklasse, die die Objekte vom Type Person erstellt und auf verschiedene Weisen benutzt...

Weiter

07.10.2012

EJB TimerService (JEE6 - Enterprise Java Beans).
In dem folgenden Artikel wird der TimerService von EJBs erklärt. D.h. es wird beschrieben, wie ein TimerService eingesetzt werden kann, um regelmäßig eine Methode eines Stateless Session Beans aufzurufen. Dabei wird der TimerService per Annotation @TimerService definiert...


Weiter

06.10.2012

Die Verwendung von java.util.Date und dem java.text.SimpleDateFormat in Java.
Hier wird beschrieben, wie man eine Datums und Zeitangabe, die in einem String gespeichert ist, in ein Objekt von Type Date umwandelt, bzw. einliest. Anschließend soll das Datum in einem anderen Format wieder ausgegeben werden. Es geht also um das Parsen eines Datum-Strings und das anschließende Umformatieren der Zeitangabe...

Weiter

03.10.2012

Bean-Validation mit JEE6.
In diesem Artikel wird beschrieben was unter Bean-Validation zu verstehen ist und wie es einsetzt wird, um Werte zu validieren. D.h. es wird überprüft, ob übergebenen Funktionsparameter bestimmten Regeln entsprechen...

Weiter

29.09.2012

Remote Zugriff auf EJBs mit einem Standalone-Java-Client.
In diesem Artikel wird beschrieben, wie man einen Java-Client erstellt, mit dem auf ein EJB zugegriffen werden kann, welches auf einen JBoss oder Glassfish Application-Server deployt ist. Es wird erklärt, welche Probleme auftreten können und wie man diese löst. Außerdem wird gezeigt, welche Anpassungen an dem EJB notwendig sind, damit es über eine Remote-Schnittstelle erreichbar wird...

Weiter

28.09.2012

EJB-Tutorial für JEE6 - Java Enterprise Edition 6.
In diesem Tutorial werden die drei Session-Bean-Typen Stateless Session Bean, Stateful Session Bean und Singleton Bean vorgestellt. Für jeden Bean-Type wird eine sehr einfache Beispiel-Implementierung erstellt, auf die über eine JSF-Seite zugegriffen werden kann....

Weiter

26.09.2012

Unit-Tests für EJBs mit einem Embeddable-Container.
Seit JEE6 (Java Enterprise Edition 6) und EJB 3.1 (Enterprise JavaBeans) ist es möglich EJBs mittels eines Embeddable-Container zu testen. D.h. ein EJB kann getestet werden, ohne es aufwendig auf einem Application Server zu deployen. Es wird einfach ein lokaler EJB-Container innerhalb der Java Virtual Machine (JVM) zu Beginn des Tests gestartet und anschließend wieder herunter gefahren...

Weiter

Update - 24.09.2012

NSArray und NSMutableArray
In diesem Artikel werden die Klassen NSArray und NSMutableArray kurz beschrieben. Außerdem wird die Anwendung einiger weniger ausgewählter Funktionen demonstriert. Unter anderem wird erklärt, wie sich ein Array mit einfachen Mitteln sortieren läßt. ...

Weiter

23.09.2012

Fotografie.
Es gibt jetzt eine Fotogalerie auf der Homepage. Dort findet man Fotos von Darmstadt und Eppstein. Außerdem gibt es Bilder zu den Themen Astronomie, Insekten und eine Sammlung von sonstigen Fotos. Viel Spaß beim Ansehen...


Weiter

22.09.2012

Konvertierung von einem Datum.
Im folgenden wird erklärt, wie man mit einfachen Mitteln ein Datum mit Objective-C umwandelt, d.h. die Formatierung einer Zeit und eines Datum ändert. Verwendet wird dazu ein NSDate und ein NSDateFormatter....


Weiter

10.09.2012

REST-Schnittstelle für ein EJB.
In diesem Artikel wird erklärt, wie man mit ein paar Zeilen Quellcode ein Enterprise Java Bean (EJBs) um eine REST-Schnittstelle erweitert. Die Schnittstelle wird GET, POST und PUT unterstützen...


Weiter

09.09.2012

JEE6 Interceptors - Java Enterprise Edition 6.
In diesem Artikel wird erklärt, was ein Interceptor ist und wie man ihn bei der Entwicklung von Enterprise Java Beans (EJBs) sinnvoll einsetzen kann...

Weiter

08.09.2012

JEE6 Tutorial - Java Enterprise Edition 6.
In diesem JEE6-Tutorial wird erklärt, wie ein Wert über eine JSF-Seite eingelesen und mittels eines Buttons über ein Presentation-Model (Backing-Bean) an ein EJB (Enterprise Java Bean) weitergeleitet wird. Das EJB schreibt den Wert in eine Datenbank, so dass er persistiert wird...

Weiter

16.08.2012

Zugriff auf private Methoden, private Membervariablen und private innere Klassen mit Reflection.
Hier wird gezeigt, wie man mit Java Reflection auf private Methoden, private Membervariablen, private Konstruktoren und private innere Klassen und deren Funktionen zugreift...

Weiter

15.08.2012

Ausgeben eines StackTrace in Java.
Hier wird ganz kurz beschrieben, wie einfach es ist, einen StackTrace einer Exception in Java in einen String zu schreiben oder auf der Konsole mit System.out.println auszugeben...

Weiter

28.07.2012

Eclipse Scout Tutorial.
In dem folgenden Tutorial wird beschrieben, wie mit Eclipse Scout eine einfache Client-Server-Anwendung erstellt wird, die Items verwaltet. D.h. es wird möglich sein neue Items anzulegen und diese zu editieren. Ein Item wird einen Name, ein Kaufdatum, einen Kaufpreis und als Detailinformation eine Abbildung speichern und anzeigen können. Dazu wird ein Eingabe-Formular erstellt...

Weiter

21.07.2012

Cocoa-Tutorial zum programmatischen Erstellen einer NSView/UIView.
In dem folgenden Tutorial wird erklärt, wie man programmatisch eine NSView mit Elementen befüllt und diese mit IBOutlets und IBActions verbindet. In dem Beispiel wird also nicht der InterfaceBuilder verwendet, um die View zu erstellen, sondern es wird mit Objective-C Anweisungen eine View mit NSTextField-, NSButton- und NSBox-Elementen erstellt und mit IBOutlets und IBActions verbunden....

Weiter

Update - 17.06.2012

Tutorial: Zeichnen einer Box mit appendBezierPathWithArcFromPoint (NSBezierPath).
In diesem Tutorial wird erklärt, wie man mit moveToPoint, lineToPoint und appendBezierPathWithArcFromPoint einen NSBezierPath erstellt, der eine Box in eine Custom-View (NSView) zeichnet. Cocoa stellt zwar mit der Klasse NSBox eine Möglichkeit zur Verfügung, um einen Rahmen mit abgerundeten "Ecken" zu zeichnen, aber es gibt Anwendungsfälle ...

Weiter

24.05.2012

Tutorial: UITableViewController mit Custom Cells iOS5.
In diesem Tutorial wird erklärt, wie eine eigene UITableViewCell erstellt und im UITableViewController verwendet wird. Die in dem Beispiel erstellte TableCell besteht aus einem UIImage und drei UILabels. Es ist anzumerken, ....

Weiter

20.05.2012

Tutorial: UITableViewController mit Custom Cells iOS4.
In diesem Tutorial wird erklärt, wie eine eigene UITableViewCell erstellt und im UITableViewController verwendet wird. Die in dem Beispiel erstellte TableCell besteht aus einem UIImage und drei UILabels....

Weiter

17.05.2012

Tutorial: UITableViewController mit UITableViewCells.
In diesem Tutorial wird erklärt, welche UITableCellStyles zur Verfügung stehen und wie man sie in einer UITableView und einem UITableViewController verwendet....

Weiter

15.05.2012

Tutorial: UITableView mit NavigationController.
In diesem Tutorial wird erklärt, wie eine UITableView erstellt wird, die beim Klick auf eine Tabellenzeile eine neue View öffnet. Von der View kann über einen UINavigationController wieder zurück in die UITableView navigiert werden...

Weiter

11.05.2012

Tutorial: UITableViewController mit Sections.
In diesem Tutorial wird erklärt, wie mit einem UITableViewController eine TableView erstellt wird, die verschiedene Sektionen hat. In dem Beispiel werden alle Font-Typen, die auf dem iPhone vorhanden sind, in der UITableView angezeigt. Sie sind jeweils nach ihnen Font-Familien in ...

Weiter

10.05.2012

Tutorial: UITableViewController.
In diesem Tutorial wird erklärt, wie mit einem UITableViewController eine einfach TableView erstellt. In dem Beispiel werden alle Font-Typen, die auf dem iPhone vorhanden sind, in der UITableView angezeigt...

Weiter

09.05.2012

Tutorial: UITabBarController - Badges in der TabBar.
In diesem Tutorial wird erklärt wie Badges, d.h. diese kleinen roten Kreise/Bömmel mit den Zahlen, in einem TabBarItem angezeigt und wieder ausgeblendet werden können. Ausgehen vom dem Beispiel Tutorial: UITabBarController...

Weiter

08.05.2012

Tutorial: UITabBarController (Tabwechsel animieren).
In diesem Tutorial wird erklärt, wie man den Wechsel von Views bei der Verwendung eines UITabBarControllers animiert. D.h. beim Selektieren eines TabBarItems wird beim Wechsel von einer View zu einer anderen View eine Animation eingeblendet...

Weiter

07.05.2012

Tutorial: UITabBarController.
In diesem Tutorial wird erklärt, wie ein UITabBarController benutzt wird, um zwischen verschiedenen Views hin und her zu wechseln. Dazu werden in dem Beispiel zwei Views angelegt. Für beide Views wird jeweils ein eigener ViewController...

Weiter

01.05.2012

Tutorial: Eine Custom-View auf dem iPhone (Sierpinski-Dreieck zeichnen).
In diesem Tutorial wird erklärt, wie man eine iPhone-App mit einer Custom-View erstellt. Die App wird mittels der Methode drawRect das Sierpinski-Dreieck direkt in die Custom-View zeichnen. Zum Zeichnen der Linien und zum Ausfüllen der Flächen wird...

Weiter

28.04.2012

Tutorial: iPhone Programmierung mit Cocoa Touch.
In diesem Tutorial wird eine einfache iPhone-App erstellt. Diese ermöglicht es, eine Texteingabe über ein UITextField zu machen. Durch den Klick auf einen Button (UIButton) wird der Text in ein Label UILabel geschrieben. Die Anwendung...

Weiter

09.04.2012

Sierpinski-Dreieck in eine Custom-View zeichnen.
In der folgenden Beispielanwendung wird ein Sierpinski-Dreieck in eine Cocoa Custom-View gezeichnet. Der Algorithmus für das Sierpinkski-Dreieck ist in Objective-C umgesetzt. Bei dem Sierpinkski-Dreieck handelt es sich um ein Fraktal, welches durch folgende rekusive Regel entsteht: ...

Weiter

08.04.2012

Tutorial: Wie erstelle ich eine Custom View.
In diesem Tutorial wird erklärt, wie man mit Xcode 4 und Cocoa eine Custom-View erstellt, die man beispielsweise verwenden kann, um darin mit NSBezierPath zu zeichnen oder Text anzuzeigen. In diesem Beispiel wird einfach ein kurzer Text mit drawAtPoint:withAttributes: in die NSView gezeichnet...

Weiter

06.04.2012

Routenplanung für Rennrad-Touren.
Ich beschreibe hier, wie man auf einfachem Wege eine Rennrad-Tour planen kann. Dabei wird erklärt, wie man zu den Kilometer-Werten, den Höhenmetern und dem Höhenprofil kommt. Außerdem wird noch kurz erklärt, wie die Route in einem gängigen Format (KML, TCX, GPX, ..) ...

Weiter

25.03.2012

Tutorial: Zeichnen einer Box mit appendBezierPathWithArcFromPoint (NSBezierPath).
In diesem Tutorial wird erklärt, wie man mit moveToPoint, lineToPoint und appendBezierPathWithArcFromPoint einen NSBezierPath erstellt, der eine Box in eine Custom-View (NSView) zeichnet. Cocoa stellt zwar mit der Klasse NSBox eine Möglichkeit zur Verfügung, um einen Rahmen mit abgerundeten "Ecken" zu zeichnen, aber es gibt Anwendungsfälle ...

Weiter

20.11.2011

Wie erstelle ich eine Table View mit statischem Inhalt
In diesem Tutorial wird erklärt, wie eine Table View (NSTableView) mit einer Data-Source verknüpft wird, um die Zeilenweise mit Daten zu befüllen. In dem Beispiel werden die Daten, die angezeigt werden sollen, statisch in einer Datenstruktur aus NSArrays und NSDictionarys hinterlegt. In realen Applikationen würde die Table View dynamisch ...

Weiter

18.11.2011

Einfaches Cocoa-Tutorial mit NSTextFields, NSButtons und NSColorWell (Vokabeltrainer)
In dem folgenden Tutorial wird am Beispiel eines Vokabeltrainers erklärt, wie man NSTextFields, NSButtons und NSColorWells in Objective-C und Cocoa verwenden kann. Bei der Beispielanwendung werden die Vokabeln in einer plist als key-value-Paare verwaltet ...

Weiter

17.11.2011

Einlesen von XML und Zugriff mit XQuery
Hier wird beschrieben, wie XML-Content, d.h. eine XML-Datei oder eine URL, die XML liefert, eingelesen werden. Danach werden gezielt Werte mittels XQuery ausgelesen. Zu beachten ist, daß der XML-Content in ein NSXMLDocument eingelesen werden und damit Probleme auftreten können, wenn die XML-Daten "zu groß" werden. In diesen Fall sollte ein ...

Weiter

02.11.2011

plist-Dateien einlesen und schreiben mit Objective-C
Die plists sind eine Möglichkeit Konfigurationsdateien oder andere Daten auf dem Mac abzulegen. Mit Objective-C lassen sich diese sehr einfach in Datenstrukturen einlesen und wieder auf die Platte schreiben. Die plist-Dateien ...

Weiter

24.10.2011

Aktualisierung aller CorePlot-Tutorials auf CorePlot Version 0.9 und Xcode 4
Alle Tutorials zu CorePlot wurde auf die aktuelle Version 0.9 und Xcode4 gehoben. Bei CorePlot handelt es sich um ein Framework für Mac OSX, iPhone und iPad. Es kann zur 2D-Visualisierung von Daten verwendet werden. Gehostet wird es bei Google-Code unter http://code.google.com/p/core-plot/. ...

Weiter

31.07.2011

Beispiel für den Java SwingWorker mit einem JTree
Im Folgenden wird am Beispiel eines JTree erklärt, wie man den Java SwingWorker einsetzt, um zu verhindern, daß sich eine Swing-Oberfläche nicht neu zeichnet (repaint()), während ein Task oder Prozess lange läuft. In dem Beispiel wird ein JTree erstellt, der auf jeder Ebene 10 Knoten hat. Wird ein Knoten aufgeklappt (expand) ...

Weiter

23.07.2011

Java Swing JTree Performance beim Aufklappen (Expand) von großen Bäumen
Im folgenden wird erklärt, wie die Performance beim Aufklappen von großen JTrees unter Java Swing beschleunigt werden kann. Dazu wird ein Beispiel mit einem JTree implementiert, der sich über ein Popup-Menü aufklappen (expand) läßt. In dem Beispiel wird gezeigt, wie durch das überschreiben der Methode public Enumeration ...

Weiter

12.06.2011

Wie erstellt man eine Java Swing TreeTable
TreeTables mit Java sind ein Thema für sich. Eigentlich geht man davon aus, daß so eine elementare Komponente in jeder GUI-Bibliothek vorhanden sind. Bei Java Swing ist das leider nicht der Fall. Allerdings besteht die Möglichkeit sich eine eigene Komponente zu erstellen, die sich wie eine TreeTable verhält und auch so aussieht. ...

Weiter

19.03.2011

Core Data: Binärdaten (BLOBs-Binary Large OBjects) lesen und schreiben (für Xcode 3.2 und Xcode 4)
Ausgehend von dem Tutorial Simple Core Data Command Line Importer (Xcode 4) wird im Datenmodell nun ein zusätzliches Attribut vom Typ Binary Data (NSData) hinzugefügt, um Binärdaten (BLOBs) zu speichern und zu lesen. In dem Beispiel werden Bilder (jpgs) verwendet. Allerdings können auf die gleiche Weise alle anderen ...

Weiter

13.03.2011

Core Data Command Line Tool für Xcode 3.2 und Xcode 4. (Importieren, Auslesen, Sortieren und Löschen)
In dem Beispielprojekt wird mit Xcode 4 ein einfaches Datenmodell mit Core Data angelegt, das Personen mit Vor- und Nachnamen speichern kann. Danach wird eine Funktionalität ergänzt, die das Importieren von Personen aus einer Textdatei in das Datenmodell erlaubt. Dazu wird eine Textdatei mit Vor- und Nachnamen zeilenweise ...

Weiter

28.02.2011

Einlesen und Laden von Dateien mit Objective-C
In den folgenden Abschnitten findet man Code-Beispiele zum Einlesen und Laden von Dateien. Wie so oft bei Objective-C wird der Java-Entwickler an der falschen Stellen nach einer Methode zum Einlesen suchen. Wie auch schon in dem Artikel Verwendung von Dateipfaden bei Objective-C befindet sich die passende Methode in ...

Weiter

27.02.2011

Verwendung von Dateipfaden bei Objective-C
Im Folgenden wird an ein paar Beispielen erklärt, mit welchen Hilfsmethoden einfach mit Dateipfaden umgegangen werden kann. Beispielsweise das Zerlegen von Pfaden, Zugriff auf das Parent-Verzeichnis, Inhalt eines Verzeichnisses, usw. ...

Weiter

13.02.2011

Neue CorePlot-Beispiele: CorePlot - Drucken von Diagrammen
In dem Beispielprojekt wird mit Xcode 4 ein einfaches Datenmodell mit Core Data angelegt, das Personen mit Vor- und Nachnamen speichern kann. Danach wird eine Funktionalität ergänzt, die das Importieren von Personen aus einer Textdatei in das Datenmodell erlaubt. Dazu wird eine Textdatei mit Vor- und Nachnamen zeilenweise ...

Weiter

11.02.2011

Neue CorePlot-Beispiele: CorePlot - Speichern von Diagrammen als PDF
Im Folgenden wird erklärt, wie ein CorePlot-Diagramm als PDF-Datei abgespeichert werden kann. Als Vorlage kann entweder Tutorial: CorePlot Liniendiagramm oder Tutorial: CorePlot Balkendiagramm verwendet werden. In dem Beispiel wird ein zusätzlicher Button in die Oberfläche eingebaut, der mit einer Methode zum Speichern ...

Weiter

06.02.2011

Neue CorePlot-Beispiele: CorePlot - Liniendiagramme mit Hintergrundfarbe
Im Folgenden wird erklärt, wie man mit dem Mac-Framework CorePlot ein Liniendiagramm erstellt, bei dem der Hintergrund angepaßt wird. In dem CorePlot Liniendiagramme anpassen wurde erklärt, wie ein Liniendiagramm mit CorePlot erstellt wird. Es wurde auf Themen wie Linienstärke, Linienfarbe, Linienart, Symbole, Symbolfarbe...

Weiter

05.02.2011

Neue CorePlot-Beispiele: CorePlot - Liniendiagramme anpassen
In dem Beispiel wird ausgehend von Tutorial: CorePlot Liniendiagramm das Liniendiagramm so angepaßt, daß eine blaue, gestrichelte Linie mit runden weißen Markierungen zu sehen ist. Dabei wird die Breite der....

Weiter

05.02.2011

Neue CorePlot-Beispiele: CorePlot - Liniendiagramme und Symbole (Symbols)
In dem Tutorial: CorePlot Liniendiagramm wurde erklärt, wie ein einfaches Liniendiagramm mit CorePlot erstellt wird. Der folgende Text beschreibt, wie das Liniendiagramm den eigenen Bedürfnissen angepaßt werden kann. Es wird erklärt, wie Markierungen (Symbole) eingefügt werden und wie deren Aussehen beeinflußt werden kann...

Weiter

30.01.2011

Wie erstelle ich ein Liniendiagramm mit CorePlot: Tutorial
Im Folgenden wird erklärt, wie man mit dem Framework CorePlot ein einfaches Liniendiagramm auf dem Mac erstellt. Als erstes muß ein neues Projekt in Xcode angelegt werden. Als Typ wird dabei eine Cocoa Application gewählt. ...

Weiter

25.01.2011

Wie erstelle ich eine Outline View mit statischem Inhalt: Tutorial
In diesem Tutorial wird erklärt, wie die Outline View verwendet werden kann, um eine einfache hierarchische Struktur anzuzeigen. In dem Beispiel werden die Daten, die angezeigt werden sollen, statisch in einer Datenstruktur aus NSArrays und NSDictionarys hinterlegt. In realen Applikationen würde man die Outline View dynamisch füllen. Beispielsweise würde man ...

Weiter

22.01.2011

Wie erstelle ich ein Balkendiagramm mit CorePlot: Tutorial
Im Folgenden wird erklärt, wie man mit dem Framework CorePlot ein einfaches Balkendiagramm auf dem Mac erstellt. Als erstes muß ein neues Projekt in Xcode angelegt werden. Als Typ wird dabei eine Cocoa Application gewählt. ...

Weiter

20.01.2011

Neue Objective-C Code-Schnipsel: Zeichnen von Punkten
Hier werden zwei Möglichkeiten zum Zeichnen von Punkten in Cocoa vorgestellt. Eine Methode, die mit Hilfe von Bezierkurven arbeitet und eine Methode, die mit NSRectFill einen Punkt zeichnet. In dem Beispiel wird ein einfaches Apfelmännchen gezeichnet. Der Begriff Fraktal wurde von Benoit Mandelbrot geprägt und ist durch das "Apfelmännchen" berühmt ...

Weiter

12.01.2011

Neue Objective-C Code-Schnipsel: NSArray und NSMutableArray
In diesem Artikel werden die Klassen NSArray und NSMutableArray kurz beschrieben. Außerdem wird die Anwendung einiger weniger ausgewählter Funktionen demonstriert. Die folgende Funktion zeigt die Verwendung von NSArray. ...

Weiter

12.01.2011

Neue Objective-C Code-Schnipsel: NSDictionary und NSMutableDictionary
In diesem Artikel werden die Klassen NSDictionary und NSMutableDictionary kurz beschrieben. Außerdem wird die Anwendung einiger weniger ausgewählter Funktionen demonstriert. Die Erzeugung eines NSDictionary wird einmal mit der Funktion dictionaryWithObjects:forKeys und einmal mit der Funktion dictionaryWithObjectsAndKeys gezeigt. Zur Ausgabe wird einmal eine ...

Weiter

10.01.2011

Neue Objective-C Code-Schnipsel: Convenience Allocator mit dem Autorelease-Pool
Eine einfache und elegante Methode das "Aufräumen" von Objekten vor dem Benutzer einer Klasse zu verbergen ist der Convenience Allocator. Dies ist eine Art Factory (siehe Factory Pattern)., die als Hilfsmittel den Autorelease-Pool (ARP) verwendet um den allokierten Speicher wieder freizugeben. Der folgende Code zeigt eine Klasse die eine solche Factory-Methode...

Weiter

10.01.2011

Neue Objective-C Code-Schnipsel:NSString und NSMutableString
In diesem Artikel werden die Klassen NSString und NSMutableString kurz beschrieben. Außerdem wird die Anwendung einiger weniger ausgewählter Funktionen demonstriert....

Weiter

09.01.2011

Verwendung von CorePlot
Hier findet man eine Einführung und Installationshinweise von CorePlot. In den Installationshinweisen wird auf deutsch erklärt, wie man CorePlot auf dem Mac einrichtet. Außerdem werden an Beispielen und in Tutorials verschiedene Themen rund um CorePlot eräutert...

Weiter

08.01.2011

Neue Objective-C Code-Schnipsel: Grundlagen
Der folgende Code-Schnipsel erzeugt ein Objekt vom Type NSString. Als erstes wird die Variable testString deklariert. Dann wird Speicher für die Variable reserviert und es wird ihr beim Initialisieren der Wert Hello World! zugewiesen. Dann erfolgt die Ausgabe auf der Console und die Freigabe des reservierten Speichers. ...

Weiter

08.01.2011

Neue Objective-C Code-Schnipsel: Memory Management
Mit dem Autorelease-Pool (ARP) lassen sich viele Probleme in Bezug auf die Speicherfreigabe lösen. Wird beispielsweise ein Objekt erzeugt und es ist nicht klar, wie lange es benötigt wird und wer es zu gegebenen Zeit wieder deallokiert, d.h. den Speicher freigibt, dann wird der ARP eingesetzt. ...

Weiter

08.01.2011

Neue Objective-C Code-Schnipsel: Objekt-Orientierung
In dem Artikel geht des um Vererbung und Polymorphie. Um zu zeigen wie das Prinzip der Polymorphie ist, werden drei Klasse definiert die alle von der Klasse JHGraphic erben und die Funktion draw implementieren. Das folgende UML-Digramm zeigt die Vererbungsstruktur: ...

Weiter

20.07.2010

Neuer Webauftritt. Die alte Webseite findet man hier
Unter dieser Adresse findet man den "alten" Webauftritt. Die Inhalte sind allerdings alle auf der neuen Seite zu finden. ...

Weiter

07.08.2009

Veröffentlichung des Cocoa Kochbuchs
Im Jahr 2009 haben wir (Ferhat Ayaz, Erik Meißner, Jörn Hameister) ein Buch zum Thema Cocoa und Objective-C verfaßt. Das Buch beinhaltet Rezepte mit Fortgeschrittenen Themen zu Cocoa und Objektive-C. Es werden folgende Themen behandlet: Zahlreiche Rezepte und Beispiele für den sofortigen Einsatz; Applikationen, Frameworks, XML, Internet, Kommunikation, Agenten; Persistenz, Xcode Hacks, PDF-Export, Drawing ...

Weiter

25.06.2009

Heike Hameister's Web-Seite
Focussing on bioinformatics, plant physiology and biochemistry, I graduated at Darmstadt Technical University in 2007. While working in the bioinformatics group of Prof. Dr. Marc-Thorsten Hütt, I wrote my diploma thesis, discussing the "correlation-based signatures of microorganisms". Please find more information in my curriculum vitae. ...

Weiter

20.01.2008

Die Blog-Seite ist online.
Auf dieser Blog-Seite findet man allerlei Dinge, die mir im alltäglichen Leben passieren. Viele Dinge sollte man allerdings nicht allzu ernst nehmen. ...

Weiter

19.04.2006

TransinformationPicture hinzugefügt. Programm, daß ein Bild mittels der Transinformation untersucht.
Die Transinformation (mutual information) gibt die Korrelation zweier Zufallsgrößen an. Einfach ausgedrückt versteht man darunter, daß die Transinformation die Information von X mißt die mit Y geteilt wird. Wenn X und Y unabhängig sind, dann enthält X keine Information über Y und umgekehrt. In diesem Fall ist die Transinformation 0. Falls X und Y gleich sind, dann erhält man keine neue Information über X, wenn man Y untersucht. Die Transinformation ist in diesem Fall 1. ...

Weiter

09.04.2006

Fractal hinzugefügt. Zum Experimentieren mit Fraktalen (Mandelbrot- und Julia-Mengen)
Der Begriff Fraktal wurde von Benoit Mandelbrot geprägt und ist durch das "Apfelmännchen" berühmt geworden. Interessant an der Sache ist die recht einfach aussehende Definition der Mandelbrotmenge, deren grafische Darstellung das "Apfelmännchen" ergibt. Die folgende Abbildung zeigt ein "Apfelmännchen": ...

Weiter

04.04.2006

DNA-Alignment hinzugefügt. Tool zur Berechnung von Sequenzalignments.
Da DNA-Sequenzen in der Biologie experimentell gewonnen werden, sind sie häufig mit Meßfehlern behaftet, daher macht es Sinn zwei DNA-Sequenzen nicht "genau" zu vergleichen. Deshalb versucht man bei einem Sequenzalignment zwei DNA-Sequenzen so untereinander zu schreiben, daß möglichst viele Übereinstimmungen gefunden werden. Dabei ist es erlaubt Platzhalter in die DNA-Sequenzen einzufügen, damit die Übereinstimmungen "größer" werden. Als Maß für die Übereinstimmung, werden Punkte für ein "Match", "Mismatch" oder ein "Gap" verteilt. Die Werte dafür sind abhängig von dem verwendeten Algorithmus. ...

Weiter

13.03.2006

DNA-Analyzer hinzugefügt. Tool zum Nachweis künstlicher DNA.
Der DNA-Analyzer ist ein kleines Tool zur Analyse von DNA-Sequenzen. D.h. mit dem Tool ist es möglich die Häufigkeit von Basis-Sequenzen zu analysieren. Die Idee zu dem Tool kam mir bei der Lektüre des Buches "Methoden der Bioinformatik - Eine Einführung" von Marc-Thorsten Hütt und Manuel Dehnert. In dem Buch wird die DNA-Sequenz aus den Roman "Jurassic Park" untersucht und nachgewiesen, daß es sich um keine reale DNA-Sequenz handeln kann. Die Idee hinter dem Nachweis ist der CG-Gehalt in einer ...

Weiter

26.02.2006

Rubrik Bücher hinzugefügt. Rezensionen und Buch-Tips.
Eigentlich wollte ich nur mal sehen, wieviele Bücher ich so in einem Jahr lese. Deshalb habe ich angefangen zu jedem Buch, das ich gelesen habe, bei Amazon eine Rezension zu schreiben, um am Ende des Jahres nur die Rezensionen zählen zu müssen. Tja, es war dann doch ziemlich erscheckend, wieviele es waren. Und es werden immer mehr... ...

Weiter

12.02.2006

Bio Perl Tools hinzugefügt. Verschiedene Perl-Scripte für die Sequenzanalyse in der Bioinformatik.
In den folgenden Abschnitten findet man ein paar nützliche Tools zur Sequenzanalyse in der Bioinformatik. Alle Tools sind in Perl geschrieben. simpleRepeatStatistics.pl Die mit diesem Perl-Skript läßt sich eine Repeat-Tabelle einlesen und nach SimpleRepeats durchsuchen. D.h. es werden nur die Zeilen aus der Repeat-Tablle verwendet, die als repClass den Eintrag "SimpleRepeat" haben. Danach werden die Muster (Pattern) der SimpleRepeats gezählt (Wert in repName) und die Gesamtlänge der Muster gespeichert (genoEnd-genoStart). ...

Weiter

28.09.2005

step2html -Tool hinzugefügt. Wandelt eine Step-Datei in eine HTML-Datei um.
Dieses Tool transformiert eine STEP-Datei in eine HTML-Datei. Nach der Transformation ist es möglich die HTML-Datei in einem Browser zu laden. Folgende Funktionalitäten stehen zur Verfügung: Die STEP-Elemente, Referenzen und Text sind farblich hervorgehoben. Die STEP-Referenzen können über Links verfolgt werden. Beim Überfahren der der Links wird das Ziel-Element angezeigt. ...

Weiter

27.09.2005

Homepage-Generator Version 1.1; Kleine Erweiterungen und Bugfixing.
Der Homepage Generator ist ein einfache Perl-Script mit dem man auf sehr einfachem Wege seine eigene Homepage erstellen und auch pflegen kann. Auch diese Homepage ist mit diesem Tool erstellt worden. Das Perl-Script läßt sich über zwei XML-Datei konfigurieren. In der einen XML-Datei wird die Struktur der Navigation der Homepage angegeben, in der anderen XML-Datei werden die Farbeinstellungen und andere Einstellungen gemacht. ...

Weiter