Faut-il utiliser Swift ou Objective-C pour apprendre le développement iOS ?


Mise à jour le 21 septembre 16

Woah ! Tant de choses se sont passées au cours des dernières années depuis que j'ai écrit ma réponse originale. Je voulais venir ici et donner une mise à jour.


Actuellement, ma réponse a tourné à 180 degrés et je crois fermement que les nouvelles applications devraient utiliser Swift. Il y a quelques exceptions à cette règle (comme toutes les règles), mais je veux d'abord expliquer mes raisons de favoriser Swift.

  • Premièrement, le compilateur Swift est suffisamment stable et complet en termes de fonctionnalités pour être utilisé au quotidien sans beaucoup de problèmes. Bien sûr, il y a encore des problèmes, mais ils sont beaucoup moins nombreux et plus espacés qu'avant.
  • Deuxièmement, Swift est tout simplement un langage génial ! Le système de types est porteur, et pourtant vous ne'sentez le poids de celui-ci nulle part. Non seulement cela, mais les erreurs du compilateur sont de mieux en mieux tout le temps. Bien que fastidieuses parfois, ces erreurs en moyenne conduisent en fait à un débogage plus rapide et à un développement plus rapide.
  • Enfin, Swift est là où le marché va. De plus en plus, je vois nos anciens élèves obtenir des entretiens en Swift plutôt qu'en Objective-C. Non seulement cela, la communauté a complètement adopté l'utilisation de Swift, et toutes les nouvelles fonctionnalités construites par la communauté arrivent d'abord en Swift.

J'ai quelques exceptions à ma règle d'utilisation de Swift. Il y a encore quelques situations où l'Objective-C brille:

  • Si vous avez besoin d'interagir avec une vieille bibliothèque C/C++, l'Objective-C est tout simplement bien meilleur.
  • Si vous faites une **ton** de travail vidéo ou audio. Cela peut 100% être fait avec Swift, mais je trouve juste que ces bibliothèques iOS sont un peu vieilles et croustillantes et se prêtent vraiment mieux à l'Objective-C.

À l'école Flatiron, nous sommes arrivés à cette conclusion il y a quelques mois et nous avons travaillé jour et nuit pour à la fois traduire l'ensemble de notre programme de développeurs iOS à Swift et lancer un cours Swift gratuit en ligne. Consultez-le : Swift : Building iOS Apps. Swift est un langage vraiment étonnant ; vous devriez l'essayer.

Réponse originale de 2014 :

En bref, non. Chaque base de code actuelle va être objective-c. Chaque bibliothèque tierce actuelle est objective-c. Vous n'avez pas besoin de connaître obj-c pour apprendre swift mais cela'aidera beaucoup. La connaissance d'Objective-C sera cruciale pour au moins les six prochains mois à un an. Vous trouverez toujours des moyens de retarder l'apprentissage de quelque chose. Retirez Swift de l'équation.

Heureusement, apprendre objective-c va vous aider énormément avec Swift. Une grande partie de la programmation iOS consiste simplement à apprendre les frameworks. Même si la syntaxe change d'Obj-C à Swift, les propriétés, les méthodes et tout le reste concernant ces frameworks sont cohérents. Enfin, la plupart des supports d'apprentissage de Swift supposent que vous connaissez déjà Objective-C et il existe volontairement de nombreux parallèles entre Objective-C et Swift. Apprenez Objective-C, puis quand vous en aurez besoin, apprenez Swift. Ce'sera sacrément facile d'apprendre ce deuxième langage.

Apprenez Objective-C maintenant. Si vous voulez un peu d'aide avec objective-c, j'ai mis ensemble quelques ressources à Flatiron School Pré-travail pour ma classe à The Flatiron School. En espérant qu'elles'vous aideront.