Junior
Qu'est-ce que la sérialisation?
sobes.tech IA
Réponse de l'IA
La transformation d’un objet ou d’une structure de données en un format facilement stockable (par exemple, dans un fichier, en mémoire, dans une base de données) ou transmissible sur un réseau. La désérialisation est le processus inverse.
Dans Android, la sérialisation est souvent utilisée pour :
- Transmettre des données entre une Activity ou un Fragment à l’aide de
IntentouBundle. - Enregistrer l’état des Views (par exemple, lors de la rotation de l’écran).
- Mettre en cache des données.
- Échanger des données avec des serveurs distants (JSON, XML).
Les principaux mécanismes de sérialisation dans Android :
Serializable: Facile à utiliser, mais lent et crée beaucoup d’objets temporaires. Fait partie de Java standard.Parcelable: Mécanisme plus rapide et efficace, spécifique à Android. Nécessite plus de code boilerplate pour l’implémentation.
// Exemple Parcelable
class MyData implements Parcelable {
private int value;
private String text;
// Constructeur
public MyData(int value, String text) {
this.value = value;
this.text = text;
}
// Implémentation Parcelable
protected MyData(Parcel in) {
value = in.readInt();
text = in.readString();
}
public static final Creator<MyData> CREATOR = new Creator<MyData>() {
@Override
public MyData createFromParcel(Parcel in) {
return new MyData(in);
}
@Override
public MyData[] newArray(int size) {
return new MyData[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(value);
dest.writeString(text);
}
}