Java-9-Highlights

Diese Woche durfte ich eine Schulung zu Java-9 mitmachen. Dabei habe ich die für mich interessantesten Highlights notiert, die ich hier kurz wiedergeben möchte. Da meines Erachtens das Modulsystem „Jigsaw“ das hightlight darstellt, hat es einen eigenen Abschnitt – danach kommt nur noch „Kleinkram“. (Man möge mich belehren, wenn ich da etwas übersehe.) Modularisierung „Jigsaw“ Read More…

jq: ein sed für JSON

jq ist ein sehr nützliches Tool, um JSON-Dateien (bzw. z.B. JSON-Ausgaben) auf einfache Weise zu bearbeiten, filtern oder transformieren. Ich habe es schonmal erwähnt. Installiert wird es „normal“ via brew install jq (Mac) bzw apt-get install jq (Linux). Hier ein hübsches Beispiel aus der Praxis zur Demonstration: cat my.js | jq ‚ .itemContents[] | select(.item.status Read More…

Wann StringBuilder und wann StringBuffer verwenden?

Sowohl StringBuilder als auch StringBuffer machen das erstellen von langen, konkatenierten String effizienter, da Java ja nicht erlaubt, bestehende Strings zu verändern. Aber was ist der Unterschied zwischen beiden? Hier steht die simple Antwort. Kurzfassung: StringBuffer ist thread-safe und daher etwas weniger effizient. StringBuilder ist nicht thread-safe und dafür etwas effizienter.

SmartGit: Grafischer Git-Client

Wer git liebt, verflucht git sicher auch von Zeit zu Zeit – so wie ich auch… Ein Grund dafür ist die oft in der Kommondozeile fehlende Übersicht des Zustands des Repos. In solchen Fällen verwende ich gerne Atlassians SourceTree. Unter Linux habe ich das aber nicht. Da ist dann SmartGit eine aktzeptable Alternative. Leider nicht Read More…

iOS-Entwicklung: Revisionsnummer patchen

Ich habe zu meiner „Tür auf“-App ein Widget hinzugefügt. Beim Upload desselben hat mir Apple (Xcode) mitgeteilt, dass die Revisionsnummer (CFBundleVersion) vom Widget auf 1 stünde, während die App eine andere (korrekte) hatte. Klar, mein getrevision.sh war als Build-Step nur im App-Target eingebaut. Leider half es nichts, es 1:1 ins Widget-Target einzubauen – es musste Read More…

CocoaPods auf aktuellem Mac upgraden

CocoaPods kenne ich benutze ich schon eine Weile. Es gandelt sich um eine Bibliothek von nützlichen Open-Source-Komponenten zur Verwendung in iOS / Xcode. Dazu gehört ein Tool, mit dem man diese herunterladen, ins Projekt integrieren und aktualisieren kann etc. Sehr zu empfehlen! Dieses Tool heißt pod und wird laut Webseite mit sudo gem install cocoapods Read More…

LogMX: Logfile-Analyser

Logfile schaut der Purist im tail -f file.log an – so mache auch ich das. Aber manchmal kann das recht unübersichtlich sein…. Mit LogMX wird das deutlich übersichtlicher: Das Logfile wird analysiert und „grafisch“ dargestellt. Weil LogMX in Java geschrieben ist läuft es auch auf dem Mac. Im Baum Links kann man z.B. einzelne (Teil-) Read More…

Resilience – Wie mache ich robuste Software?

Patterns of resilience ist wirklich lesenswert. Sollte man immer mal wieder verinnerlichen… Interassant ist vor allem, dass eigentlich nichts Weltbewegendes gesagt wird, sondern nur „Kleinigkeiten“, die – gemeinsam betrachtet und umgesetzt – ein System robust machen. Nebenbei: „Resilience“ wird dort so definiert: Resilience (IT) the ability of a system to handle unexpected situations without the Read More…