Ein Echtzeitsystem garantiert, innerhalb einer definierten Zeit auf Signale oder Zustandswechsel zu reagieren. Ob diese Maximalzeit nun Mikrosekunden, Millisekunden, Sekunden oder gar Minuten sind, ist irrelevant. Doch kann man in Java-Programmen eine solche Maximalzeit garantieren?
This article is only available in German.
Während meiner aktuellen Arbeit an einem Programm mit weichen Realtime-Bedingungen (soft real-time system) kam ich in die Verlegenheit, wissen zu müssen, wie viel Zeit zwischen dem Auftreten eines Interrupts in einem Linux-Kernel-Modul und seiner Verarbeitung im Java-Programm vergangen ist, weil das Ergebnis eines Zyklus, der über 200ms benötigte, verworfen werden müssen. Java bietet aber nur einen absoluten Zeitstempel in Millisekunden …
This article is only available in German.
Gerade bin ich dabei das Eclipse auf meinem derzeit recht selten verwendete Homeoffice-Computer auf Galileo (Eclipse 3.5) zu bringen. Da das Upgrade eines solchen Versionssprung wohl erst ab der 3.5 auf höhere Versionen gehen soll, fällt also mal wieder das Nachinstallieren aller Plugins an. Einige davon hatte ich in anderen Blog-Artikeln erwähnt, doch hier mal alle aktuellen Lieblings-Plugins zusammen:
This article is only available in German.
Bei Verwendung von Maven ist die Ziel-Versionsnummer des eigenen Programms in der pom.xml festgelegt. Selbstverständlich kann man auch aus dem Programm heraus mit Java darauf zugreifen, denn Maven erzeugt eine pom.properties Datei unterhalb von META-INF, in der u.a. die Versionsnummer und der Zeitstempel des Build steht:
This article is only available in German.
Viele Experten empfehlen, besser viele kurze Methoden zu programmieren als wenige lange Methoden. Dieselbe Regel kann auch aus anderen Empfehlungen abgeleitet werden. So führen z..B das Prinzip One level of abstraction und das Single Responsibility Principle zu kurzen Methoden. Und auch die Empfehlung, dass die im Quellcode verwendeten Bezeichner, also auch Methodennamen, ihr Subjekt ausreichend dokumentieren sollten, läuft auf kurze …
This article is only available in German.