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

Glisser/déposer une image avec Swift

< swift cocoa >

Avec Swift et Cocoa, le pouvoir dont on dispose en seulement quelques lignes de code est impressionant.

Un mécanisme typique d'OS X est le “drag & drop” (“glisser/déposer”) : avec la souris ou le trackpad, on attrape un fichier image à partir du Finder et on le dépose sur la fenêtre d'une application, et l'image apparaît instantanément dans l'application, donnant à l'utilisateur la sensation d'avoir effectué un geste naturel.

Nous allons créer en quelques minutes une micro application pour démontrer ce principe.

Article mis-à-jour le 2015-06-12.

Lire la suite

Un mini serveur d'API en Ruby

< ruby api >

On a souvent besoin de tester des requêtes Internet quand on développe une application, par exemple pour vérifier dans une app iOS que la connexion se fait bien en arrière-plan, que le JSON reçu est bien décodé, etc.

On serait tenté de s'adresser à son serveur de prod, ou même d'utiliser Dropbox… mais il y a plus cool : se faire son propre mini serveur de tests.

Et avec Ruby, c'est très simple, et ça prend à peine vingt lignes de code.

Let’s go!

Lire la suite

De bien belles boucles avec Swift

< swift >

Aujourd'hui nous allons voir plusieurs façons de boucler dans une structure de données en Swift : une méthode héritée du C, une méthode qui rappelle Ruby, et une autre façon Programmation Fonctionnelle.

Nous verrons des exemples avec tableaux (Array) et dictionnaires (Dictionary), et en profiterons pour visiter les “tuples”.

Article mis-à-jour le 2015-06-11.

Lire la suite