A teljes másolatát a tárgy - verem túlcsordulás az orosz
Továbbá a tulajdonságok az objektum tárolható váratlan helyeken. Például csatolt tulajdonságok tárolják egy helyen nem hozzáférhető gondolkodás, amelynek egy példányát a tárgy, és nem tudta, semmi többet.
Mivel a szülő / Children kérhető gyökér elem, majd az összes elemet, akkor a klón az egész ablakot. Mivel DataContext keresztül érhető el a virtuális gépre, majd ugyanabban az időben van, hogy prohvatit és az ő. És mert vannak linkek VM modell, akkor így lesz velük az egész alkalmazást. Beleértve, mellesleg, a mező, amely tárolja a változás történetében.
Aztán ott van egy sor olyan tárgyak, amelyek alapvetően nem klónozták. Nyisd meg a fájlt? Socket? Zalochenny Monitor (aka zár)? A dobott kivétel? Bármilyen Singleton a programból? Típusát. Delegálása? mindannyian skloniruyutsya.
Mi valóban szükség van. Meg kell, hogy képviselje az állam a program vagy annak részeit a VM- és a modell objektumokat. Ha azt szeretnénk, hogy megmentse őket, akkor van értelme, hogy ezek a tárgyak immutabelnymi, hogy nem volt a kockázata, hogy az állapotuk fog változni, miután mentett egy példányt. (Foglalkozik a megváltoztathatatlan-objektumokat, azok könnyen írni, úgy, hogy ha megváltoztatja a forrás objektum darabokat újra. Ha az összes darab megváltoztathatatlan, azokat bárhol használható anélkül, hogy a klónozás ugyanúgy.)
Ezután a nézet kell szigorúan követik a MVVM mintát, és megjeleníti az állapotát a VM nélkül ad-libbing és telepíti a fontos darab a kód mögött. Ugyanakkor az állapotát a nézet lesz teljesen határozza meg az állam a VM, ezért kell emlékezni megtekintése eltűnik.
Ebben az esetben az egyetlen tárgy, amit meg kell emlékezni (nem klónozott, nevezetesen, hogy emlékszem!) - az aktuális állapotot.