Blog ENI : Toute la veille numérique !
🐠 -25€ dès 75€ 
+ 7 jours d'accès à la Bibliothèque Numérique ENI. Cliquez ici
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
  1. Livres et vidéos
  2. Jetpack Compose
  3. Introduction
Extrait - Jetpack Compose Développez des interfaces accessibles et modernes pour Android
Extraits du livre
Jetpack Compose Développez des interfaces accessibles et modernes pour Android Revenir à la page d'achat du livre

Introduction

Des applications accessibles

Aujourd’hui, d’après l’OMS, une personne sur six est porteuse d’un handicap significatif. Face à cette statistique, rendre accessibles nos applications mobiles n’est pas une option. Pour autant, c’est un sujet qui n’est pas ou très peu évoqué dans les formations de développement. De plus, l’accessibilité numérique est un vaste sujet, qui doit être pris en compte à tous les niveaux dans la gestion d’un projet mobile, et plus globalement d’une entreprise, et implique différents niveaux de responsabilité. Ce livre a pour objectif de partager des bonnes pratiques à appliquer afin de développer des interfaces accessibles à tous. Avant d’aller plus loin, profitons de cette introduction pour définir ce qu’est l’accessibilité numérique et quelles sont nos responsabilités vis-à-vis de celle-ci en tant que développeurs et développeuses.

Qu’est-ce que l’accessibilité numérique ?

L’accessibilité numérique désigne le fait de rendre un service numérique utilisable par tout le monde, quel que soit son contexte d’utilisation.

Analysons cette définition. Une application utilisable, quel que soit son contexte d’utilisation, fait référence tout d’abord à la position géographique de l’utilisateur. Cela signifie que l’application est fonctionnelle, quelle que soit la qualité de sa connexion internet. Cela signifie aussi qu’un utilisateur peut l’utiliser sur tout type d’appareil, et dans toutes situations dans lesquelles il peut se trouver, par exemple, qu’il soit à l’extérieur en plein soleil, ou dans un environnement sombre. Enfin, une application...

Des applications modernes

Des challenges uniques spécifiques au mobile

En 2023, développer une application mobile n’est pas anodin. En effet, les développeurs et développeuses Android doivent faire face à des challenges uniques dans le monde du développement tels que :

  • la multiplicité des résolutions d’appareils

  • le support des versions antérieures de l’OS

  • le nombre important de surcouches Android

  • le cycle de déploiement particulier d’une application

  • la variabilité de la connectivité de l’utilisateur

  • les permissions

  • les notifications

  • le cycle de vie d’une application et la gestion de son état

  • les achats intégrés, dits également in-app en anglais

  • etc.

Il est complexe de gérer tous ces challenges au sein d’une même base de code. Pour qu’une application reste maintenable et qualitative, cela nécessite des besoins d’architecture importants, de bons outils et des bibliothèques simplifiant la gestion de certains de ces challenges.

Des appareils de plus en plus puissants menant à des interfaces de plus en plus complexes

Le système d’exploitation Android a été lancé sur le marché en juin 2007. Depuis ce lancement, l’écosystème mobile a beaucoup évolué. Pour mieux nous en rendre compte, comparons ci-dessous les caractéristiques principales de deux smartphones sur lesquels Android est installé. Tout d’abord, le HTC Dream, le premier smartphone commercialisé avec le système d’exploitation Android, sorti en 2008. Ensuite, le Google Pixel 6, sorti en 2021, quelques mois après la première version stable de Jetpack Compose.

Caractéristiques

HTC Dream (2008)

Google Pixel 6 (2021)

CPU

Processeur monocœur

(Fréquence :...

Prérequis

Bien que ce livre nécessite des connaissances de base en développement Android, cette partie a pour but d’effectuer une mise à niveau en partageant quelques définitions de concepts techniques avancés qui seront utilisés dans ce livre.

Kotlin

Kotlin est un langage de programmation fonctionnel et orienté objet développé par Jetbrains. Descendant moderne du langage Java, il fut adopté sur Android par la communauté avant d’être officiellement supporté par Google en 2017. Jetpack Compose utilise exclusivement Kotlin. Des connaissances de base de ce langage sont donc nécessaires pour aborder sereinement la suite de ce livre. En complément, vous trouverez ci-dessous quelques définitions de notions techniques qui seront spécifiquement utilisées dans ce livre.

Fonctions

Paramètres nommés

Lorsque nous appelons une fonction en Kotlin, il est possible de nommer les différents arguments de cette fonction. Par exemple, si nous prenons la fonction suivante :

fun saveUser(name: String, city: String) {  
    /*...*/ 
} 

Nous pouvons l’appeler de cette manière :

saveUser(name = "Emmanuel", city = "Edinburgh") 

Cette technique rend l’identification des différents paramètres plus simples à la lecture du code.

Valeurs des paramètres par défaut

Lorsque nous déclarons une fonction, il est possible de déclarer une valeur par défaut à un paramètre. Ainsi, si ce paramètre n’est pas renseigné lors de l’appel de cette fonction, c’est sa valeur par défaut qui sera utilisée.

Par exemple :

fun saveUser(name: String, city: String = "Lille") {  
    /*...*/ ...