- KonferenzenVorträge auf Software-Entwicklerkonferenzen
- PublikationenVeröffentlichungen in Fachmagazinen
- ReferenzkundenAusgewählte Kunden unserer Trainings
Xcode/LLDB Debugging
Gewiss hat jeder Entwickler bereits in Xcode mit Breakpoints, Watch-Ausdrücken und dem Debuggen der View-Hierarchie Erfahrungen gesammelt. Doch wer sein Programm ausschließlich per IDE debuggt und den Programmablauf per print-Anweisungen nachverfolgt, stößt schnell an die Grenzen der Handhabbarkeit. Tatsächlich werfen sowohl das Betriebssystem mit os_log als auch Xcode mit LLDB und Instruments einige sehr mächtige Werkzeuge in den Ring.
Dieser Vortrag liefert einen vertieften Einblick in die Möglichkeiten der Analyse, des Tracings und des Debuggings unter Xcode und vermittelt übergreifende "best practices"
Unsophisticated Software Development
Simplicity is prerequisite for reliability. — Edsger Dijkstra
This talk is about the drawbacks of (over)sophisticated software design and implementation. It recalls to hold off from overengineered stuff and reminds us to better write clean, understandable code that does not surprise anyone (POLS/KISS).
Large scale software projects tend to become harder and harder to maintain. I'll show real-life pitfalls of my own experience in large scale projects (ea. >5 years running time and >50 developers) in different languages like C++, Java and C# (and also a little Swift :-). These samples include (but not restricted to):
How over-adoption of the newest language features cause unforseen side effects at customer site; how "astrally" architecture intended to last for decades emerges to be so overengineered that nobody understands it; how highly sophisticated self-made funky language "extensions" are soon out-dated by newer programming language versions.
Real programmers don't comment their code. If it was hard to write, it should be hard to understand. — Tom Van Vleck
Swift Gotchas - Was wie und warum in der Programmiersprache Swift gelöst wurde
Mit der Veröffentlichung der Programmiersprache Swift ist es Apple gelungen, zwei Fliegen mit einer Klappe zu schlagen. So wurde eine moderne Ersetzung für das etwas "muffig" anmutende Objective-C geschaffen, ohne die Kompatibilität zu bestehenden Frameworks und Projekten aufzugeben.
Der Vortrag zielt auf interessierte C#-, Java-, etc.-Entwickler, die etwas über die neuen Konzepte in Swift erfahren möchten; wie manche Dinge in Swift übernommen wurden, welche Aspekte eventuell einen Rückfluss auf C# und Java haben könnten. Auch Swift-Entwickler können interessante Aspekte entdecken, warum das eine oder andere Sprachmittel genau so entworfen wurde.
Testen von iOS-Apps
Unternehmen und Entwickler müssen gute und funktionale Apps
mit hoher Qualität in den Apple Store bringen. Deshalb ist neben
dem manuellen Testen die Testautomatisierung von iOS Apps sehr
wichtig und kann durch zahlreiche Tools einfach in den Entwicklungsalltag
integriert werden. Dieser Talk gibt einen Einblick in
moderne Testmethodiken auf unterschiedlichen Testebenen.
Apple Enterprise Developer Program
Der Vortrag zeigt auf, wie Sie Apps für Ihr Unternehmen entwickeln und auf Firmengeräte
verteilen können, ohne über den Apple App Store gehen zu müssen.
iCloud Programmierung
Mit Hilfe der iCloud Services speichern Anwendungen Daten und
auch Konfigurationseinstellungen. Der Vortrag zeigt grundlegende
Unterschiede zwischen konventionellen Anbietern einerseits und
der Apple iCloud andererseits. Anhand von vielen praktischen Codebeispielen
lernen Sie den iCloud Dienst richtig zu benutzen.
Blocks und GCD
Mit Hilfe von Blocks lassen sich in Objective-C viele Konzepte umsetzen,
die in anderen Programmiersprachen als Closures bekannt
sind. Inzwischen haben Blocks auch breiten Einzug in die Cocoa
APIs gefunden und vereinfachen dort gängige Problemstellungen.
Im Zusammenspiel mit Grand Central Dispatch steht dem iOS-Entwickler
außerdem eine gelungene Möglichkeit zur Verfügung, nebenläufigen
und asynchronen Code zu beherrschen.
Debugging in Xcode (Tracing und Logging, Die LLDB-Umgebung)
Mac & i 03/2021, S. 140
Mac & i 04/2021, S. 126
Xcode bietet viele Möglichkeiten, um den Code von Programmen zu analysieren, Fehler zu entdecken und sie zu beheben. Der erste Teil widmete sich dem Tracing und Logging,
im zweiten Teil lernen Sie, mithilfe des LLDB Ihr Programm gezielt an bestimmten Stellen zu unterbrechen, zu untersuchen und den Programmaufbau zu analysieren.
iCloud mit iOS 5 und XCode 4.2
iX 01/2012, S. 142
Mit iOS 5 hat Apple sein mobiles Betriebssystem aufgefrischt. Für den Endkunden stellt es sich in erster Linie durch die Einführung und Anbindung der iCloud-Dienste dar – aber für App-Entwickler hat sich ebenfalls viel getan.
Mac-IDE Xcode 4: Interface Builder integriert
iX 07/2011, S. 68
Für einen Mac Software zu entwickeln – beispielsweise in Objective‑C geschriebene Anwendungen für iPhone oder iPad –, erfordert eine darauf abgestimmte Entwicklungsumgebung. Das hauseigene Xcode hat Apple kürzlich in der Version 4 mit diversen Neuerungen veröffentlicht.
Stolpersteine beim Programmieren mit Objective‑C
iX 01/2011, S. 106
Mit dem Erfolg des iPhone hat es Objective‑C – die Sprache für die Mac- und App-Entwicklung – in die Top 10 des TIOBE-Index populärer Programmiersprachen geschafft. Eine Sprache, von der viele nicht wissen, was sie von ihr und woran sie sich bei ihr halten sollen