Monsieur Météo, suite : interface graphique

< tutoriel swift cocoa osx >

Nous allons utiliser notre précédent code et l'inclure dans une mini application pour OS X.

Une simple petite fenêtre que l'on peut garder dans un coin de l'écran et qui indique le temps qu'il fait à l'endroit où se trouve votre machine.

En ajoutant la géolocalisation et une icone à notre ancien projet on obtient tout de suite quelque chose d'intéressant tout en restant simple à développer.

Lire la suite

Monsieur Météo en Swift

< swift osx dossier tutoriel >

Dans ce tutoriel, nous allons nous amuser à écrire vite fait une mini application météo !

Une simple application qui dit, pour ceux qui n'ont pas de fenêtres dans leur pièce, la température qu'il fait dehors, le vent et sa direction, s'il y a des nuages, s'il pleut, etc. ;)

Pour rester dans le domaine du faisable dans le cadre de ce tutoriel, notre app va simplement écrire le résultat par texte, on ne fera pas d'interface graphique.

Pas de géolocalisation non plus, on tape soi-même le nom de la ville - toutes ces fantaisies seront pour un autre article, il y a déjà beaucoup à faire avant d'en arriver là.

Lire la suite

Qu'est-ce qu'un "delegate" ?

< swift tutoriel >

Qu'est-ce qu'un “delegate” ?

On retrouve le principe de la délégation partout dans OS X et iOS.

Un champ de texte, par exemple, prévient son potentiel délégué que l'utilisateur est en train de taper du texte, a fini de taper, etc.

Ceci dit, est-il utile d'implémenter nous-même la délégation dans nos objets ? Et comment fait-on ?

On va s'amuser à explorer quelques exemples, purement en Swift, rapidement, dans un simple Playground.

Lire la suite

Les extensions avec Swift 2

< swift >

Quand on manipule des données on a historiquement le réflexe de créer des fonctions globales, ainsi que d'utiliser des boucles, pour manipuler des collections telles des array.

Avec Swift 2, grâce aux extensions, nous allons voir qu'il est facile de se créér des collections dont le comportement est personnalisé, et que l'on n'a pas besoin de boucles ni de fonctions globales.

Le code est plus simple d'usage, expressif, et bien évidemment très puissant, c'est l'intérêt.

Extend all the things!

Lire la suite

Accéder à CoreFoundation avec Swift

< swift c objective-c osx >

Si je veux que mon application obtienne les icones des volumes actuellement affichés dans la barre latérale du Finder, ou encore obtenir la liste des dix dernières applications lancées par l'utilisateur, ce genre de chose, je dois faire appel à CoreFoundation et à ses étranges API en C.

Mais accéder aux API CoreFoundation d'OS X avec Swift n'est pas vraiment intuitif.

C'est que ces API sont très différentes des API modernes, et il est souvent necessaire d'étudier la documentation en profondeur… quand elle existe.

Ensuite il faut s'adapter à la gestion de la mémoire qui est différente, ainsi qu'inspecter un peu partout pour trouver les signatures des méthodes, le type des objets…

On va étudier un exemple concret en détail, et en profiter pour lister quelques astuces.

Lire la suite