Une introduction au nouveau langage de programmation d’Apple: Swift

Cette année à la WWDC, l’accent était tellement mis sur iOS 8 et OS X Yosemite, que ce qui aurait dû être la plus grande nouvelle de l’événement a été plutôt sous-estimé. Apple a présenté le langage de programmation Swift au monde. Ceci, pour l’utilisateur final, n’est guère d’actualité. Cependant, pour la communauté des développeurs, cela pourrait tout aussi bien changer la donne. Certains langages de programmation ont des avantages évidents par rapport à d’autres langages de programmation, certains sont plus rapides, d’autres plus efficaces, certains sont simplement plus propres, d’autres incroyablement simples. Apple est la dernière entreprise à créer son propre langage de programmation après le Go de Google (Golang) et le .Net Framework de Microsoft. Swift Programming Language prétend avoir appris de ces langages, tout en restant fidèle à son prédécesseur Objective C. Apple prétend avoir créé le langage de programmation de haut niveau le plus rapide et le plus robuste. Expliquons-nous.

bannière rapide

Pourquoi avons-nous besoin de langages de programmation?

Il existe plusieurs façons de faire faire des «choses» à un appareil. N’importe quel appareil, des gadgets portables modernes aux ordinateurs traditionnels, peut être conçu pour faire des choses en utilisant soit la méthode à l’ancienne du langage machine, soit l’écriture en code octet brut / langage d’assemblage, en élaborant chaque instruction à la main; ou vous pouvez compter sur des langages de haut niveau qui vous aideront à réduire une partie de l’ennui. C’est pourquoi l’accent est davantage mis sur le rapprochement des langages de développement du langage normal. Nous comprenons que le nom de Swift attire plus de développeurs que de spectateurs, mais nous simplifierons toujours l’explication pour vous aider à comprendre la technologie qui contrôlera les futures générations de produits Apple.

Une introduction rapide: les appareils électroniques sont littéralement les choses les plus stupides connues de l’humanité, sans toute la programmation, ils seraient réduits à de simples ornements. Ce qui leur donne une vraie fonction, c’est la programmation. À un niveau très basique, il faut dire à l’électronique, action par action, ce qu’elle doit faire, c’est ce que nous faisions avec les cartes perforées et plus tard avec le langage machine. Ensuite, nous avons avancé dans le temps pour développer des langages qui nous permettent de communiquer avec les machines de manière relativement plus naturelle (oui, le code est en fait une version plus simple de ce qu’il pourrait être). Nous écrivions du code, il serait compilé dans quelque chose que l’ordinateur comprend, puis exécuté. Donc, pour résumer, code-compilation-exécution.

  Comment réparer «l'exécution des scripts est désactivée sur ce système» dans PowerShell sur Windows 10

Pourquoi Swift?

Maintenant, vous pouvez imaginer la question la plus pertinente étant «Pourquoi?». C, le langage est des années 70, innovant considérablement à l’époque, puis est venu son rejeton, Objective C dans les années 80. Depuis, Apple utilise cette plate-forme pour le développement. La logique dicte, «si ce n’est pas cassé, ne le réparez pas», et si cela fonctionne depuis 30 années consécutives, quel pourrait être le problème? Eh bien, ça. Apple utilise Objective C depuis des décennies maintenant. Il est temps pour quelque chose de plus rapide, plus puissant, plus facile. Entrez Swift.

Selon le ebook officiel sur Swift (disponible gratuitement sur iTunes) «Swift est un nouveau langage de programmation pour les applications iOS et OS X qui s’appuie sur le meilleur de C et d’Objective-C, sans les contraintes de compatibilité C. Swift adopte des modèles de programmation sûrs et ajoute des fonctionnalités modernes pour rendre la programmation plus facile, plus flexible et plus amusante. La table ronde de Swift, soutenue par les frameworks matures et très appréciés de Cocoa et Cocoa Touch, est une opportunité de réinventer le fonctionnement du développement logiciel. »

Couverture de livre Swift

Pourquoi Swift est-il important?

Autant Apple aimerait vous faire croire en leur innovation sans réserve, il y a eu une idée de langage de «script». Les paramètres traditionnels de compilation-exécution de code nécessitent que vous puissiez voir votre code en action uniquement après sa compilation. La compilation vous montre exactement ce dont votre code est capable. Si votre code contient des erreurs, la compilation entraînera un comportement erratique ou des plantages. Ensuite, le travail du codeur sera de localiser l’erreur, de la corriger et de recommencer. Ce processus est à la fois ardu et prend du temps, mais c’est quelque chose avec lequel le monde de la programmation a toujours vécu; c’est ainsi que les choses ont toujours été. Les langages de script s’exécutent ligne par ligne pour que vous puissiez voir les résultats au fur et à mesure que vous écrivez, éliminant ainsi le besoin de revoir votre code pour les erreurs ultérieurement. Rendre le processus plus rapide et beaucoup plus facile.

  Comment changer le voyant d'une souris Logitech série G sous Linux

