Chapitre 2 : A une seule condition et on répète !

 

Introduction

On sait maintenant assigner et modifier les valeurs des variables et assigner des constantes. Nous allons maintenant voir comment comparer leurs valeurs et executer des actions en fonction de cette comparaison. Ces nouvelles fonctions vont nous permettre de créer des programmes plus complexes et plus intéressants.

Comparons

Conditions Simples

Dans un programme, il est très important de pouvoir comparer des variables entre elles. On peut, par exemple, les utiliser pour savoir si une personne est majeure en comparant son âge à l’âge de la majorité ou savoir si le prix d’un objet est supérieur au montant sur notre compte en banque. On peut effectuer différents types de comparaison :

  • a > b : Savoir si a est supérieur à b
  • a >= b : Savoir si a est supérieur ou égal à b
  • a < b : Savoir si a est inférieur à b
  • a <=b : Savoir si a est inférieur ou égal à b
  • a != b : Savoir si a est différent de b
  • a == b : Savoir si a est égal à b

On compare alors les valeurs de ces variables et cela nous renvoie un résultat booléen, à savoir true ou false.

Par exemple :

On peut effectuer toutes ces opérations sur des nombres (Int, Float). On peut aussi comparer deux chaines de caractère pour savoir si elles sont identiques.

Conditions mutliples

Il est possible de combiner plusieurs opérations booléennes entres elles avec par exemple et ou ou.
Dans le cas de la condition et, il faut que toutes les conditions soient vraies afin que la condition générale soit vraie. Par exemple : a est supérieur à b et a est supérieur à c cette condition n’est vraie que si a est supérieur à b et qu’en même temps a est supérieur à c.

Dans le cas du ou, il suffit que l’une des conditions soit vraie et la condition générale est alors vraie. Par exemple : a est supérieur à b ou a est supérieur à c cette condition est vraie si a est supérieur à b ou si a est supérieur à c.

En swift, afin de combiner plusieurs conditions ensemble on utilise && pour et, ainsi que || pour ou.

Exemple :

Action !

Maintenant que l’on sait comparer deux variables entres elles, il est temps d’effectuer des opérations en fonctions de ces comparaisons. Pour ce faire, on va utiliser les structures conditionnelles.

Le if simple

Le if permet d’effectuer une action en fonction du résultat d’une condition. Si la condition est validée, alors l’action est executée. Exemple :

Il est aussi possible de tester une variable booléenne directement. Exemple :

Le if else

On peut aussi effectuer une action si la condition vérifiée est fausse, par exemple :

Le else if

Il est aussi possible de tester plusieurs conditions les unes à la suite des autres. Si la première condition est fausse, alors on teste la suivante et ainsi de suite. Si au contraire une condition est vraie alors les suivantes ne sont pas vérifiées, par exemple :

Les if multiples

On peut aussi effectuer plusieurs if en cascade. Toutes les conditions seront testées les unes après les autres même si celles du dessus sont valides. Si l’on reprends l’exemple précédent on obtient

Dans cet exemple ce n’est pas très utile mais il peut y avoir des cas où ça l’est. Par exemple :

On répète

On a parfois besoin de répêter plusieurs fois la même opération, si une condition est vraie. Par exemple, incrémenter un nombre 100 fois. On utilise pour ce faire les boucles.

La boucle While

La boucle while permet de répeter une action avec n’importe quelle condition. On peut, par exemple, utiliser cette boucle tant qu’un nombre est inférieur à un autre nombre ou tant qu’une variable n’est pas true. Exemple :

On peut aussi directement tester une valeur booléenne :

Vers l’infini et au delààààààà !!

Il existe un problème avec la boucle while, il peut arriver de faire une boucle infinie. Dans le cas au dessus par exemple, si l’on oublie d’incrémenter la variable b, elle ne sera jamais supérieure à a et la boucle ne s’arretera jamais. On tombe alors dans une boucle infini, il est donc très important de vérifier que l’on a pas oublié l’incrémentation ou vérifier que l’on modifie bien.

La boucle For

La boucle For permet justement d’éviter d’effectuer cette incrémentation à la main. Pour ce faire on définit une variable qui sera incrémentée automatiquement par la boucle.

Syntaxe Générale :

Exemple :

Avec cette boucle, le problème de la boucle infinie ne se pose pas car l’on saura toujours quand on s’arrête. En effet, la valeur est auto-incrémentée par la boucle et la valeur d’arrivée est définie.

Les ranges

Les ranges définissent une série de nombre entre une valeur de départ et une valeur d’arrivée. Elles sont très utiles pour les boucles For. Elles s’écrivent des manières suivantes :

