MVVMCross „Mvvmcross“ tiek šveicarų, tiek sklandžiai duomenų bazės yra naudojamos rodiniams sujungti modelius, tačiau jie tarnauja šiek tiek skirtingiems tikslams ir jiems teikiama pirmenybė skirtinguose scenarijuose.
Šveicarijos duomenų bazė
„Swiss Databinding“ siūlo švaresnę ir mažiau žodžių sintaksę, palyginti su jo pirmtaku „JSON Databinding“. Tai ypač naudinga, kai reikia tiksliai apibrėžti įrišimus, dažnai tiesiogiai XML išdėstymo failuose. Šveicarijos įrišimus lengva perskaityti ir rašyti, todėl jie yra tinkami paprastoms, tiesioginėms įrišimams, kai sintaksė turi būti glausta ir suprantama.
Vienas konkretus scenarijus, kuriame gali būti teikiama pirmenybė šveicarų duomenų bazei, yra tada, kai reikia greitai nustatyti įrišimus XML failuose, ypač platformose, kuriose XML išdėstymai paprastai naudojami ir lengvai redaguojami, pavyzdžiui, „Android“. Tačiau Šveicarijos duomenų bazė aktyviai nežiūri pakeitimų iš „View“ modelio, nebent iš naujo nustatytas rišamojo šaltinis, o tai gali būti scenarijų apribojimas, reikalaujantis realaus laiko atnaujinimų.
FLUENT DATABINDING
Kita vertus, laisvas duomenų bazinis duomenys pateikia C#pagrįstą sintaksę, skirtą statyti įrišimus. Šis požiūris yra ypač naudingas aplinkoje, kurioje XML išdėstymai nėra lengvai valdomi žmonėms, pavyzdžiui, „iOS“ ir „MacOS“. Laisvos įrišimai leidžia sudaryti sudėtingesnes ir dinamiškesnes surišimo sąrankas, todėl jie yra idealūs scenarijams, kuriuose reikia programiškai manipuliuoti įrišimais arba tvarkyti sudėtingesnę logiką.
Pirmenybė teikiama laisvai duomenų bazei, kai reikia programiškai kurti įrišimus, kurie gali būti lankstesni ir galingesni, ypač sudėtingose programose arba dirbant su platformomis, kurios taip efektyviai nepalaiko XML išdėstymo.
pirmenybės scenarijai
- Pirmenybė teikiama Šveicarijos duomenų bazei, kai:
-Jums reikia paprastos, lengvai skaitomos įrišimo sintaksės, ypač XML failuose.
- Programai nereikia nuolat stebėti pakeitimų iš rodinio modelio.
- Jūs dirbate aplinkoje, kurioje XML išdėstymas lengvai redaguojamas.
- Pirmenybė teikiama laisvai duomenų bazei, kai:
- Turite programiškai kurti įrišimus, leidžiančius atlikti dinamiškesnes ir sudėtingesnes sąrankas.
- Jūs dirbate prie platformų, kuriose XML išdėstymai nėra lengvai redaguojami, pavyzdžiui, „iOS“.
- Programa reikalauja daugiau kontroliuoti įrišimo logiką arba reikia tvarkyti sudėtingus scenarijus.
Apibendrinant galima pasakyti, kad nors ir šveicarai, ir laisvai duomenų bazės turi stipriąsias puses, pasirinkimas tarp jų priklauso nuo konkrečių jūsų programos reikalavimų, įskaitant paprastumo ir sudėtingumo poreikį, ir nuo jūsų kuriamos platformos.
Citatos:[1] https://www.mvvmcross.com/documentation/fundamentals/data-dinding
[2] https://crosscuttingconcerns.com/mvvmcross-fluent-databinding
[3] https://stackoverflow.com/questions/41462365/what-are-the-pros-and-cons-of-android-data-binding
[4] https://stackoverflow.com/questions/60500840/should-view-inding-replace-data-Diding
[5] https://learn.microsoft.com/en-us/dotnet/desktop/wpf/data/?view=netdesktop-9.0
[6] https://www.phunware.com/android-cean-coding-prioruk/
[7] https://www.reddit.com/r/androiddev/comments/ux9379/what_are_the_use_cases_of_data_binding_and_when/
[8] https://jesseliberty.com/2022/02/01/advanced-databinding-part-0-basics/