IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Tutoriel Swift - Développer des Apps iOS 8

Partie 1

Apple a récemment annoncé un changement assez majeur sur la façon dont les applications iOS ont été développées dans le passé, un langage de programmation tout à fait différent appelé Swift qui remplace Objective-C. Comme je me suis lancé dans l'apprentissage de ce langage, j'ai décidé de poster régulièrement mes découvertes pour les partager. Cet article est le premier d'un grand nombre sur le sujet, et j'espère que vous allez les suivre !

Donc, je vais commencer avec une application assez basique et expliquer comment le code fonctionne.

Cette section a été entièrement mise à jour pour refléter les changements dans Xcode6 Bêta 5 à partir du 4 août 2014. Ce tutoriel est la première partie d'une sèrie de 8 tutoriels

Les commentaires et les suggestions d'amélioration sont les bienvenus, alors, après votre lecture, n'hésitez pas. 13 commentaires Donner une note à l´article (5).

Article lu   fois.

Les deux auteur et traducteur

Traducteur : Profil Pro

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

Introduction▲

Image non disponible
- Le développement iOS se déplace à Swift

Apple a récemment annoncé un changement assez majeur sur la façon dont les applications iOS ont été développées dans le passé, un langage de programmation tout à fait différent appelé Swift qui remplace Objective-C. Comme je me suis lancé dans l'apprentissage de ce langage, j'ai décidé de poster régulièrement mes découvertes pour les partager. Cet article est le premier d'un grand nombre sur le sujet, et j'espère que vous allez les suivre !

Il est très probable que la plupart de ces exemples de code Swift seront modifiés plus tard. Cela parce que je code rapidement pour montrer un maximum de choses et tester le langage puisque (comme tout le monde) je suis complètement nouveau et je commence de zéro. Il est donc probable qu'en apprenant des choses au fil du temps, le cours de ce tutoriel va changer. Je mettrai à jour les exemples de code selon les besoins, mais pas tant que le processus d'apprentissage n'est pas mis en évidence. Je pense que c'est aussi un processus utile à suivre.

En plus de cette série de tutoriels, je travaille également sur un livre rempli de plusieurs autres tutoriels et essais sur l'utilisation de Swift. Sa parution est prévue pour le mois d'août.

Donc, je vais commencer avec une application assez basique et expliquer comment le code fonctionne. Prêt ? Et c'est parti...

I. Les bases▲

Swift supprime le principe de déclaration des variables en commençant par leurs noms de type, et choisit à la place d'utiliser un mot clé JavaScript comme « var » pour définir une variable.

Par exemple, là où en Objective-C vous avez ceci :

 
Sélectionnez
1.
NSString *myString = @"This is my string.";

vous avez maintenant ceci :

 
Sélectionnez
1.
var myString = "This is my string."

En même temps, les constantes sont exprimées avec le mot-clé « let » :

 
Sélectionnez
1.
let kSomeConstant = 40

Dans ce cas, kSomeConstant est défini de façon implicite comme un entier. Si vous voulez être plus précis, vous pouvez spécifier son type comme ceci :

 
Sélectionnez
1.
let kSomeConstant: Int = 40

Tant les tableaux que les dictionnaires sont décrits en utilisant les crochets [] :

 
Sélectionnez
1.
var colorsArray = ["Blue", "Red", "Green", "Yellow"]
 
Sélectionnez
1.
var colorsDictionary = ["PrimaryColor":"Green", "SecondaryColor":"Red"]

Il y a beaucoup plus à passer en revue, mais je pense que ces bases sont importantes pour entamer le tutoriel. Sur ce, passons à « Hello World ».

II. Hello World▲

Tout d'abord, nous allons écrire l'application la plus simple que l'on peut imaginer pour commencer, « Hello World ». Ce segment vient directement de mon prochain livre sur le développement Swift, mais il est si important et fondamental pour commencer que j'ai pensé qu'il serait bien de le publier gratuitement ici.

Notre application va faire une seule chose : afficher « Hello World » dans la console. Pour continuer, vous aurez besoin d'une version de Xcode pour développeur, ce qui nécessite un compte développeur. Si vous en avez un, allez à l'adresse https://developer.apple.com/ pour vous procurer cette version avant de commencer.

Donc, maintenant vous avez votre IDE en place. Écrivez « Hello World » dans la console. Dans cet exemple, vous allez construire la plus simple des applications et surtout voir comment configurer correctement votre environnement.

Créez un projet Xcode en utilisant le template « Single View Application » et assurez-vous de sélectionner Swift comme langage.

Image non disponible
Choisissez un template pour votre nouveau projet
Image non disponible
Choisissez les options pour votre nouveau projet

Vous devriez trouver maintenant un fichier AppDelegate.swift dans la hiérarchie du projet. À l'intérieur de ce fichier, trouvez la ligne :

 
Sélectionnez
1.
"// Override point for customization after application launch."

Remplacez cette ligne par notre code extraordinaire « Hello World » :

 
Sélectionnez
1.
println("Hello World")
Image non disponible

Maintenant, cliquez sur run et vous devriez voir démarrer une application vierge, et les mots « Hello World » affichés dans la console.

Notez que ce ne sera pas affiché dans le simulateur iPhone. Regardez en bas de votre fenêtre de Xcode et vous verrez « Hello World! » dans une console.

Image non disponible

Félicitations, vous venez d'écrire votre première application Swift ! Cette application ne gagnera probablement aucun prix, essayez de faire quelque chose d'un peu plus poussé...

III. Ajoutez une Table View▲

