Après WWDC 2014

WWDC est comme Noël pour les développeurs de Cocoa, et ceci est certainement vrai pour l'édition de cette année en raison de la rareté des fuites et des rumeurs qui ont conduit à la conférence. Même si nous sommes tous curieux d’entendre ce que Apple réserve à tous ceux qui aiment Apple, le discours est bien plus amusant quand on ne sait pas ce qui va être annoncé, comme cette année..

Si vous avez vu le discours liminaire de Tim Cook, alors je suis sûr que vous conviendrez qu'Apple a surpassé les attentes de tous. Prenons quelques minutes pour résumer ce que Apple a annoncé, ce que cela signifie pour les développeurs et ce à quoi vous pouvez vous attendre plus tard cette année..

Confiant & Féroce

Peu importe ce qui a été écrit sur Apple ces derniers mois, Apple est en vie. Il semble que Apple a bien doublé sur le secret, car certains, sinon la plupart, de ce qui a été annoncé lors du discours de lundi était une surprise, même pour les personnes familiarisées avec la gamme de produits et la feuille de route d'Apple.

Ce qui m'a surpris pendant le discours, c'est le ton des principaux orateurs, Tim Cook et Craig Federighi. La société a regagné la confiance qui semblait avoir quitté la société en 2011, lorsque Steve Jobs est décédé..

La société est fière de ses produits, de sa communauté de développeurs, et n'hésite pas à se moquer d'Android de temps à autre. La relation saine avec Microsoft était également présente tout au long du discours liminaire.

OS X Yosemite

Du point de vue d'un développeur iOS, l'annonce de OS X Yosemite peut ne pas sembler si importante, mais ce n'est pas tout à fait exact. Même si Apple a répété à maintes reprises qu'iOS et OS X restaient des systèmes d'exploitation distincts, il est clair que la société améliore leur intégration avec chaque version..

Ce n'est pas un hasard si le cycle de développement d'OS X est passé de 18 à 24 mois à 12 mois, le même que celui d'iOS. Bien qu'iOS ait beaucoup hérité d'OS X au cours de ses premières années, il semble qu'iOS rende la pareille. Avec OS X Yosemite, l'apparence d'OS X ressemble davantage à celle d'iOS. OS X est non seulement devenu plus plat, à l'instar de son petit frère, mais la nouvelle fonctionnalité de continuité est une étape supplémentaire dans l'amélioration de l'intégration et de la communication entre les deux systèmes d'exploitation..

Des fonctionnalités telles que AirDrop, Handoff et iCloud Drive facilitent la commutation entre iOS et OS X, presque sans friction. Ces fonctionnalités font partie de la réponse de la société à la demande des consommateurs de rendre l'intégration entre iOS et OS X meilleure et moins lourde..

Mais Apple ne s'en est pas tenu là. La société est allée encore plus loin en utilisant la détection de proximité, ce qui signifie que votre Mac sait à quel moment votre appareil iOS se trouve à proximité. Cela permet, entre autres choses, d'accepter les appels entrants sur votre iPhone depuis votre Mac. Votre iPhone configurera également automatiquement un point d'accès personnel dès qu'il saura qu'un de vos Mac se trouve à proximité. À quel point cela est cool?

iOS 8

La transition d’iOS 6 à iOS 7 a été plus que évolutive et je suis sûr que vous conviendrez que le trajet n’a pas été aussi simple que le prétend Apple. iOS 7 a introduit tant de nouvelles fonctionnalités, de changements visuels et de changements de paradigme que l'utilisateur moyen, et la plupart des développeurs, hésitent un peu à adopter la nouvelle direction prise par Apple avec iOS.

L'annonce d'iOS 8 est cependant différente. La majorité des modifications introduites dans iOS 8 sont des modifications qui affinent le système d'exploitation, l'intègrent avec OS X et améliorent la stabilité et la convivialité globales du système d'exploitation..

Photos

L'application Photos a subi une refonte, elle est plus puissante que jamais. Apple a brièvement présenté une version pour OS X qui sera disponible au début de l’année prochaine. Il n’a pas été question d’iPhoto ni d’Aperture et il n’est pas clair si Photos pour OS X les remplacera..

Avec Photos pour iOS, vous pouvez désormais rechercher toutes les photos et tous les films que vous avez pris avec n’importe quel appareil iOS. C’est l’idée et iCloud, qui peut désormais stocker toutes les photos et vidéos que vous prenez avec un appareil iOS, devrait rendre cela possible..

Avec ce changement, Apple est entré sur le territoire de Dropbox. Même si chaque photo et film que vous prenez avec un appareil iOS est stocké dans iCloud, notez que cela ne sera pas gratuit pour tout le monde. Les prix d'Apple semblent toutefois plus que raisonnables.

Les extensions

