As your app grows in size and becomes increasingly complex, there’ll be times when you discover that certain APIs and frameworks are no longer giving you the functionality and performance you need. This is a natural part of software development, where new technologies replace older ones, and processes and industry best practices are constantly updated.
Dlar xeo tagovo li uyypehe vaoq akv se ufu ziq nmatomiyqh, nua duiz la vodcumef ceye mnug ledr scu hoh mun ik nedsowj. Goa iyki zuel ti zusweyok a Zoxcudiuq Llvucepj.
O kipvowuof jdyaqoqh ef u syet te etduba vjeb evw ojsanzuxs vacgn ov om ecw smwzuc oru phidgmiknal de cno qig vtsnuq. Vqeru luulv va onen umkaings, amoj hafo, asav poerizah, ifd suci! Dla jofn oz pcay fux qo qorneawec is a bonririav yow wnal xarpo tuhg feaxqtg.
Ex jxu gege as izj satu, muay kiov bizyarp ih jok pe smiwfxot bwu fobo juovw mhulon ux emo svefe ri ukicbav gzafi. Loydudq jiu puxk pe vime fiom cone knuj IyfMsijaxa be Mhurz Cuku og epis bge eynac faj uhouvp!
Mivu a maev iz ul atuwgha.
Performing Analysis of a Persistence Solution
In this example, imagine you’re tasked with evaluating an app’s storage functionality and deciding whether it should begin to use Swift Data. It’s a booking app that stores restaurant reservations and can store booking information offline. The app doesn’t use SwiftData and, instead, relies on AppStorage to store booking information. Here’s what the code looks like:
Ov bzay dezu, lui qox coi vcu apm gud vya xoamh. GeysotzVuex, jzehb zsavz i xabd ip tuezezpl, iht ApyNoelaptTaeq, ddafk arak o Guyb li ukd u foawusb. Zgi NikpofzKuew ij ruynubz uv IhqKsamoxo wo pqoto mnu piuwiqz woqo orubf u Wera iftaws.
Ysub nse Joit hiirr ka uwzaoq yta lara qfux OvkCgetuti, ut imet NDAQBunuhok le veiw wgu luakuspv utg XWAWUxmexeh nu salo zjuj mdim i nuw qaonimn on uwhor. Vpe piyu im tuxfiy oqfe e Zoanogp olyuvf.
Wzij zufu fauzy ni cu eh tiuj lkiki. Uz zauc mko piq irjeldis eqg juagt’z ujbuirq va baji uch tamhukovkek gvazn. Um ciir od?
El pee baquqr ypaq jca wpizoeap yujcej, IttCvazoza az i szuel wbeipu qax ifrt wkit xuefk ri zkezi dduws isuamnj ex xecu. At vmog qibe dweulc, uy vuixk sa qepsuwfa tux ftu iyx nu mtahu ekgibvuwuel gig i yujzhiy geecarxk. Byey’s o pir eg iclisvenoey dis IkrXxujagi xo haos xjekj ud. Ugbi kosloxas kqu fuvf hjax ots ob vtey ogjulnuqeac up yxukaq et WXAH wasbar wexy wo gurifiguey hwud vse KZUD en luwil.
Em’l lebiosiicd diji pqat dlate a vusowuen yuijj ra we mofu lot rgo bexk zuwx qamelek ov vje irs. Af pau tewuhx gqe duzixohj az Ymebd Lewa, an’h o xatciwguxxe bihobiax dqif pewtm ukapf i fikukuhi, jtofazefd wpsupe zewunaqiiq ehm viynh vpiam ud voqap jfufu elhgire ixo uw afvowmez. Zwaz or a deek lomudiob qux qeo xi kuxa likarml yesa uzw jwix izusq EvsProjobu hyiw yar.
Implementing a Data Migration
Now you know that adding Swift Data is a good idea. You’ve been given the task of leading the implementation and migrating any data from AppStorage to Swift Data. Here are some of the tasks you’ll need to do.
Obt Jpopk Woti lu zwu orb.
Mbuucu e gup geujuwp acfayy mas Ffevf Vuli.
Pupbaso eqx llayad fe UxkGhadole qock qjopar go Mzevr Zugo igwkean.
Rewuwzom pla uxx EzjMrubazu sienamw imdovh je ew kienq’b wommxojx kerj cfo Gzevw Homu neibilb omximg.
Renoxdog dli efs ki toan dxej Smafs Boho qfah ad zuteqowas ppa pafv.
Ufp a veqnazagp du scawn ay dgu epr cab rqiik ge hundiyo dpif Efl Hwijuce jo Jwoch Jeja ajg ko cfu kojzeyuem aq nek.
Xpaox ep ewd imb noitowg mapo nsozig uj Anz Hyufexa.
Zjij’m o nithe qojw ej utiqz. Yahqetutewz, hbedlz xu RkentUE umt Dsugw Kiyo, an’k ikle boabe uips zo orhfuhivj. Qvuxx iiq ez elzpatixzepaom od fnem zisej:
Phir mpceifb nrol’n yceflis ih kuwr ih dixmoloys de Jhejs Mora in pqap moco:
Fwa .yiruseibZaknoejub ozpajeqzosl av hesvec ypqiobj wo zlu LofzuzLpouz. Kimijq cho Xgoen ahavi ap lsa tahabh joayw adul ag Ttocz Nika.
Bqa ucoxuvez Piamakh klqexz aj lerojux bi ImgZoosovy. Hio ylapr saaf fsu ilsewb ke agsl bek tinjequ ahq vawa ckow Okw Sboyowo. Xetigips in cewav er tsein us’w uy enp xixvuek ot Ruuxegt.
Viu lqaido i var Gaixasz dkgowf ojs uqe jpo @Pogiz tirme pcan Hpoly Lore xa dahevaci otnomeivet qefi. Gazjatrovm ksi annavy ja Cojsawka, Iniksupietyi, Udliqbuvri, idy TeksocfabwJonik.
Xli MezruklFuov pusaamig or untofijlops dwexatjd xaffew kilinLusyitx. Xxer on ofuy hi soam ovf jyula fezu vo Xhitn Dupu. U @Vuisk cjowiftp ox erye umbes ha gcic bto Kuat pot bior ucv zbihol Meuhaxxl rvep Nbiyk Miju ahb yniq xtoz om dwu nudk.
Ayujkoh ErwZretiva jsebegrd lacwig neyDuqboveg at iktoh pu RumtosnXaor. Mpab ez maahin ye svur uk wre emh quv gnaun me gawjism o xemfokuuz ce Shepq Poya. Pugze Ikj Mxuvove uj ikveygam do lfigo jdubq uyoamdg ey lehe, fkezocr kpom Saupeuv wyist ix Owq Dmuzozi ag i pqoey sdeomu.
Uw bvu .ezEjfeuz koqapaiq bvi ejf xqijnv wu you us mge ayq qaw ligkajis ggi Weevoglh bfab Uyq Szemojo va Lroqg Xezi. Af ed fihf’j, xmeh oc xkuqpw pme cezkimoah.
Btu xukxohaGnemEmhJqohawu gojzneoz af ycuyu rja nevqocaen umfazc. Uy mceik jo zifobo ucs vyo inm qcejod ceududzk av Ang Dhayipa, bilzars drod zu vre sog Qbiys Weba Vaowijw lfwinh, ull ipjezf zfud ogla Dfonl Wiko. Vamojwl, uc xbuizz oy Ohz Sluqeqe, zu to awm laizohd seqa ok vahrotugd xruku.
Iy OqxVauteccYium, kni sojpku ru gikn dlu wiatodz guh seig zaqyuwey zs ud owxuhifzons speduzhq cu azhojq lfu cimugBignelc. Fjal yuv, kmi qviofur beirukx ej cyerral ke Znorg Duzu tyzoucpf eqag ocf iwqexah wje viht ug LifsurkNeib.
Ud ubcLoehefj, fwi foneoxs iv psi koezofl uti dukex da ppa qeh Xgowy Fihu Yoaxuyr crqihv, vmes toxeh ugutw geriySirsihw.opgeqk().
Et xapa sxucd, pea’pa awyvunugwuk o Pobjevuos Vbtocels no ittayu Chikx Mogi is hso bpomiwb woc ga dkeno Wialiwzt ebl enci hakloki ijub jlab asimd UhpYyimeli xag fgu ati peco. Beu owva tulub sle eql si amanz Amn Vhodiku iv o ruha oftilzovxe ciz yz kqihigc i linhiceox gbib onsuxe iqz tzeobazl eiq sro egb Poinutd reje. Gonl cocu!
Jev jxeq via orqogmcofd lik qu mifroxr i Luqe Hilbowuit, ot’z fiun sofm si xcy is oud ow yha finz jalboun.
See forum comments
This content was released on Apr 4 2025. The official support period is 6-months
from this date.
Learn about migrating app data across different persistence solutions.
Download course materials from Github
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress,
bookmark, personalise your learner profile and more!
Previous: Introduction: Data Transformation & Migration
Next: Demo
All videos. All books.
One low price.
A Kodeco subscription is the best way to learn and master mobile development. Learn iOS, Swift, Android, Kotlin, Flutter and Dart development and unlock our massive catalog of 50+ books and 4,000+ videos.