#WWDC : quelles sont les attentes des développeurs ?
Par Didier Pulicani - Publié le
La WWDC débute dans quelques jours maintenant et les premiers participants sont déjà dans l’avion, voire même sur place depuis quelques jours pour les plus motivés ! Si le grand public s’est déjà exprimé sur ce qu’il attend, ne l’oublions pas, cette conférence est avant tout pour les développeurs.
Les fuites étant peu nombreuses, comme l’an dernier, nous avons donc fait notre liste au père noël et avons posé la question aux autres développeurs francophones sur le Slack des
frenchiesde la WWDC.
Langage et outils
Swift et Xcode sont au cœur de l’attention, c’est la base de tout développeur iOS / macOS. Evidemment on en attend toujours plus de ces outils sur lesquels nous passons des heures de travail et l’on souhaite toujours que ces derniers s’améliorent. Ainsi, le refactoring en Swift est probablement le plus attendu car c’est une nette régression par rapport à Objective-C, subie au quotidien par les éditeurs.
Par ailleurs, quand plusieurs développeurs travaillent sur le même storyboard, les conflits arrivent très (trop) vite. Apple a introduit récemment les “storyboards references” permettant de découper rapidement un storyboard en plusieurs fichiers. Pour autant le problème reste entier. Si un développeur change la visualisation de iPhone en iPad les frames changent et génèrent des conflits.
On attend aussi une meilleure gestion globale pour que l’on ne soit pas tenté de revenir à une approche XIB. D’abord en enlevant ces conflits liés à des frames (soit en les mettant ailleurs soit en ne les mettant pas si les contraintes suffisent soit en étant exhaustif sur les devices) et ensuite en offrant un outil permettant de “merger” des storyboards visuellement plutôt que de modifier des XML auto-générés.
La gestion des dépendances passe aujourd’hui par des outils tiers comme Carthage ou CocoaPods mais l’intégration n’est pas parfaite et relève parfois du bricolage. A chaque nouvelle version d’Xcode on espère que les versions fonctionneront encore et il faut souvent y mettre de l’huile de coude. On aimerait qu’Apple ouvre son Swift Package Manager à iOS et intégré à Xcode.
Enfin, Apple a présenté sa solution d’intégration continue Xcode Bots mais elle nécessite un Mac local. Une version cloud comme BitRise ou boddybuild permettrait de simplifier la mise en place, de tester sur plusieurs configurations d’Xcode et pourquoi pas de tester sur plusieurs devices.
Bref, on veut un Xcode qui en fait plus, qui pourrait intégrer SwiftGen, la gestion des localisations depuis les storyboards, … mais aussi un Xcode plus rapide à ouvrir les fichiers, qui ne passe plus des heures à faire des “Indexing …”, qui supporte mieux les changements de branche et une runtime Swift qui n’est plus embarqué dans les applications comblerait déjà beaucoup de monde.
Nouvelles API
Quand Apple révèle un nouvel OS, il vient avec des nouvelles capacités pour les développeurs. Chaque année ce sont plus de 1500 nouvelles APIs qui sont ouvertes et autant de possibilités.
Voici quelques-unes qui font vibrer la communauté :
• Intégration de plus d’actions dans SiriKit comme la réservation de restaurants
• Picture In Picture dans Apple TV
• La WebView dans tvOS
• Le self-sizing plus simple et performant dans les Collection Views
• Un cloudkit qui fonctionne sans compte iCloud
• Un concurrent à Firebase Realtime Database pour dépoussiérer un peu CoreData
iTunesConnect
iTunesConnect (qui permet la diffusion des apps et beta) a mis beaucoup de temps à évoluer. Récemment sa partie analytics a progressé mais il souffre encore de nombreux manques :
• Pouvoir exporter les données d’iTunes Analytics vers d’autres outils
• Gérer la mise à disposition d’une app par zone géographique, par type (iOS / tvOS)
• Pouvoir revenir sur une ancienne version (rollback) en cas de besoin
• Déploiement progressif, comme sur le Google Play Store (stage rollout)
• A/B testing sur toute la fiche store
• Possibilité de gérer des zones géographiques sur les produits In App
• Stats en temps réel
Et puis, soyons fou…
Des apps iOS qui tournent sur Mac, une puce AI intégrée (comme le co-processeur de mouvements Mx) pour faciliter le deep-learning on device dans l’iPhone et pourquoi pas un cadeau comme une Apple Watch offerte aux participants (comme l’Apple TV avait été offerte à certains développeurs en Septembre 2015). Surtout Tim si tu veux te faire plaisir n’hésites pas :-)
Comme chaque année, le père noël ne fera QUE des heureux mais nous n’aurons pas tous les jouets de la liste. Allez encore quelques heures d’attente !
Je remercie, David Bonnet, Pierre-Louis Naud, Brenda Guegan, Marc Beaudoin, Cédric Pointel et les autres pour nous avoir donné leurs avis.