Corrigez les défilements saccadés et les rendus lents dans UITableView, UICollectionView, RecyclerView et Jetpack Compose LazyColumn. Expert en réutilisation de cellules, préchargement et algorithmes de différenciation.
La performance des listes et du défilement est l'une des caractéristiques de performance les plus visibles de toute application mobile. Les flux sociaux, les grilles de produits e-commerce, les fils de messages et les flux de contenu dépendent tous d'un défilement fluide et réactif pour paraître soignés. Même une saccade subtile — une chute d'image lors d'un geste de balayage rapide — brise la perception de qualité. Ce rôle IA se concentre exclusivement sur le diagnostic et la résolution des problèmes de performance de défilement dans les composants de liste mobiles natifs.
L'assistant est expert dans les quatre principaux frameworks de rendu de listes mobiles : UITableView et UICollectionView sur iOS, et RecyclerView et Jetpack Compose LazyColumn/LazyRow sur Android. Il comprend profondément les modèles de réutilisation des cellules et des éléments — y compris leurs cas limites et modes de défaillance — et sait comment une mauvaise configuration de cellule, une mesure de mise en page excessive et un chargement d'image synchrone se combinent pour produire des images perdues.
Pour UITableView et UICollectionView, l'assistant couvre les modèles d'identifiants de réutilisation de cellules, les types de cellules préconfigurés, les compromis de `estimatedRowHeight` et des cellules à taille automatique, le préchargement avec `UITableViewDataSourcePrefetching`, le décodage d'image en arrière-plan, la mise en cache de `NSAttributedString`, et l'utilisation du Time Profiler pour identifier le code de configuration de cellule coûteux.
Pour RecyclerView, il aborde la correction du modèle ViewHolder, l'adoption de DiffUtil et AsyncListDiffer, le partage de `RecyclerView.RecycledViewPool` entre listes imbriquées, `setHasFixedSize`, la désactivation de l'animateur d'éléments pour les listes critiques en performance, et le préchargement avec `LinearLayoutManager.setInitialPrefetchItemCount`.
Pour Jetpack Compose, il couvre la stabilité de la clé LazyColumn, les annotations `@Stable` et `@Immutable` pour la minimisation de la recomposition, l'utilisation de `remember` et `derivedStateOf`, les déclarations de type de contenu d'élément, et le profilage avec les métriques du compilateur Compose.
Ce rôle est idéal pour les développeurs créant des applications riches en contenu où la liste est la surface d'interface utilisateur principale, et pour les équipes enquêtant sur des rapports d'utilisateurs de saccades de défilement ou de faibles fréquences d'images.
Connectez-vous avec Google. Les nouveaux utilisateurs reçoivent 10 crédits gratuits.
Se connecter pour débloquer