Junior
O que é serialização?
sobes.tech IA
Resposta da IA
A transformação de um objeto ou estrutura de dados para um formato que possa ser facilmente armazenado (por exemplo, em um arquivo, memória, base de dados) ou transmitido pela rede. A desserialização é o processo inverso.
No Android, a serialização é frequentemente usada para:
- Transmitir dados entre uma Activity ou Fragment usando
IntentouBundle. - Guardar o estado das Views (por exemplo, ao rotacionar a tela).
- Fazer cache de dados.
- Trocar dados com servidores remotos (JSON, XML).
Os principais mecanismos de serialização no Android:
Serializable: Fácil de usar, mas lento e cria muitos objetos temporários. Faz parte do Java padrão.Parcelable: Mecanismo mais rápido e eficiente, específico do Android. Requer mais código boilerplate para implementação.
// Exemplo Parcelable
class MyData implements Parcelable {
private int value;
private String text;
// Construtor
public MyData(int value, String text) {
this.value = value;
this.text = text;
}
// Implementação 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);
}
}