À partir de iOS 8, une application peut avoir une ou plusieurs extensions qui étendent les fonctionnalités d'une application à d'autres applications, y compris le système d'exploitation. Les extensions sont la réponse d'Apple à une demande très courante des développeurs et des utilisateurs finaux..

Les extensions se présentent sous de nombreuses formes. Une extension peut être un simple widget pour le Centre de notifications qui affiche des données météorologiques, mais il peut également s'agir d'un clavier personnalisé, un autre grand changement pour iOS. Lors de la conférence, par exemple, Federighi a montré comment une application tierce permettait de modifier une photo dans Photos pour iOS. L'application tierce fournit l'interface utilisateur et l'intégration semblait assez transparente.

Touch ID

Selon Apple, Touch ID serait un grand succès puisque plus de 80% des consommateurs l'auraient activé. Dans iOS 8, Apple ouvre l’API Touch ID aux développeurs tiers. La sécurité reste essentielle, ce qui signifie que les informations d'empreintes digitales ne sont ni accessibles ni même exposées aux développeurs..

iCloud et CloudKit

iCloud reste un aspect très important de l'écosystème iOS et OS X pour Apple. En fait, le rôle d’iCloud devient plus important à chaque itération d’iOS et d’OS X.

La solution cloud d'Apple a été considérablement améliorée, tant du point de vue de l'utilisateur final que du développeur. J'ai déjà mentionné comment iCloud peut désormais stocker chaque photo et chaque film que vous créez avec vos appareils iOS, mais Apple permet également d'accéder aux données stockées sur iCloud en introduisant iCloud Drive. Le partage de données entre les applications iOS et OS X est plus facile et plus transparent..

L'envoi d'e-mails avec des pièces jointes volumineuses n'est plus un problème avec iCloud Drive. Comme je l'ai mentionné précédemment, iCloud est gratuit jusqu'à 5 Go. L'espace supplémentaire coûte 0,99 $ par 20 Go par mois ou 3,99 $ par mois pour 200 Go. La limite supérieure est de 1 To.

iCloud Drive n'est pas le seul changement fait par Apple côté serveur, la société a également introduit Cloud Kit. Avec Cloud Kit, Apple s'occupe de l'aspect serveur du développement d'applications iOS, permettant ainsi au développeur de se concentrer sur l'application iOS. Avec Cloud Kit, Apple entre sur le marché du BaaS ou du PaaS.

HealthKit

Apple a également annoncé HealthKit et Health pour iOS. HealthKit est une plateforme de gestion de vos données de santé et de forme physique. L'application Health visualise ces données à la manière d'Apple. Bien entendu, l’intégrité des données pour iOS dépend des entrées reçues d’autres applications qui collectent les données..

Une application telle que Nike +, par exemple, peut partager ses données de condition physique via HealthKit et demander des données nutritionnelles collectées par une autre application. Apple a souligné que la vie privée est une préoccupation importante. Les applications tierces ne peuvent pas accéder à vos données de santé sans votre permission..

AccueilKit

Le nombre de nouvelles fonctionnalités, infrastructures et API introduites lors du discours de cette année est impressionnant. HomeKit est un autre ajout surprenant à iOS. Le cadre HomeKit est une intégration entre les appareils iOS et les appareils conformes au protocole d'automatisation domestique d'Apple..

L'idée est d'apporter de la raison au marché croissant de la domotique dans lequel chaque fabricant a ses propres normes et applications. Il ne semble pas qu'Apple teste simplement les eaux avec HomeKit car la société a répertorié une liste impressionnante de grandes marques qui prétendent soutenir HomeKit. Espérons que HomeKit rend la domotique moins douloureuse et plus cohérente pour les utilisateurs iOS.

Jeu sur

Une autre grande surprise a été l'introduction de Metal, une API de bas niveau permettant de réaliser des graphiques complexes sur des appareils iOS. Comme cela a été démontré lors du discours liminaire, Metal vise à minimiser les frais généraux d'OpenGL en le remplaçant par une API qui non seulement réduit ces frais, mais augmente également les performances sur les périphériques iOS..

SpriteKit, introduit dans iOS 7, a fait l’objet d’une mise à jour importante de la physique par pixel, de la cinématique inverse et des forces de champ. En outre, SceneKit, disponible sur OS X depuis plusieurs années, est désormais également disponible sur iOS..

Vol d'essai

Le nombre d'annonces importantes était stupéfiant. Nous savions déjà qu'Apple avait acquis Burstly, la société derrière TestFlight, mais je ne m'attendais pas à ce qu'ils l'offrent comme un service à part si tôt. Mais ils ont fait.

