42 lines
1.5 KiB
Markdown
42 lines
1.5 KiB
Markdown
## Éviter les animations
|
||
|
||
### Identifiants
|
||
|
||
|
||
| V1 |
|
||
|:--:|
|
||
| 16 |
|
||
|
||
### Catégories
|
||
|
||
| Cycle de vie | Tiers | Responsable |
|
||
|:---------:|:----:|:----:|
|
||
| 2. Conception | Utilisateur/Terminal | UX/UI Designer |
|
||
|
||
### Indications
|
||
|
||
| Degré de priorité | Mise en oeuvre | Impact écologique |
|
||
|:-------------------:|:-------------------------:|:---------------------:|
|
||
| 4 | 3 | 5 |
|
||
|
||
|Ressources Economisées |
|
||
|:----------------------------------------------------------:|
|
||
| Processeur / Mémoire vive |
|
||
|
||
### Description
|
||
|
||
Les animations peuvent être très coûteuses en termes de cycles CPU et de consommation mémoire, car elles déclenchent une phase de "Re-draw" voir de "Re-layout" à chaque frame (soit environ 50 fois par ms).
|
||
. Il faut donc éviter au maximum les animations, et ne les utiliser que lorsqu’elles sont indispensables.
|
||
|
||
Si vous ne pouvez pas vous passer d’une animation, limitez-vous à l'animation de propriétés necessitant de ré-éxecuter uniquement la phase "Drawing". Par exemple : `alpha`, `translation`, `rotation`, `color`. A l'inverse, éviter l'animation de propriété nécessitant de ré-executer en plus la phase de "Layout". Par exemple : `padding`, `height`, `width`.
|
||
|
||
### Exemple
|
||
|
||
// TODO mettre des exemples en UI Toolkit et en Compose
|
||
|
||
### Principe de validation
|
||
|
||
| Le nombre ... | est inférieur ou égal à |
|
||
|------------------------|:-----------------------:|
|
||
| d'animations par écran | 1 |
|