Tech Radar Natif

Retrouvez l'avis de nos experts sur les techniques, plateformes, outils, langages et frameworks associés aux technologies natives.
Adopt
Trial
Assess
Hold
Hold
Assess
Trial
Adopt
Hot Reload en SwiftUI
40
Swift Testing
39
Swift Perception
38
Compose Multiplatform
37
Amper
36
Typed Errors en Kotlin avec Arrow
35
Swift Dependencies
34
Room
33
Factory
32
Kotlin Multiplatform (KMP)
31
Compose Stability Configuration File
30
µ-Features Architecture
29
Tuist 4
28
The Composable Architecture
27
Swift 6 Migration
26
SF Symbols
25
KSP
24
Gradle Version Catalog
23
Koin
22
Hold
Assess
Trial
Adopt
Adopt
Trial
Assess
Hold
Adopt
Notre point de vue

En conclusion, bien que Koin ne soit pas la librairie d'inversion de contrôle préconisée par Google, sa simplicité d'utilisation et sa compatibilité multi-plateforme en font un choix privilégié pour nos nouveaux projets. Pour un projet existant utilisant Hilt, une migration vers Koin devrait être envisagée seulement si un passage à KMP est prévu dans un futur proche.

Notre point de vue

Bien que RefreshVersion soit une autre solution viable, Gradle Version Catalog a été standardisé par Gradle et Google comme solution officielle de gestion des dépendances. Nous recommandons de passer à la solution présentée pour tout projet qui n’utilise pas déjà une des deux solutions viables.

Notre point de vue

Bien que KAPT soit toujours une option viable, KSP le surpasse dans tous les aspects. Il offre un meilleur support pour les fonctionnalités spécifiques à Kotlin et fonctionne deux fois plus vite. Nous recommandons fortement d'adopter KSP.

Notre point de vue

Nous vous recommandons l'adoption de cette technologie pour tous vos projets natifs. Malgré quelques subtilités dans la création de symboles personnalisés, les SF Symbols présentent des avantages indéniables en termes de rapidité d'intégration, de confort, de flexibilité et de performance.

Notre point de vue

Compte tenu de ces considérations, nous recommandons de migrer vers Swift 6. Bien que les changements majeurs nécessitent une évaluation attentive de l'investissement, les avantages de la vitesse de compilation améliorée et de la concurrence vérifiée sont substantiels.

Notre point de vue

Chez Theodo, nous avons mis en œuvre The Composable Architecture avec succès dans des projets en production et nous le recommandons vivement pour la gestion de state dans les applications SwiftUI.

Notre point de vue

Nous vous recommandons toujours d'adopter Tuist pour de nouveaux projets. Nous vous recommandons également la migration vers Tuist 4. Les avantages à long terme en termes de performance et de gestion des projets surpassent largement les défis initiaux de la transition.

Notre point de vue

Chez Theodo, les micro-features sont devenues un choix de référence dans les nouveaux projets natifs. Nous avons pu tester à quel point cette architecture permettait de simplifier les évolutions ou refonte partielle d'applications complexes.

Trial
Notre point de vue

Chez Theodo, nous voyons un grand potentiel dans cette solution. Bien qu’elle soit nouvelle et puisse avoir des limites encore inconnues, nous recommandons une implémentation progressive pour assurer la compatibilité des projets.

Notre point de vue

Nous vous encourageons à démarrer vos nouveaux projets Android directement avec KMP pour garantir leur évolutivité. Cela n'affecte en rien le projet lui-même, mais vous permettra de partager du code plus facilement à l'avenir.

Notre point de vue

Nous recommandons d’essayer Factory dans vos projets car elle présente un potentiel significatif pour améliorer la qualité du code et la performance des applications iOS. Bien que des compromis existent, ses avantages justifient une évaluation sérieuse pour les projets futurs​​.

Notre point de vue

Il existe des concurrents sérieux à Room, comme SQL Delight ou Realm, qui offrent également une compatibilité avec KMP. Quoiqu'il en soit, Room demeure relativement simple à utiliser : c'est une valeur sûre pour Android et bientôt pour KMP aussi. Vous pouvez l'intégrer sans risque à votre application Android et envisager son utilisation dans une future version Multiplatform.

Notre point de vue

Swift Dependencies offre donc une manière convaincante gérer les dépendances, que ce soit dans un projet TCA ou en migration incrémentale dans un projet sans injection, même si l'absence de fonctionnalités importantes peut être un frein à son adoption.

Notre point de vue

Arrow est un outil puissant pour rendre le code Kotlin plus robuste et lisible. Either est déjà incontournable, mais Raise, bien que prometteur, reste limité par sa dépendance à des fonctionnalités expérimentales.

Assess
Notre point de vue

Amper est spécifiquement conçu pour faciliter le développement de projets Kotlin Multiplatform et pourrait devenir une solution intéressante à explorer pour les développeurs souhaitant simplifier la gestion et la maintenance de leurs builds.

Notre point de vue

CMP est très prometteur et nous croyons en son potentiel : pour les projets ciblant Android et Desktop, il peut être adopté sans hésitation. Pour iOS, il est également recommandable malgré son statut bêta. Cependant, pour le web, il est encore trop tôt pour utiliser CMP en production à large échelle. Les progrès rapides réalisés par JetBrains et la communauté sont encourageants et c'est pourquoi nous surveillons cette technologie de près.

Notre point de vue

En conclusion, swift-perception est une solution précieuse pour les développeurs souhaitant utiliser @Observable sur des versions d’iOS antérieures à 17. Malgré ses inconvénients, cela permet de préparer le code pour le futur sans se priver d'utilisateurs. Chez Theodo, nous l'intégrons dans notre R&D et nous vous recommandons de l'essayer pour vos projets compatibles avec iOS 14 à 16.

Notre point de vue

Chez Theodo, nous surveillons de près Swift Testing. Son approche innovante et ses fonctionnalités en font un candidat sérieux pour une adoption future. Cependant, étant donné sa nouveauté, il est actuellement en phase d'assess. Nous pensons que Swift Testing a le potentiel de devenir un outil clé dans notre stratégie de test à mesure qu'il prouve sa fiabilité et s'enrichit de fonctionalités (comme les tests UI ou de performances).

Hold
Notre point de vue

En dépit de l'exploit technique réalisé, nous déconseillons l'utilisation de cette librairie en raison de ses coûts élevés. Néanmoins, cela démontre qu'il est possible de mettre en œuvre le hot reload et certains ingénieurs chez Apple pourraient s'en inspirer.

Découvrez la version complète

Retrouvez l'avis de nos experts sur les techniques, plateformes, outils, langages et frameworks associés aux principales technologies mobiles que nous utilisons au quotidien chez BAM : React Native, Flutter et Native.