depart...arrivee dans ce cas, les valeurs de départ et d’arrivées sont incluses. C’est-à-dire que si la valeur d’arrivée est 10, la boucle s’arrêtera à la valeur 10.

depart..<arrivee dans ce cas, la valeur de départ est incluse et la valeur d’arrivée est exclue. Si la valeur d’arrivée est 10 la boucle s’arrêtera à la valeur 9.

Les boucles imbriquées

Il est aussi possible d’imbriquer les boucles ensemble, c’est-à-dire d’effectuer une boucle dans une boucle.

Challenges

Challenge 1 :

Votre premier challenge est de comparer votre âge avec celui d’un de vos proches. Si l’âge de votre proche est supérieur au votre, le programme affichera Vous êtes plus jeune, sinon si il est inférieur, le programme affiche Vous êtes plus vieux, sinon le programme affiche Vous avez le même age.

Challenge 2 :

Votre second challenge est de créer un programme qui affiche la table de multiplication de 2. Il vous faut utiliser une boucle For. Exemple d’affichage :

Challenge 3 :

Votre troisième challenge est de créer un programme qui affiche toutes les tables de multiplication de 1 à 10. Il vous faut utiliser deux boucles imbriquées. Exemple d’affichage :

 

 

Chapitre 1 : Les Variables

 

Stocker l’information

Dans tout programme informatique il faut stocker des données afin d’en effectuer le traitement ou pour les réutiliser plus tard. Pour ce faire, on utilise les variables et les constantes. La différence est que la valeur d’une variable peut être modifiée au fil de l’execution du programme alors que la valeur d’une constante est définie à sa création et ne peut plus évoluer.

Ces variables et constantes peuvent être utilisées pour stocker tout types d’informations à savoir, un âge, une adresse, un prix, etc….

Les types

Swift est un language typé, ce qui veut dire que les variables et les constantes ont un type et qu’elles ne peuvent en changer. Par exemple, si je stocke un entier dans une variable je ne pourrais pas y stocker une chaine de caractère plus tard. Les types de base sont :

  • Les entiers : Int
  • Les réels : Double
  • Les chaines de caractère : String
  • Les booléens (vrai ou faux) : Bool

Swift dispose d’une fonctionnalité assez intéressante car l’on est pas obligé de donner explicitement un type à sa variable. Swift devinera intelligement le type auquel appartient votre variable.

Les commentaires

Avant de se plonger tête baissée dans le Swift, il est important d’apprendre à commenter son code. C’est en effet très important car cela vous permettra quand vous reviendrez quelques semaines, mois ou années de retrouver plus rapidement le fonctionnement de votre code. C’est aussi très important lors du travail en équipe car il permet aux différents programmeurs de se comprendre plus facilement.

On peut utiliser un commentaire sur une seule ligne avec //. Exemple :

Ou créer un commentaire sur plusieurs lignes en ouvrant avec /*et en fermant avec */. Exemple :

Vous verrez tout au long de ce tutoriel mon code commenté afin que vous comprenniez mieux ce qu’il s’y passe et je vous encourage fortement à faire de même 😉

Nommer ses variables

Swift accepete de nommer les variables avec les caractères Unicodes tels que les accents ou les Emojis. Il acceptera donc des noms de variables tels que état ou . Cependant peu de langage l’acceptent et il n’est donc pas recommandé (voire proscrit) d’utiliser des noms de variables en contenant. Les espaces ne sont pas non plus acceptés. Pour résoudre ce problème il existe deux méthodes, le CamelCase et le SnakeCase.

La première méthode consiste à écrire la première lettre du premier mot en minuscule puis les premières lettres des mots suivants en majuscule. Par exemple : monAge ou uneVariableAvecUnNomAleatoire. C’est personnellement celle que j’utilise et ceux qui m’entourent aussi.

La seconde remplace les espaces par des underscores _ comme par exemple : mon_age ou une_variable_avec_un_nom_aleatoire.

Ces deux méthodes sont valides et vous pouvez utilisez celle qui vous convient le mieux ou qui est utilisée par les personnes autour de vous.

Pour créer une constante on utilise le mot clé let, par exemple :

On utilise encore ici la méthode implicite sur la première ligne et la méthode explicite sur la deuxième ligne.

Execution et affichage des variables

Pour les personnes n’utilisant pas Xcode vous pouvez afficher la valeur de la variable en appelant la commande print(). Il vous reste ensuite à executer le programme.

Pour celles utilisant les playground, la valeur s’affiche automatiquement dans la colonne de droite sans avoir à utiliser print.

Modifier leurs valeurs

Il est possible de modifier la valeur des variables, par exemple pour modifier le prix d’un article ou l’âge d’une personne. Pour se faire, on tape le nom de la variable ainsi que la nouvelle valeur désirée.

