Programmēšana

Veidojiet MVVM lietojumprogrammas, izmantojot Windows kopienas rīkkomplektu

Korporācija Microsoft vienmēr ir bijusi laba sadarbībā ar izstrādātājiem jau no pirmajām dienām kā valodas pārdevēja. Tās programma gadu gaitā ir attīstījusies, sākot no augšpuses uz leju, Redmonda virzītas pieejas, kas sasniedza maksimumu ar parastajiem dokumentācijas MSDN DVD diskiem, līdz šodienas kopienas programmai, kas apvīta Microsoft Docs, Microsoft Learn, Azure Developer Advocates globālā komanda, un arvien pieaugošs rīku un ietvaru kopums, kas izstrādāts vietnē GitHub.

Windows kopienas rīkkopa: .NET sākuma komplekts

Sadarbība ar sabiedrību ir devusi interesantus rezultātus ar precīzāku un savlaicīgāku dokumentāciju, izmantojot GitHub, lai pārvaldītu saturu, un virkni kopienas vadītu atvērtā koda projektu. Viens no svarīgākajiem projektiem ir Windows kopienas rīkkopa, virkne funkciju, vadības un pakalpojumu .NET un UWP lietojumprogrammām. Tas ir projekts, kas kļūs vēl svarīgāks, pārejot no vecākās .NET Framework uz .NET Core balstīto .NET 5 un izlaižot gan Project Reunion, gan starpplatformu Multiplatform App UI (MAUI) ietvaru.

Windows kopienas rīkkopa nav monolīta vienība, kas jāpiegādā kopā ar lietojumprogrammām. Tas ir NuGet pakotņu komplekts, lai jūs varētu izvēlēties un izvēlēties nepieciešamo, minimizējot jebkuru kodu un bibliotēkas pieskaitāmo summu. Ja jūs veidojat modernas Windows .NET lietojumprogrammas, ir vērts to apskatīt, jo tajā ir daudz svarīgu XAML vadīklu, kas var palīdzēt nodrošināt izskatīgu un lietotājam draudzīgu lietojumprogrammu. Citi noderīgi rīki ietver palīgu kopu lietojumprogrammu veiktspējas uzlabošanai, kopīgu datu formātu parsatoru komplektu, ieskaitot Markdown, un koda kodu, kas nepieciešams Windows 10 paziņojumu ietvara atbalstam.

MVVM pievienošana rīkkopa

Viens no jaunākajiem rīkkopas papildinājumiem ir jauna bibliotēka lietojumprogrammu veidošanai, izmantojot MVVM dizaina modeli. Modeļa skata-skata modelis ir topošā MAUI ietvara pamatā, un, lai tas būtu veiksmīgs, .NET ir nepieciešama laba un ātra ieviešana. Rezultāts ir salīdzinoši viegls MVVM rīku komplekts, kā arī koda parauga kopa.

Jaunajā MVVM Windows kopienas rīkkopa ieviešanā daudz kas patīk. Varbūt visnoderīgākais ir tas, ka tā ir veiktspējas uzlabošanas kārtība salīdzinājumā ar salīdzināmiem .NET MVVM rīkiem, kā pagājušās nedēļas prezentācijā UnoConf norādīja tās līdzautors Maikls Hokers, Microsoft Microsoft Windows kopumu komplekta vadītājs. Šis uzlabojums būs kritisks MAUI lietojumprogrammām, it īpaši, ja mērķauditorija tiek atlasīta mobilajās platformās, piemēram, Android un iOS. Iespējams, ka tam nav visu smagā svara alternatīvu iezīmju, taču lielākoties tā ir ideāla izvēle, un, tā kā daži no alternatīvajiem .NET MVVM rīkiem vairs netiek izstrādāti, ir vērts to apskatīt.

Padariet savu lietotāja interfeisu orientētu uz notikumiem

MVVM dizaina modelis ir paredzēts, lai atbalstītu uz notikumiem balstītas lietotāja saskarnes. Tās pamatā ir modelis, kas darbojas kā saskarne starp jūsu lietojumprogrammu un jebkuru aizmugures biznesa loģiku vai datiem. Jūsu lietotāja interfeiss tiek ieviests ar skatu, līdzīgi kā pazīstamais MVC (modeļa skata kontrollera) modelis. MVVM atšķiras no citiem līdzīgiem dizaina modeļiem ar savu skatu modeli, kas saista datu saistījumus skatā ar modeļa datiem, nodrošinot veidu, kā attēlot viena stāvokli otram.

Jūsu skata modeļa kods apstrādā ieejas un izejas no skata un no tā, izmantojot standarta XAML datu saistīšanu ar vadīklām. Mērķis šeit ir pēc iespējas samazināt kodu skatā, lai dizaineri varētu koncentrēties uz lietotāju pieredzes radīšanu, kamēr izstrādātāji strādā pie aizmugures koda un uz skata stāvokļa skatu stāvokļa apstrādes, izmantojot skatu modeli. Ieviešot skatu un modeli, jūs varat koncentrēties uz lietojumprogrammu loģiku, izmantojot prototipa vadīklas, pirms pārslēdzat galīgo dizainu, neietekmējot kodu, kas rakstīts lietojumprogrammas izstrādes laikā.