À ce jour, les langages de script ont été limités dans leurs capacités. Prenez Python par exemple, il est extrêmement rapide, mais il est également limité à des choses plus simples avec des capacités limitées. Comme une voiture Forumla1, idéale pour la course, pas tellement pour faire l’épicerie.

Si vous voulez créer un jeu, Python n’est pas votre environnement de prédilection. Cependant, Objective-C est (ou C ++ si vous êtes sous Windows). Maintenant, Swift promet le meilleur des deux (en fait, de nombreux) mondes, en s’inspirant d’Objective-C, Rust, Haskell, Ruby, Python, C #, CLU et bien trop d’autres pour les énumérer (référence: développeur / expert Swift Chris Lattner). Swift prétend garder les bonnes choses et perdre les mauvaises choses de ce qui précède. Dans les benchmarks clés, son exécution est plus rapide que Python et beaucoup plus rapide que Objective-C, donc c’est un bon début.

Qu’est-ce qu’il fait d’autre?

Swift apporte également un environnement visuel en temps réel appelé «terrain de jeu» où vous pouvez voir votre résultat compilé en temps réel, un peu comme un langage de script. Ceci, basé sur la conception de l’application, peut ramener des processus entiers à quelques minutes, car si quelque chose ne va pas, vous saurez immédiatement ce qui l’a causé et pourrez y remédier directement. C’est l’équivalent de la programmation de corriger une erreur sur une impression plutôt que de corriger un mot souligné en rouge au fur et à mesure. Vous permettant de créer des applications complexes plus rapidement.

Cela va un peu plus loin. Pour les langages de haut niveau, vous deviez déclarer et accéder aux classes et bibliothèques pour engager des fonctions, aussi basiques soient-elles. en C ++ Vous auriez besoin de et pour utiliser les types d’entrée, de sortie et de données de base dans votre code. Dans Swift, cependant, rien de tout cela n’est nécessaire. Vous n’avez pas besoin de déclarer de bibliothèques, car Swift gérera ce dont chaque type de données et chaque fonction io (entrée / sortie) a besoin et engagera cette bibliothèque elle-même. Ainsi, imprimer quelque chose d’aussi simple que « Hello world », va de

#include<stdio.h>
int main(void)
{
  printf("Hello Worldn");
  return0;
}

à un simple:

println("Hello, world")

C’est l’intégralité du code qui doit être compilé. Vous remarquerez également que le code n’utilise pas le redouté «;» comme signe universel d’une déclaration de fin.

  Comment marquer un document comme final dans MS Word

Quels sont les inconvénients?

Or, l’existence de Swift ne signifie pas la mort instantanée d’Objective-C et de toutes ses voies. Les applications peuvent toujours être créées en utilisant Objective-C et les utilisateurs natifs d’Objective C ne se sentiront pas complètement aliénés car il existe des similitudes dans ces environnements. Bien sûr, étant donné qu’Apple vient de passer 4 ans à travailler sur un nouveau langage de programmation, ils se concentreront sur la promotion et le support de Swift, maintenant et dans le futur. Peut-être qu’un jour ils effaceront Objective-C des annales des langages de programmation d’Apple, mais ce jour n’est pas le cas aujourd’hui. Mais si une nouvelle langue est sortie, une langue qui est si facile à apprendre et qui est beaucoup plus rapide, alors pourquoi quelqu’un s’en tiendrait-il avec Objective-C?

Il y a bien sûr quelques inquiétudes, l’immédiat étant le bouleversement de l’industrie. Des carrières entières ont été forgées autour d’enseigner aux gens comment créer des applications iPhone, ces carrières et leurs étudiants sont immédiatement devenus obsolètes, il y aura beaucoup de restructuration sur ce front. Nous aurons également une nouvelle génération d’adaptateurs précoces pour Swift (Flappy Birds déjà créés avec Swift), ce qui est une bonne chose comme une mauvaise. C’est bien que du sang neuf soit injecté dans l’organisme, le mal étant que ce nouveau sang sera inexpérimenté et inondera le marché d’applications mal conçues.

Nous discuterons bientôt du cadre métallique d’Apple, de ses avantages et de ses inconvénients, en particulier dans les jeux iOS.

Conclusion

Si vous vous demandez pourquoi aucun nouveau matériel n’a été annoncé lors de la conférence de la WWDC, nous vous renvoyons à notre déclaration précédente selon laquelle le matériel seul ne peut rien faire tant que le logiciel qui le sous-tend ne fonctionne pas. C’était donc littéralement la plus grande nouvelle de tous les temps. Que nous obtenons une nouvelle poignée sur le logiciel qui changera le visage de tout le matériel, à l’avenir. Pour obtenir Swift, vous aurez besoin de Xcode 6 beta et d’un ID de développeur.

Obtenez Swift ici