Nos preguntamos si al usar Bundle
con objetos serializables o parcelable, ¿cuándo ocurre la clasificación? ¿Tan pronto como lo pones en el paquete? Como los paquetes se usan principalmente para pasar datos entre dos pantallas (¡ni siquiera estamos hablando de IPC aquí!), No parece tener mucho sentido ordenar un objeto, ya que permanece en la memoria todo el tiempo, sin ?¿Un objeto serializable siempre se serializa cuando se coloca en un paquete?
¿Estamos justo en el supuesto de que marshalling (ya sea de Java serialización o parcelación Android) sólo ocurre si
- los datos deben ser transmitidos a otro proceso, por ejemplo, durante RMI, o
- el componente (actividad o servicio) se destruye y el estado de la instancia debe escribirse en el disco?
que he visto ingenieros marco Android (creo que fue Dianne Hackborn) dicen que se debe utilizar en lugar de Parcelable
Serializable
porque el primero es mucho más rápido. ¿Cuanto más rápido? ¿Y esto incluso marcará la diferencia si el objeto no se organiza la mayor parte del tiempo de todos modos (suponiendo que nuestras suposiciones sobre esto fueran correctas)?
descargo de responsabilidad: eso es más o menos lo que obtuve al depurar nuestra aplicación, por lo que vale. Leer el código fuente que está lleno de variables llamadas 'N' y' M' no es lo más agradable, así que tal vez me perdí algo :-) – Matthias
descargo de responsabilidad 2: solo para evitar malentendidos, esas variables eran parte del código fuente de Bundle, no nuestro propio :-D – Matthias