Sāciet ar Microsoft.MVVM.Toolkit

Jaunā MVVM rīkkopa kods ir ļoti jauns, taču tas ir pietiekami nobriedis, lai atbalstītu lietojumprogrammu prototipu izstrādi. Varbūt vislielākā problēma ir tā, ka Microsoft Docs vietnē vēl nav dokumentācijas par Microsoft.Toolkit.MVVM, lai gan nedaudz meklējot, tiks atrasts sākotnējais dokumentācijas posms GitHub.

Tāpat kā pārējo Windows kopienas rīkkopa, MVVM rīkkopa tiek instalēta no Nuget krātuves. Tā kā to iedvesmoja tagad novecojis MVVMLight, pārejai no vecākā rīkkopas uz Windows kopienas rīkkomplektu nevajadzētu būt pārāk sarežģītai.

Sāciet, lejupielādējot MVVM Toolkit priekšskatījuma laidienu no Nuget un instalējot to savā lietojumprogrammā Visual Studio. Tas radīs visas atkarības un izveidos sistēmu, kuru varat izmantot, lai sāktu veidot MVVM lietojumprogrammu.

Zem pārsega: darbojas paziņojumu sistēma

Sirds centrā MVVM ir uz ziņojumapmaiņu balstīta arhitektūra, kas uzrauga notikumus gan no modeļa, gan skata, nosūtot asinhronus paziņojumus starp abiem, izmantojot skatu modeli. Jums būs jāiepazīstas ar pamata bāzes klasēm, kas kontrolē to, kā skata modelis reaģē uz mainītajām īpašībām pamatā esošajā modelī. Kad novērojamais objekts modelī maina stāvokli, skata modelis izvirza atbilstošu paziņojumu un to izmanto, lai notikuma ziņojumu piegādātu saistošā veidā skata UI vadīklai.

Atslēga MVVM rīkkopa darbībai un tā būtisko veiktspējas uzlabojumu cēlonis salīdzinājumā ar citām .NET MVVM ieviešanām ir tā Messenger klase. Šādi jūs saistāt dažādus MVVM lietojumprogrammas elementus, ieviešot un reģistrējot ziņojumu apstrādātājus. Jūs to varat uzskatīt par vienkāršotu publicēšanas un abonēšanas sistēmu, kas piedāvā tikai modeļa un skata pakalpojumus. Saņēmēji un sūtītāji ir jāreģistrē un jāreģistrē, ja tie vairs nav vajadzīgi. Piemēram, ja tērzēšanas lietotnes darbināšanai izmantojat MVVM rīkkopa un kāds konkrēts lietotājs atsakās, jums ir jāatreģistrē šī lietotne, lai novērstu atmiņas noplūdi.

Projektēšana MVVM

Ir daudz jēgas, ja modeļa skatā ir publicēts un abonēts modelis. Tas ļauj jums pārliecināties, ka visas jūsu vadības saites ir saistītas ar ziņojumu galapunktiem, dodot jums iespēju programmatiski izveidot kartējumus, kas nepieciešami, lai saistītu skatu un modeli tādā veidā, kas būtu mērogojams starp vairākiem skatiem un vairākiem modeļiem.

Šādi atdalot skatu un modeli, tiek vienkāršota visas lietojumprogrammas struktūra, it īpaši, ja uzskatāt, ka XAML skatā dodaties no deklaratīvā programmēšanas modeļa uz modeli un uz objektu orientētu pieeju. Izmantojot ziņojumapmaiņas skatu modeli kā tulkošanas slāni starp šiem diviem ļoti atšķirīgajiem programmēšanas veidiem, tiek samazināts risks un jūsu skatiem nepieciešamais koda daudzums tiek samazināts līdz minimumam. Pirms jebkura koda rakstīšanas pārliecinieties, ka lietojumprogrammas noformējumā ir detalizēti iekļauti šie kartējumi un sasaistes, kā arī ziņojumi, kurus tie nes, jo tie ir jūsu iekšējie API visai integrācijai starp priekšējo un aizmugurējo daļu.

.NET kopienas darbs pie Windows kopienas rīkkopa ir svarīgs platformas nākotnei. Notiek ievērojamas izmaiņas (pāreja uz .NET 5, SDK un Windows atdalīšana Project Reunion un starpplatformu lietotāja saskarnes modelis MAUI), kam ir atsauces vadīklas un funkcijas, kļūst arvien svarīgāka. Jūs varat izvēlēties un izvēlēties elementus, kurus vēlaties palielināt .NET ceļojumā. MVVM rīkkopa var būt viena no jaunākajām komplekta daļām, taču, visticamāk, tā kļūs par vienu no vissvarīgākajām.