Ruby    
 
  PHP    
 
  Java    
 
  JavaScript   
 
  smartphones    
 
  Python    
 
  C/C++    
 
  home  
 
  ask us  
 


Xcode






Applications




© The scientific sentence. 2010


Xcode





1. Le langage Swift

Swift est un langage de programmation développé par Apple Inc. pour iOS, iPadOS, macOS, watchOS, tvOS, Linux OS. Il est conçu pour fonctionner avec les API (interface de programmation d’application) Apple Cocoa et Cocoa Touch et avec le code Objective-C existant écrit pour les produits Apple.

En 2010, Chris Lattner , un informaticien aéricain, a commencé le développement du langage Swift et prend ses sources dans de nombreux langages de programmation tels qu'Objective-C, Ruby, Python, Caml ou C#. La première version publique 1.0 a été publiée le 2 juin 2014.

En juin 2015, Apple annonce le passage en open-source du langage Swift. IL sera effectif en décembre de la même année. La version 5.0 est disponible depuis le 25 mars 2019.


2. Syntaxe du langage

Les variables et les constantes permettent de stocker des informations.

2.1. Les Variables

Swift supporte les types Int , Double , Float , Char , String et Bool .

Il n'est pas nécessaire de préciser le type d'une variable lors de sa création. On le faire explicitement.

var GrandChose = 20
var PetitChose = 20.0
var AutrChose: Float = 20
// On précise ici explicitement le type de la variable

Il est possible de nommer une variable en utilisant aussi des caractères unicodes, par exemple : let π = 3.14159
let & = "ampersand"
let fréquent = "souvent"

2.2. Les Constantes

Les constantes sont utilisés pour toute les valeurs qui resteront inchangées lors du programme.

let pi = 3.14159
let CinqPi = 5 * pi



3. Les Conditions

Il existe plusieurs types de conditions en Swift, notamment if, switch et if let.

3.1. Condition if

if time == 12
{
print("That is fine")
}
else
{
print("Your are late")
}

Il est également possible d'utiliser else if :
if time <= 10
{
print("retard")
}
else if age >= 12
{
print("En avance")
}
else
{
print("Correct ")
}

3.2. Condition switch

switch jourSmaine
{
case 1:
print("D")
case 2:
print("L")
case 3:
print("MA")
case 4:
print("ME")
case 5:
print("J")
case 6:
print("V")
case 7:
print("S")
default:
print("Nom indisponible pour votre figure")
}

Si toutes les valeurs possibles de la variable de case ne peuvent etre citées, on ajoute defaut comme fin de variable.

3.3. Autre situations

switch caractere
{
case "a","b","b","o","w","y":
print("lettre")
case "1", "2", "3", "4":
print("nombre")
default:
print("caractère inéxistant ..")
}

3.4. Condition if else

La condition if let est un type de condition permettant d'accéder à la valeur d'une variable, si celle-ci en contient une, dans un bloc de code :

....
catarina
....
// est un bloc de code ...


if let y = catarina
{
print(y + 10)
}
else
{
print("y n'a pas de valeur")
}



4. Les Boucles

Il existe plusieurs types de boucle en Swift, notamment while, repeat while et for in. Tout comme les conditions, les conditions de boucle ne nécessitent pas d'être entourées par des parenthèses.

4.1. Boucles while

Les boucles while répètent leurs instructions tant que leur condition est vraie.
// Exemple d'une boucle affichant les nombres de 5 à 12

var i = 5
while i < 12
{
print(i)
i += 1
}

4.2. Boucles for in

Les boucles for in sont sans doute les plus fréquentes en Swift.

Exemple:

let noms = ["a", "b", "c"]
for nom in noms
{
print("Hi, \(nom) !")
}

Elle peut etre ecrite aussi èa l'aide de while:

let noms = ["a", "b", "c"]
var i = 0
while i < noms.count
{
print("Hi, \(nom) !")
i += 1
}

Swift permet de réaliser une itération sur un intervalle scalaire grâce à l'opérateur d'intervalle fermé « ... » :

for i in 1...8
{
print("i = \(i)")
}

4.3. Boucles repeat while

La boucle repeat while permet de répéter au moins une fois les instructions de la boucle, c'est seulement après la première exécution des instructions que la condition est vérifiée afin de répéter ou non la boucle.

Exemple:

// Soit la fonction NombreRandom() qui retourne un entier aléatoire en 1 et 10

var valeur1: Int
var valeur2: Int
repeat
{
valeur1 = NombreRandom()
valeur2 = NombreRandom()
print("\(valeur1) et \(valeur2)") /
} while !(valeur1 == 7 && valeur2 == 7) // Tant qu'on a pas un double sept



5. Les Optionnels

Un optionnel est un type générique permettant de représenter, pour tout type donné, une valeur ou bien l'absence de valeur.

Afin de déclarer un type optionnel, on fait suivre son nom d'un point d'interrogation, par exemple Int? ou encore Double?.

Exemple:

Conversion d'une chaine de caractère String vers un entier :
let x = Int(abcd)
Dans de tels cas il n'est pas possible de convertir la chaine de caractères abcd vers un entier, et x n'aura donc pas de valeur, c'est-à-dire qu'il sera nil.
Dans le cas où la chaine de caractères contiendrait une valeur convertible, par exemple 27 , la conversion sera possible et x aurait bien contenu une valeur, 27.



6. L'opérateur ??

L'opérateur ?? permet un grand gain d'espace et de lisibilité dans certains cas, ainsi, le code suivant :

if let nom = catazina
{
print(nom)
}
else
{
print("nom inconnu.")
}
Est remplaçable par une seule ligne:
print(nom ?? "nom inconnu.")



7. Les Classes

La déclaration d'une classe crée un nouveau type auquel sont associées des variables nommées propriétés, et des fonctions nommées méthodes.

Voici un exemple de création de classe en Swift, celle-ci stocke des informations basiques sur un instrumemnt de musique à cordes (nom et nombre de cordes) et peut retourner une chaine de caractères décrivant cet instrument avec la fonction instrument_description:

class Instrument_Cordes
{
// Exemple de propriétés
var cordes: Int
var nom: String

// Fonction d'initialisation
init(nombre_cordes: Int, nom_instrument String)
{
self.nom = nom_instrument
self.cordes = nombre_cordes
}

// Exemple de méthode
func instrument_description() -> String
{
return "L'instrument\(nom) possède \(cordes) cordes."
}
}






  


Google
  Web ScientificSentence

 

SVT
|
chimie labs
|
Physics and Measurements
|
Probability & Statistics
|
Combinatorics - Probability
|
Chimie
|
Optics


© Scientificsentence 2013. All rights reserved.