Saya pikir orang-orang Java dan .Net salah kali ini, akan lebih baik untuk membuat semuanya dapat diserialkan secara default dan hanya perlu menandai kelas-kelas yang tidak dapat diserialkan dengan aman.
Misalnya di Smalltalk (bahasa yang dibuat tahun 70-an) setiap objek dapat diserialkan secara default. Saya tidak tahu mengapa ini tidak terjadi di Java, mengingat fakta bahwa sebagian besar objek aman untuk diserialkan dan hanya beberapa yang tidak.
Menandai objek sebagai dapat diserialkan (dengan antarmuka) tidak secara ajaib membuat objek itu dapat diserialkan, itu dapat diserialkan selama ini , hanya saja sekarang Anda mengungkapkan sesuatu yang dapat ditemukan sistem sendiri, jadi saya tidak melihat alasan yang benar-benar bagus untuk serialisasi menjadi seperti sekarang.
Saya pikir itu adalah keputusan buruk yang dibuat oleh desainer atau serialisasi adalah renungan, atau platform tidak pernah siap untuk melakukan serialisasi secara default pada semua objek dengan aman dan konsisten.