Un nouveau framework pour Swift gagne en popularité parmi les développeurs iOS

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Un nouveau framework pour Swift (iOS/macOS) gagne en popularité



L'écosystème Swift continue de se développer activement, et un nouvel acteur est apparu à l'horizon, attirant rapidement l'attention des développeurs iOS/macOS. Il s'agit du framework SwiftAct (nom provisoire, pour l'exemple — ndlr), qui promet de simplifier la création d'applications réactives et hautes performances pour toutes les plateformes Apple. Selon les dernières enquêtes de la communauté, l'intérêt pour cet outil a augmenté de 40 % au cours des trois derniers mois, et le nombre de projets sur l'utilisant sur GitHub a doublé.



Qu'est-ce que SwiftAct et pourquoi en a-t-on besoin ?



SwiftAct se positionne comme une alternative légère à Combine et en partie à RxSwift, mais avec un accent sur l'asynchronisme et l'architecture propre. Contrairement aux approches traditionnelles, ce framework utilise les toutes dernières fonctionnalités de Swift Concurrency (async/await, acteurs) nativement, sans nécessiter l'écriture de code standard pour la gestion des threads.



Fonctionnalités clés de SwiftAct :



  • Réactivité sans douleur : Abonnement automatique aux changements d'état du modèle. Le développeur doit simplement marquer la propriété avec l'attribut @Observable, et l'interface utilisateur dans SwiftUI se mettra à jour automatiquement.
  • Gestion réseau intégrée : Le module Networking prend en charge async/await, la sérialisation automatique en Codable et la répétition des requêtes en cas d'erreur.
  • Modularité : Le framework est divisé en modules indépendants (Core, UI, Networking, Storage) qui peuvent être connectés sélectivement, sans gonfler le binaire.
  • Prise en charge de macOS : Contrairement à de nombreuses solutions orientées iOS, SwiftAct est entièrement compatible avec AppKit et Catalyst.


Pourquoi les développeurs migrent-ils vers lui ?



La raison principale est l'abaissement de la barrière à l'entrée. Alors qu'auparavant, pour créer une application réactive, il fallait apprendre Combine (avec son système complexe de Publisher/Subscriber) ou intégrer le lourd RxSwift, SwiftAct propose une syntaxe intuitive, rappelant le travail avec des propriétés ordinaires.



Voici un exemple fourni par un blogueur passionné :



// Ancienne approche avec Combineclass ViewModel {    @Published var text = ""    var cancellables = Set<AnyCancellable>()        func fetch() {        api.fetchText()            .sink { [weak self] value in                self?.text = value            }            .store(in: &cancellables)    }}

// Nouvelle approche avec SwiftActclass ViewModel { @Observable var text = "" func fetch() async { text = await api.fetchText() // simple et clair }}


Comme on le voit, le code est devenu plus concis, et la gestion de la mémoire ainsi que le désabonnement des flux se font automatiquement.



Inconvénients et risques



Malgré l'enthousiasme, les experts préviennent : le framework est encore jeune. La version 1.0 est sortie il y a seulement six mois, et la communauté n'a pas encore eu le temps de constituer une base de connaissances étendue. Des bugs critiques sont possibles lors du travail avec le multithreading dans des projets complexes. De plus, pour les projets de production avec des exigences strictes de stabilité, il est encore recommandé de s'en tenir à Combine ou TCA (The Composable Architecture).



Perspectives



Néanmoins, la tendance est évidente : les développeurs sont fatigués de la complexité et veulent écrire moins de code tout en obtenant plus de fonctionnalités. SwiftAct a déjà été adopté par de grandes entreprises comme (provisoirement) "Yandex.Maps" et "Tinkoff" (dans des projets pilotes), ce qui témoigne de la confiance en la technologie.

Recommended Libraries