Cependant modifier le type d’une variable est impossible, ainsi si je veux modifier la valeur de i pour qu’elle contienne « Hello World » c’est impossible. Et cela résulte en une erreur car on ne peut pas assigner une valeur de type String à une variable de type Int.

On obtient l’erreur suivante :

On ne peut pas non plus modifier la valeur d’une constante car sont but est justement de rester constante.

On obtient ici l’erreur suivante :

Vous remarquerez cependant que cette fois-ci le compilateur nous propose de modifier k et d’en faire une variable pour corriger l’erreur. Ce n’est pas ce que nous voulons alors nous supprimerons simplement cette ligne.

Quelques calculs

Il est aussi possible de réaliser des calculs avec les variables. On peut utiliser les opérateurs habituels tels que :

  • L’addition +
  • La soustraction –
  • La multiplication *
  • La division /
  • Le modulo % (Il s’agit du reste d’une division)

Dans notre cas on peut créer une variable addition qui contiendra le résultat de l’addition de nos variables i et j, et faire de même pour le résultat des autres calculs.

On peut effectuer des opérations avec les autres types :

On peut aussi additionner deux string ensemble :

Les calculs ne peuvent s’opérer qu’entre variable du même type. Par exemple, on ne peut pas additionner un entier et une chaine de caractère.

L’incrémentation

On peut incrément une variable avec le symbole +=. On ajoute alors la valeur à droite du symbole à la variable à gauche. Il s’agit surtout d’un raccourci pour eviter de taper trop de code. Exemple :

Challenges

Le chapitre est fini et il est maintenant temps de passer à des petits exercices pour pratiquer ce que l’on vient de voir.

Challenge 1 :

Ce challenge va vous permettre de travailler l’assignation de variables ainsi que la soustraction en calculant la différence d’age entre vous et un de vos proches.

  • Créer une variable monAge et mettre votre age.
  • Créer une variable sonAge et y mettre l’age d’un proche.
  • Créer une variable differenceet y mettre la différence d’age entre vous et votre proche.

Challenge 2 :

Ce challenge à pour but de vous apprendre à calculer le pourcentage d’un prix. Par exemple une remise de 80% sur un prix.

  • Créer une variable prix1 et y mettre un prix (Ex: 100.0)
  • Créer une variable pourcentage et y mettre un pourcentage (Ex: 80.0)
  • Créer une variable prixReduit et y mettre le prix obtenu après la réduction. Aide

Challenge 3 :

Ce challenge à pour but de vous permuter la valeur de deux variables.

  • Créer une variable a de valeur 3
  • Créer une variable b de valeur 7
  • Mettre la valeur de a dans b en celle de b dans a
    • Indice : Il faut utiliser une troisième variable

 

 

Prise en main des outils

Version Web

La version web dispose de fonctionnalités limitées mais est entièrement suffisante pour ce tutoriel. Il y est possible de :

  • Ecrire du code Swift
  • Sauvegarder et Charger des fichiers
  • Executer du code swift

On tape alors le code dans l’éditeur de code on compile avec la flèche et on regarde les résultats du programme dans la partie de droite et c’est aussi simple que ça 😉

Pour afficher le résultat du programme il faut utiliser la commande :

Xcode

Sur Xcode nous allons utiliser une fonctionnalité appellée Playgrounds. Cette fonctionnalité permet d’écrire du code et d’en voir le résultat sans avoir à compiler le code. Après avoir lancé Xcode et être arrivé sur l’écran d’acceuil cliquez simplement sur Create a new Playground.

Nommez alors votre playground en selectionnant la plateforme iOS puis cliquez sur Next. Choisissez ensuite l’emplacement ou vous voulez enregistrer le playground et cliquez sur Create.

Vous arriverez alors devant l’interface d’un playground. Vous pouvez alors taper du code dans la partie de gauche et regarder les résultats dans la partie de droite. Avec le playground vous n’aurez pas besoin d’utiliser la commande print() car il affiche automatiquement le résultat.

Visual Studio Code

Une fois Swift et Visual Studio Code installés, il vous suffit de lancer Visual Studio Code.

Vous pouvez alors créer des fichier et écrire du code dans l’éditeur de code. Il vous faudra aussi afficher le terminal. Pour ce faire dans la barre de menu cliquez sur View > Integrated Terminal. Vous pourrez alors lancer votre programme en exectant la commande :

Pour afficher le résultat du programme il faut utiliser la commande :

Installation de Swift

Version en ligne :

Vous n’avez rien à faire et pouvez passer au chapitre suivant 😉

Sur macOS :

Une fois Xcode téléchargé il vous suffit de le lancer. Finalisez l’installation en suivant les instructions et vous arriverez à l’écran d’accueil d’Xcode. Ainsi, vous pourrez passer au chapitre suivant.

