iPhoneSoft : forum iPhone et iPad

Forum iPhone, iPod et iPad des applications App Store et Cydia par iPhoneSoft.

Vous n'êtes pas identifié(e).

Annonce

ibons-plans ipa ipad iphone Si vous ne l'avez pas encore, iBons Plans (App, iPhone et iPad, v2.4.1, 4/5 - 259 votes, VF, 6.6 Mo, iOS 8) est une appli dédiée aux bons plans qui présente les bonnes affaires de l'App Store avec une interface sympa et facile.


Télécharger gratuitement iBons Plans





#1 23-07-2014 17:18:57

Medhi
Admin
Lieu : Arcueil
Inscription : 13-08-2010
Messages : 391
Site Web

Débuter sur Swit ou passer d'Objective-C à Swift d'Apple

Voici quelques liens utiles et conseils pour passer au développement Swift facilement.

Bien que Swift sorte pour iOS 8, Apple l’a rendu compatible iOS 7. Maintenant que vous savez cela, vous pouvez commencer à coder en Swift pour votre app, le tuto :
http://www.raywenderlich.com/74438/swif … uick-start

Le livre pour programmer :
https://itunes.apple.com/us/book/swift- … 6329?mt=11

Les vidéos WWDC :
https://developer.apple.com/videos/wwdc/2014/

Le site officiel :
https://developer.apple.com/swift/


Les remarques sur la syntaxe de Swift :
  • Toute la classe est dans un seul fichier

  • Pas besoin de mettre des « ; »

  • Pas besoin de nommer les classes avec préfixes car chaque projet à son namespace

  • Pas besoin d’hériter de NSObject pour faire une classe basique

  • Pas besoin de déclarer un type de variable si on donne une valeur (ex var cpt = 0 équivaut à var cpt:Int = 0)

  • Pas besoin de mettre des parenthèses sur les tests ou boucle (ex : for value in values { … } OU if testVar { } )

  • On peut établir des ranges facilement avec l’opérateur « … » qui permet d’aller d’une valeur à une autre incluse (ex : for index in 1...5 {} )

  • Pour tester la valeur d’une variable, il suffit d’un seul opérateur = et non plus ==

  • Pour tester le type d’une objet, il suffit d’appeler l’opérateur « is » (ex : if newShape is Square)

  • Déclarer une varialbe et son type nécessite « : » entre les deux : (ex : func doIt(a:Int) { } )

  • Déclarer que la méthode va retourner une valeur nécessite « -> » après la déclaration des paramètres : (ex : func doIt(a:Int, b:Int) -> Int { } )

  • Préciser qu’on surcharge une méthode avec le mot clé override est obligatoire ( ex : override func viewDidLoad () { })

  • Les mots clés « let » et « var » permettent de dire si une variable est une constante ou pas (let = constante)

  • Déclarer un IBOUTLET en weak se fait comme ceci : @IBOutlet var taxLabel : UILabel

  • Déclarer un IBOUTLET en strong se fait comme ceci : @IBOutlet var taxLabel : UILabel = nil

  • Pour déclarer un objet de type inconnu il faut utiliser le mot clé AnyObject (équivalent à id en Objective-C)

  • Pour déclarer un tableau ou dictionnaire, il y a deux syntaxes (ex: var emptyDico = Dictionnary<String, String> OU var dict = [

  • Pour supprimer une valeur d’un dictionnaire, on peut mettre à nil la clé (ex : dict[

  • Pour caster une variable type Float vers String, il faut toujours appeler la méthode format de String (anciennement stringWithFormat de NSString) (ex : String(format:

  • Pour concaténer la valeur d’une variable ou le retour d’une fonction dans une chaine de caractères, il faut utiliser « \(marVar) » (ex : « Mon

  • pourcentage (arrondi) : \(Int(taxPctSlider.value)) » )

  • String n’a pas toutes les fonctions que possède NSString. Si vous avez besoin d’une méthode de NSString non disponible sur la classe String de Swift, il faut appeler la méthode bridgeToObjectiveC() (ex : maString. bridgeToObjectiveC.uneMethodeNSString)

  • Le « ! » après la déclaration d’une variable permet de dire qu’elle est optionnelle et qu’elle va être utilisée après l’initialisation du controller (idéal pour les IBOUTLET qui sont créé après le init du viewcontroller -> viewdidload) -> En gros, la var peut être nil

  • Le « ? » permet de tester si une variable existe ou non. On peut enchainer les tests sur une ligne ce qui évite 3 tests if dans notre exemple (ex : if let someToy = jim.pet?.favoriteToy?.name)


Hors ligne

Pied de page des forums