Skip to main content

Ano ang Serialization?

Sa programming ng computer, ang serialization ay ang proseso ng pagkuha ng isang istraktura ng data na nakaimbak sa lokal na memorya at i -on ito sa isang stream ng mga byte na maaaring maipadala sa isang network o nakaimbak sa isang disk na muling pagsasaayos at ginamit ng isa pang programa. Ang Serialization ay maaari ring magamit upang mai -save ang estado ng isang bagay upang maaari itong mai -reload sa ibang pagkakataon sa pamamagitan ng parehong programa. Ang isang mas kumplikadong paggamit ng pagpapaandar na ito ay upang mag -imbita ng isang Remote Procedure Call (RPC), epektibong nagpapatakbo ng isang pamamaraan sa isa pang computer sa pamamagitan ng isang network. Ang mekanismong ito ay nagbibigay -daan din para sa pamamahagi ng mga bagay ng data sa isang malaking sistema ng network.Magagamit ang library upang idagdag ang pag -andar na ito. Kapag ang isang bagay ay nai -serialize, ang lahat ng mga patlang ng bagay ay na -flatten.Isang one-dimensional na hilera ng mga byte na maaaring isulat sa anumang output stream.Ang uri ng stream ng output ay hindi mahalaga at maaaring maging isang file o isang socket ng network.Ang byte stream ay nagpapanumbalik ng lahat ng impormasyon at inilalagay ito sa isang bagong halimbawa ng orihinal na bagay, na lumilikha ng isang eksaktong kopya. Mahalagang maunawaan na ang data lamang na hawak ng bagay ay marshaled;Ang bagay at ang mga pamamaraan nito at iba pang data ng pagpapatupad ay hindi. Nangangahulugan ito na ang programa na deserialize ang data ay dapat na lumikha ng isang halimbawa ng klase na orihinal na serialized.

Ang istraktura ng data ay maaaring magamitPara sa iba't ibang mga layunin. Ang impormasyon ng object ay maaaring maiimbak sa pisikal na media upang ang eksaktong estado ng bawat bagay ay maaaring maibalik sa puntong ito ay kung kailan tumigil ang pagpapatupad ng programa. Maaari itong magamit upang magpadala ng mga mensahe sa ibang computer naay magiging sanhi ng isang malayong pamamaraan upang tumakbo. Ang serialization ay maaaring magamit upang mahusay na ihambing ang mga pagbabago ng estado sa mga aplikasyon ng real time.

Bago gamitin ang serialization ng object, mahalagang maunawaan ang ilan sa mga limitasyon na ipinataw nito. Ang pinakaMahalaga na, sa pamamagitan ng proseso ng pag -convert ng isang bagay sa isang byte stream, ang mga patlang na ipinahayag bilang pribado ay malantad. Sa panahon ng paghahatid ng stream, ang data na ito ay maaaring makuha at mai -decode, na nagtatanghal ng aSecurity Hole. Karamihan sa LanguPinapayagan ng mga edad para sa externalization ng mga format ng serialization ng data kaya posible ang pag -encode ng pagmamay -ari upang makatulong na mabawasan ang peligro na ito.ay eksaktong kapareho ng serialized object. Kung ang mga bagong patlang o pamamaraan ay idinagdag sa isang bagay, kung gayon ang lagda ng bagay ay magbabago. Ito ay nangangahulugang ang nakaimbak na bagay aymaging sanhi ng isang pagbubukod at ang data ay magiging hindi mababawi hanggang sa isang halimbawa ng orihinal na hindi binagong bagay na pagtatangka upang maibalik ito.