Dans cette section, nous allons effectivement mettre quelque chose sur l'écran, ouais !
Ouvrez votre fichier Main.storyboard dans Xcode et glissez dedans un objet « Table View » de la bibliothèque d'objets (ne pas utiliser un TableViewController.) Positionnez ce plein écran dans la fenêtre de votre application et assurez-vous qu'il s'aligne avec les bords. Puis, redimensionnez la hauteur en faisant glisser vers le bas le bord supérieur et en laissant un peu d'espace (ce qui laisse de la place à la barre d'état en haut du téléphone.) Si vous exécutez l'application à ce stade, vous devriez voir une vue de tableau vide dans le simulateur.

Image non disponible

Maintenant, nous devons mettre en place un délégué et une source de données pour l'affichage du tableau. C'est facile à faire dans Interface Builder. Il suffit de maintenir la touche Contrôle enfoncée, puis cliquez et faites glisser depuis votre « tableview » vers l'objet « View Controller » dans la hiérarchie de votre storyboard, et sélectionnez « data source ». Répétez l'opération avec les options « delegate ».

Note : j'ai reçu une tonne de questions à ce sujet, et beaucoup de gens se plaignent des erreurs concernant la vue de la table qui n'est pas configurée. Alors, afin de rendre les choses un peu plus faciles, j'ai fait une petite vidéo montrant comment fonctionne la connexion reliant des objets « Storyboard » à votre code. Jetez-y un œil. Lorsque vous regardez, assurez-vous de passer en mode plein écran et sélectionnez l'option 720p pour vous assurer que vous pouvez voir ce qui se passe. Ce sera légèrement différent de l'interface de Xcode 6, mais du point de vue fonctionnel, tout cela se passe de la même façon.


Cliquez pour lire la vidéo



Bon, maintenant nous allons creuser dans les méthodes de protocole des « Table Views ». Parce que nous utilisons UITableViewDataSource et UITableViewDelegate dans ViewController, nous devons modifier la définition de la classe.

Ouvrez donc ViewController.swift et modifiez cette ligne :

 
Sélectionnez
1.
class ViewController: UIViewController {

comme ceci :

 
Sélectionnez
1.
class ViewController: UIViewController, UITableViewDataSource, UITableViewDelegate {

Commande + clic sur l'un de ces protocoles montrera les fonctions requises au plus haut niveau. Dans le cas d'une « table view », nous avons besoin au moins de ces deux :

 
Sélectionnez
1.
func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int
 
Sélectionnez
1.
func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell!

Modifions donc notre classe View Controller par l'ajout de ces deux fonctions :

 
Sélectionnez
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
func tableView(tableView: UITableView!, numberOfRowsInSection section: Int) -> Int {
   return 10
}
func tableView(tableView: UITableView!, cellForRowAtIndexPath indexPath: NSIndexPath!) -> UITableViewCell! {
   let cell: UITableViewCell = UITableViewCell(style: UITableViewCellStyle.Subtitle, reuseIdentifier: "MyTestCell")

   cell.textLabel.text = "Ligne #\(indexPath.row)"
   cell.detailTextLabel.text = "Subtitle #\(indexPath.row)"

   return cell
}

La première méthode demande le nombre de lignes de notre section. Dans ce tutoriel, nous allons coder en dur 10, mais normalement ce serait la longueur d'un contrôleur de tableau. Cet exemple est volontairement simple.

La seconde méthode est l'endroit où la magie se produit. Ici, nous créons une nouvelle instance d'une UITableViewCell appelée cellule en utilisant le style de cellule « Subtitle ».
Ensuite, nous assignons la valeur du texte de cette cellule à la chaîne "Ligne #\(indexPath.row)".

En Swift, c'est la façon dont les variables sont intégrées dans une chaîne. Ce que nous faisons, c'est de récupérer la valeur de indexPath.row en insérant \(indexPath.row) dans notre chaîne et de la remplacer dynamiquement par le numéro de ligne de la cellule. Cela permet des résultats tels que « Ligne # 1 », « Ligne # 2 », etc.

Le libellé de détail est disponible uniquement dans la classe de la cellule « Subtitle » que nous utilisons ici. Nous l'avons configuré de façon similaire à « Sous-titre #1 », « Sous-titre #2 », et ainsi de suite.

Allez-y, exécutez votre application et vous verrez alors une liste incroyable de cellules avec des titres et des sous-titres indiquant leurs numéros de ligne. C'est l'une des façons les plus courantes d'afficher des données dans iOS, et assurez-vous de bien vous en servir. Pour le code complet de mon fichier « View Controller », jetez un œil à : ViewController.swift.

Dans mon prochain livre, nous passons plus de temps à réviser les principes de base, ainsi qu'à plonger plus profondément dans les détails avancés.

Dans la deuxième partie, nous allons explorer en utilisant l'API de recherche d'iTunes afin de créer une application capable de trouver et d'afficher les albums dans la boutique iTunes.

Aller à la partie 2 maintenant->

IV. Vous avez une question ou un problème ?▲

Rejoignez-nous sur nos nouveaux forums.

Partager est attentionné :)

V. Remerciements Developpez▲

Nous remercions, Jameson Quave, de nous avoir aimablement autorisé à publier son article. Cet article est une traduction autorisée dont le texte original peut être trouvé sur jamesonquave.com. Nous remercions aussi Mishulyna/ pour sa traduction, LeBzul pour sa relecture technique ainsi que Milkoseck pour sa relecture orthographique.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Copyright © 2014 Jameson Quave. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.