Ecrivez-nous
Contact
Icône menu côté

La dernière conférence Apple WWDC a été très riche, et l'annonce certainement la plus captivante a été pour nous SwiftUI. Un nouveau Framework (Boite à outils pour les non anglophones) afin de créer des interfaces sur toutes les plateformes Apple... Oui toutes !


Après de longues années à reposer sur XCode et son éditeur d'interface. Apple semble avoir écouté ses développeurs et fait machine arrière. Avant on ne pouvait faire une application compatible iOS, MacOs, TvOS sans faire 3 voir plus applications différentes. C'est le premier point poussé par SwiftUI, 1 code pour tout l'environnement Apple !




Adieu aux 1978000 options de Xcode


Apple avait misé depuis longtemps sur un éditeur d'interface visuel permettant de réaliser le design de ses applications. Oui mais voilà, les années passent, et ils ont rajouté (beaucoup) de possibilités. Tellement que cela devient vite chaotique. C'est visuel, mais pour développer des interfaces complexes c'est peu pratique.


Pour rappel voici à quoi ressemble le design d'une interface sur Xcode aujourd'hui :



Créer une application iOS ou autre sans Xcode est suicidaire. Le lien entre votre code et l'interface étant parfois assez complexe pour pas grand-chose.



SwiftUI à la rescousse


Apple a frappé très fort, et comme à son habitude n'hésite pas à totalement changer sa façon de penser. En effet SwiftUI repose entièrement sur du code. Pas d'éditeur d'interface, juste du code.


Pas d'éditeur graphique, mais pourquoi est-ce plus simple ?


Comme je vous le disais précédemment l'éditeur Xcode devient de plus en plus compliqué, mais pas seulement. Une fonction très attendue de SwiftUI : le Hot Reload ou rechargement à chaud. Pouvoir changer l'aspect graphique de notre application en codant sans avoir à relancer l'application !



Avoir l'interface graphique ainsi que la logique dans le code apporte une réelle souplesse et simplicité pour les développeurs. Apple n’est pas le seul à en être rendu compte. Les composants réalisés sont beaucoup plus facilement réutilisables, les animations sont simplifiées...


Sans rentrer dans le détail ici, il est beaucoup plus aisé de réaliser une application sans avoir à dispatcher une interface graphique dans X fichiers (CF: Android et ses fichiers Xml pour les composants customs). C'est un peu comme lire un livre en anglais puis avoir une partie en français puis en allemand. Même si vous savez lire les trois langues, c'est assez compliqué de passer de l'un à l'autre toutes les 2 minutes, et bien pour le développement c'est la même chose.


Dans la ligné de Flutter

Flutter pour ceux qui ne le savent pas encore, c'est le nouveau projet open source de Google pour réaliser des applications iOS et Android natives avec un et même code.

La façon de penser est essentiellement la même, on encapsule les briques d'interfaces les unes dans les autres afin de construire notre interface graphique


Pour ceux que ça intéresse, voici un excellent article qui compare la programmation Flutter avec SwiftUI.


Conclusion


SwiftUI fait un très gros tour de force, changer complètement une façon de penser pour un géant tel Apple est un énorme challenge. Le pari semble réussi tant les retours de la communauté sont bons.

Un changement que beaucoup de développeurs attendaient depuis longtemps qui devrait faciliter le développement sur tout l'environnement Apple.



Gautier d'Apparence

Plus d’articles qui pourraient vous plaire

Abonnez-vous à nos conseils

Recevez une fois par semaine, un conseil, une inspiration, un outil pour améliorer votre application mobile

Une idée ?Parlons-en !
linked in iconlinked in icon