MVVMcrossi puhul kasutatakse andmete sidumiseks nii sujuvaid kui ka Šveitsi/Tiibeti sidumisi, kuid nende lähenemisviisi ja kasutamise poolest erinevad need. Kuigi nende kahte tüüpi köidete erinevuste kohta pole selget teavet, saame nende omadusi analüüsida, et mõista võimalikke tagajärgi:
Sujuvad köited
Sujuvad köited on C#-põhine süntaks, mis võimaldab arendajatel luua koodis köiteid. See lähenemisviis on eriti kasulik sellistes platvormides nagu iOS ja OSX, kus XML-i paigutusfailid ei ole kergesti inimese eraldatavad. Sujuvad köited pakuvad tüübi ohutut viisi omaduste sidumiseks, mis aitab vähendada tööaja vigu, püüdes kompileerimise ajal tüüpi ebakõlasid. Kuna need on kood määratletud, võivad nad nõuda koodide hoolduse osas rohkem üldkulusid, võrreldes deklaratiivsete köidetega nagu Šveitsi/Tiibet.Šveitsi/Tiibeti köited
Šveitsi ja Tiibeti köited on deklaratiivsed, mis tähendab, et need on määratletud XML -i või stringi vormingutes. Need köited on kokkuvõtlikumad ja neid saab hõlpsalt manustada paigutusfailidesse. Eelkõige Tiibeti sidumissüntaks pakub rikkalikumat ekspressioonikeelt, millel on funktsioonid nagu funktsioonilaadne väärtusmuunduri helistamine, mitme sidumise ja lihtsa operaatori süntaks. See deklaratiivne lähenemisviis võib olla koodide loetavuse ja hooldatavuse osas tõhusam, kuna köited on paigutusfailides selgelt nähtavad.jõudluse kaalutlused
Kuigi puuduvad andmed jõudluse erinevuste kohta sujuva ja Šveitsi/Tiibeti seondumiste vahel, võivad tulemuslikkuse mõjutada järgmised tegurid:-Kompileerimisaja vs käitusaja eraldusvõime: üldiselt võivad kompileerimisajal lahendatavad köitlused (nagu mõned sujuvad köited, mis on tingitud nende tüübist ohutusest), võrreldes käitusaja eraldusvõimega võrreldes paremat jõudlust. MVVMCROSS -i köited lahendatakse tavaliselt tööajal.
- Peegelduse pea kohal: nii sujuvad kui ka Šveitsi/Tiibeti köited kasutavad oma atribuutide nimede lahendamiseks tõenäoliselt peegeldust. Sujuvatel sidumistel võib nende tüüpi ohutu olemuse tõttu siiski olla väike eelis, vähendades tööajal ulatusliku peegelduse vajadust.
- Sidumisvaldkondade keerukus: Tiibeti seondumised võimaldavad keerukamaid väljendeid, mis võivad nende väljendite parsimise ja hindamise tõttu potentsiaalselt lisada täiendavaid üldkulusid. Kuid see keerukus pakub ka võimsamaid andmete sidumisvõimalusi.
Kokkuvõtlikult võib öelda, et kuigi MVVMcrossis sujuvaid ja Šveitsi/Tiibeti seondumisi võrreldakse selgesõnalisi tulemusnäitajaid, võivad sujuvad seondumised pakkuda väikeseid eeliseid nende tüübi ohutu olemuse ja käitusaja peegelduse võimaliku vähenemise tõttu. Kuid Šveitsi/Tiibeti köidete deklaratiivne olemus võib parandada koodide loetavust ja hooldatavust, mis võib kaudselt mõjutada arengu tõhusust ja rakenduste üldist jõudlust, vähendades vigu ja parandades koodi kvaliteeti. Lõppkokkuvõttes peaks nende sidumismeetodite vaheline valik põhinema projekti konkreetsetel vajadustel, näiteks kasutajaliidese keerukusel, suunatud platvormil ja koodipõhiste ja deklaratiivsete köidete eelistamisel.
Tsitaadid:[1] http://slodge.blogspot.com/2013/06/tibet-binding.html
[2] https://github.com/mvvmcross/mvvmcross/issues/1342
]
[4] https://blog.ostebaronen.dk/2018/01/mvvmcross-binding-target.html
]
]
[7] https://www.mvvmcross.com/documentation/fundamentals/data-binding
]
[9] https://www.mvvmcross.com/documentation/fundamentals/value-onverters
]