Sur Ubuntu :

Depuis que Swift est devenu Open-Source en Novembre 2015, il est possible de l’installer sur Ubuntu. Le processus d’installation est moins facile que sur macOS mais il n’est pas insurmontable. Ce guide va vous expliquer comment procéder. L’installation s’effectue via le terminal.

La première étape est d’installer les dépendances nécessaires au bon fonctionnement de Swift :

On récupère ensuite le package Swift depuis le site ansi que la signature pour vérifier l’intégrité du paquet :

On extrait ensuite le package Swift :

On se rend ensuite dans le dossier /usr/bin du package Swift nouvellement créé :

On execute ensuite la commande pwd pour obtenir l’emplacement d’installation de Swift :

On note le résultat de la commande pwd et on ouvre le fichier de notre profil de terminal :

On ajoute à la fin du fichier la ligne suivante :

On ferme avec le raccourci ctrl+X, puis ‘y’, puis entrée et on relance un terminal.
On vérifie ensuite la bonne installation de Swift :

Si la version de Swift s’affiche bien, votre installation de Swift est réussi et vous pouvez commencer le tutoriel.

Les outils pour Swift

Version en ligne :

IBM propose aujourd’hui une sandbox Swift disponible à cette adresse : Sandbox Swift. Cette version est tout à fait fonctionnelle et vous permettra de suivre ce cours peut importe la platefrome dont vous disposez. Elle est quasi-obligatoire pour les utilisateurs de Windows et recommandée pour les utilisateurs linux ne disposants pas d’Ubuntu ou ayant une connaissance limitée de la ligne de commande.

Je vous conseille alors de vous créer un compte en utilisant Github afin de pouvoir sauvegarder votre code et le retrouver plus facilement. Un compte Github vous servira aussi pour partager votre code source auprès de la communautée si l’envie vous en prends.

Pour ce disposants d’un Mac ou d’un ordinateur sous Ubuntu 14.04 ou 15.10 et sachant utiliser la ligne de commande je vous conseille d’utiliser les outils disponibles pour vos systèmes d’exploitation disponibles ci-dessous.

macOS :

Sur macOS nous allons utiliser le logiciel fourni par Apple à savoir Xcode, il est disponible sur le gratuitement sur le Mac App Store et ce l’IDE utilisé pour programmer des appliations sur toutes les plateformes d’Apple. Lors de ce cours nous allons surtout utiliser les playgrounds qui permettent d’executer du code Swift sans avoir à compiler le code source.

Pour installer Xcode rendez-vous sur le Mac App Store et recherchez Xcode et cliquez sur Installer. Vous êtes désormais prêts a lancer l’installation de Swift.

Ubuntu :

Sur Ubuntu nous utiliserons Visual Studio Code qui est l’IDE de Microsoft et qui dispose d’un plugin pour le Swift. Il est disponible à cette adresse : Télécharger Visual Studio Code. Télécharger la version Ubuntu est installez là. Ajoutez ensuite le plugin Swift. Vous êtes désormais prêts a lancer l’installation de Swift.

Apprendre Swift 3

Vous souhaitez apprendre le Swift mais vous ne savez pas par où commencer et bien vous êtes tombés au bon endroit et ce même si vous n’avez jamais programmé ;). Ce guide vous apprendra à programmer en Swift depuis les bases jusqu’aux concepts les plus avancés. Nous étudierons la version 3 de Swift qui est sortie le 13 Septembre 2016 et qui est la dernière version disponible.

Introduction :

Swift est un langaage de programmation présenté par Apple lors de la WWDC (World-Wide Developer Conference) de 2014. Il a été présenté pour coexister avec l’Objective-C afin de créer des applications iOS, macOS, tvOS et watchOS. Un an plus tard, lors de la WWDC 2015, Apple annonce que le langage Swift deviendra Open-Source et le 3 Novembre 2015 Swift passe sous la licence Apache 2.0.

A qui s’adresse ces tutoriels

Ces tutoriels se destinent avant tout aux débutants ayant peu voir aucune expérience dans le developpement informatique.

Ce que l’on va y faire

Du code ! Nous allons voir au cours de ces tutoriels comment créer des programmes informatiques en Swift. Nous verrons la déclaration et la modification des valeurs des variables, les structures conditionnelles, les boucles, etc…. Enfin bref tout ce qu’il faut pour réaliser des apps en Swift.

Que faire ensuite ?

Une fois ce tutoriel terminé vous pourrez vous tourner vers mes tutoriels de programmations sur iOS qui devraient sortir dans le courant 2017. Vous pouvez aussi approfondir ces connaissances en réalisant des petits projets.