TestFlight, le nom n'a pas changé, permettra la distribution d'applications bêta via l'application TestFlight d'Apple. Le seul inconvénient est que cela nécessitera iOS 8. Cependant, l'acquisition de Burstly semble n'avoir que des avantages. Par exemple, chaque application, et non un compte développeur, peut avoir jusqu'à 1 000 testeurs. Il n'y a pas de limite sur le nombre de périphériques par testeur. C'est vraiment une nouvelle incroyable et cela rendra le processus beaucoup moins lourd pour les développeurs iOS. Le provisioning des applications est également beaucoup plus simple grâce à TestFlight. Si vous pensiez que la distribution bêta était facile avec TestFlight, c'est devenu encore plus facile grâce à, eh bien, TestFlight.

Apple ne serait pas Apple s'il ne contrôlait pas étroitement la distribution des builds aux testeurs. Selon le contrat de licence de développeur iOS mis à jour, une application doit être examinée par Apple avant de pouvoir être distribuée aux testeurs. On ne sait pas exactement comment cela se produira et combien de temps il faudra à Apple pour passer en revue des versions de test, mais, comme le souligne Ole Begemann, il semble qu'Apple soit plus indulgent en matière de révision des versions de test. Il faudra attendre l'automne pour savoir comment les choses vont se dérouler..

Rapide

L'annonce la plus importante du discours d'ouverture de la WWDC de cette année a été sans aucun doute l'introduction de Swift, un tout nouveau langage de programmation permettant de développer des applications iOS et OS X. L'objectif de Swift est de rendre le développement plus facile, moins douloureux et plus moderne. À première vue, Swift est un langage de programmation dynamique incroyablement expressif grâce à son interface intuitive, attrayante et sa syntaxe..

Swift n'a pas d'en-tête, pas de point-virgule et supporte les fermetures et les génériques. Les fonctions peuvent avoir plusieurs valeurs de retour et arguments facultatifs. Un autre point central du langage est la sécurité. Par exemple, votre application ne plante pas lorsque vous accédez à un élément d'un tableau qui est hors des limites du tableau..

Partir de zéro

Cela signifie-t-il que chaque développeur Cocoa doit partir de zéro en termes d'apprentissage du développement de Cocoa? La beauté de Swift réside dans le fait qu’elle s’intègre parfaitement à Cocoa et Cocoa Touch.

Si vous explorez quelques exemples de code Apple, vous remarquerez rapidement deux choses. Premièrement, la syntaxe est très facile à apprendre. C'est moins bavard que C et Objective-C, et plus intuitif. Deuxièmement, Swift exploite les API et les infrastructures existantes, ce qui signifie que votre connaissance de la construction d'applications iOS et OS X vous donnera une longueur d'avance si vous décidez d'adopter Swift dans vos projets.

Bien que de nombreuses fonctionnalités du langage Swift méritent toute notre attention, j'aimerais en souligner quelques-unes auxquelles vous devrez vous habituer si vous êtes un développeur Objective-C..

Inférence de type

Dans Swift, les types sont déduits, ce qui signifie que vous n’avez plus à déclarer une variable en tant que NSString ou NSDictionary. Le compilateur est assez intelligent pour déduire le type et optimisera même votre code en coulisse..

Organisation

Dites au revoir aux fichiers d'en-tête et d'implémentation. Swift se débarrasse complètement des fichiers d'en-tête et je suis sûr que cela ne vous dérange pas.

Attention au point-virgule

Comme Ruby et CoffeeScript, il n'est pas nécessaire de terminer une ligne de code par un point-virgule à moins qu'une ligne ne contienne plusieurs instructions..

Objective-C et C

Swift joue bien avec Objective-C et C. En fait, Swift utilise le même runtime utilisé par Objective-C. Vous pouvez utiliser Swift et Objective-C dans le même projet sans problèmes. Cela rendra la tâche moins lourde de migrer d’Objective-C à Swift..

Xcode 6

Même si Xcode 6 est toujours en version bêta, Apple a également prévu une grande version pour son environnement de développement intégré. Xcode 6 ajoute la prise en charge de Swift, le débogage de vues, la prise en charge améliorée de la localisation de projets, le rendu en direct dans Interface Builder, les polices iOS personnalisées et la prise en charge des extensions..

Il ne s'agit que d'une petite sélection des nouvelles fonctionnalités et améliorations de Xcode 6. Si vous vous demandez ce à quoi Apple a travaillé ces dernières années, ne vous posez plus la question.

Conclusion

Je suis d'accord avec Joshua Topolsky et Craig Hockenberry, le ton du discours était incroyablement optimiste. Apple est prêt à affronter la concurrence et a retrouvé sa confiance. Tim Cook n'a manqué aucune occasion de se moquer d'Android de Google et de montrer aux gens qu'Apple est toujours le leader de l'espace mobile.

Google I / O est tout proche et j'ai hâte de voir ce que Google nous réserve. Cela n'a jamais été un meilleur moment pour devenir ou devenir un développeur mobile.