Vor einiger Zeit habe ich hier im Blog beschrieben, wie man einen SVN-Server mit SSH-Zugang einrichtet. Die Nutzung eines derartigen Accounts unter macOS und Linux ist vollkommen unkompliziert, zum erstmaligen Aus-Checken reicht ein Kommando:
svn co svn+ssh://<user-name>@<host-name>/home/svn-repos/mein-projekt
Danach cd mein-projekt, svn update, svn add datei, svn commit -m 'bla bla' etc.
Was aber, wenn auf dem Client-Rechner Windows läuft? Dann ist — wie immer — alles ein wenig komplizierter. Diese Anleitung zeigt, wie Sie mit Putty und TortoiseSVN ans Ziel kommen.
Im Dezember 2015 habe ich Swift unter Linux erstmals ausprobiert, im März 2016 habe ich meine Experimente mit Beta-Versionen von Swift 3 und Ubuntu 16.04 wiederholt. Restlos begeistert war ich nicht. Heute habe ich einen neuen Versuch gestartet, wieder unter Ubuntu 16.04, und diesmal mit einem Swift 3.0.1 GM Candidate.
Nachdem Apple anscheinend nicht vorhat, zeitnah Updates für «OS X El Capitan« zu veröffentlichen, habe ich gestern etwas widerwillig »macOS Sierra« installiert. Das Update steht im App Store zur Verfügung und kostet nichts. Die Durchführung ist unkompliziert und war in meinem Fall nach einer halben Stunde erledigt. So weit, so gut.
Für Normalanwender ist Ubuntu 16.10 nicht gedacht, und für die Profis bietet die Distribution wenig fundamentale Neuerungen. Trotzdem kann ein kurzer Blick auf Ubuntu 16.10 nicht schaden.
Der Ubuntu-Desktop ist im Vergleich zu Ubuntu 16.04 unverändert geblieben.
Seit Ende September 2016 gibt es ein neues Raspbian-Image. Die wichtigste Neuerung ist die Umgestaltung des Desktops, der jetzt PIXEL heisst. Fundamental neue Funktionen bietet er kaum, aber zumindest sehen die Fensterrahmen hübscher aus als bisher. Auch die Icons sind neu und farbenfroh gestaltet; wie weit das eine Verbesserung ist, darüber kann man geteilter Meinung sein.
Der neue PIXEL-Desktop mit einer eindrucksvollen Bergaufnahme als Hintergrund.
Wenn Sie in Xcode ein neues Projekt vom Typ iOS/Game/Spritekit oder tvOS/Game/SpriteKit erstellen, dann richtet Xcode wie üblich einige Musterdateien ein. Diese enthalten bereits ein ausführbares Programm, das ‚Hello World‘ anzeigt. Nicht ungewöhnlich, würde man meinen.
So sieht die App aus, die aus dem SpriteKit-Mustercode erstellt wird. Ein wenig trist, ohne Animation und Interaktion …
Wenn Sie in Xcode eine App im Simulator ausführen, erscheinen im Debugging-Bereich von Xcode (genaugenommen in der Konsole, das ist der rechte Teil des Debugging-Teilfensters) schier unendlich viele Meldungen, die in aller Regel niemanden interessieren. Wenn Sie in Ihrem Code selbst den einen oder anderen print-Aufruf eingebaut haben, dann gehen Ihre eigenen Ausgaben in der Simulator-Nachrichtenflut vollständig unter.
Eine mögliche Lösung besteht darin, die App auf einem echten iPhone, iPad oder Apple-TV-Gerät auszuführen. Um auch im Simulator etwas mehr »Ruhe« herzustellen, müssen Sie das Run-Schema verändern. Dazu führen Sie Product/Scheme/Edit Scheme aus, wählen das Run-Schema aus, wechseln in das Dialogblatt Arguments und fügen dann im Bereich Environment
Variables die Einstellung OS_ACTIVITY_MODE = disable hinzu.
Diese Einstellung schafft himmlische Ruhe im Debugging-Bereich.
Beachten Sie aber, dass diese Einstellung einen offensichtlichen Nachteil hat: Mitunter verbergen sich in der Flut der Debugging-Ausgaben auch wichtige Informationen, z.B. dass Sie vergessen haben, in Info.plist einen Schlüssel einzustellen, damit die App um Erlaubnis fragt, ob sie Ortsdaten benutzen darf (This app has attempted to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSLocationWhenInUseUsageDescription key with a string value explaining to the user how the app uses this data). Solche Meldungen gehen mit der Einstellung OS_ACTIVITY_MODE = disable verloren.
Apple bietet im App Store die kostenlose App Swift Playgrounds für iPads an. Die App soll vor allem Jugendlichen dabei helfen, die Grundkonzepte von Swift spielerisch zu erlernen. Die Animationen sprechen vermutlich eher acht- bis zehnjährige Kinder an, aber lassen Sie sich davon nicht abhalten: Die App hat wesentlich mehr Substanz, als die grafische Gestaltung vermuten lässt, und ist durchaus auch für erwachsene Einsteiger in die Swift-Programmierung interessant. In zahlreichen, allmählich anspruchsvolleren Übungen lernen Sie durchaus systematisch Methoden, Schleifen, if-Abfragen etc. kennen.
Durch die Definition einer eigenen Funktion und den Aufruf diverser Methoden soll die Spielfigur »Byte« zum Ziel gesteuert werden.
Swift 3.0 ist fertig. Seit 7. September 2016 ist Xcode 8 als Gold Master (GM) für alle Teilnehmer des Apple-Developer-Programms verfügbar, in ein paar Tagen wird die finale Version kostenlos im App Store auftauchen. Was ist also neu?
Updates 17.9.2016, 20.9.2016: Noch mehr Details sowie Xcode-Screenshots.
Diese Website verwendet Cookies nur in minimalem Ausmaß. Es gibt weder Werbung noch Analytic-Funktionen.
Funktional
Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt.Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.