Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kako v projekt vključim šah z mvvmcross


Kako v projekt vključim šah z mvvmcross


Vključevanje šahovske igre z MVVMcross vključuje več korakov, vključno z nastavitvijo okvira MVVMcross, oblikovanjem logike šahovske igre in izvajanjem uporabniškega vmesnika. Tu je podroben vodnik, kako to doseči:

1. korak: Nastavitev mvvmcross

Najprej morate nastaviti projekt MVVMcross. To vključuje ustvarjanje osnovnega projekta, ki bo vseboval skupno kodo, kot so modeli in modeli ogledov, ter projekte, specifične za platformo za Android in iOS.

1. Ustvarite osrednji projekt: Ta projekt bo prenosna knjižnica razredov (PCL) ali .NET Standardna knjižnica. Vseboval bo vaše modele, modele in poslovno logiko.

2. Ustvarite projekte, specifične za platformo: Za Android in iOS ustvarite ločene projekte, ki bodo vsebovali uporabniški vmesnik in kodo, specifično za platformo.

3. Namestite pakete MVVMcross Nuget: Namestite pakete MVVMcross Nuget tako v jedro kot tudi platformo, specifične za platformo. To lahko storite s konzolo Manager Package Manager z ukazom `namestitveni paket mvvmcross` [3].

2. korak: Oblikovanje logike šahovske igre

Logika šahovske igre bo prebivala v osnovnem projektu. To vključuje pravila šaha, gibanja kosov in upravljanje države.

1. Ustvari šahove modele: določite razrede za šahovske koščke (npr. "Kos", "pawn", `Knight" itd.) In šahovska plošča (`Board`).

2. Izvedite logiko iger: Ustvarite servisni ali upravitelj razreda (`chessgamemanager`), ki obravnava logiko igre, kot so premikanje kosov, preverjanje za čekovnico in upravljanje zavojev.

3. Uporabite injekcijo odvisnosti: registrirajte `chessgamemanager" v vseblju MOC v razredu "App` osnovnega projekta, da bo dostopna v celotni aplikaciji [2].

Korak 3: Izvajanje uporabniškega vmesnika

Za uporabniški vmesnik boste ustvarili poglede v projektih, specifičnih za platformo.

1. Android Pogledi: V projektu Android ustvarite postavitve za šahovsko ploščo in koščke. Uporabite MVVMcrossove zmogljivosti za vezavo podatkov za vezavo elementov uporabniškega vmesnika na modele pogleda.

2. Pogledi iOS: Podobno v projektu iOS ustvarite poglede za šahovsko ploščo in koščke. Uporabite MVVMcrossovo vezavo za povezavo elementov uporabniškega vmesnika z modeli pogleda.

3. Skupna logika uporabniškega vmesnika: Če je mogoče, delite logiko uporabniškega vmesnika z uporabo xamarin.forms ali z ustvarjanjem kontrol po meri, ki jih je mogoče uporabiti na platformah.

KORAK 4: Vključevanje šahovske logike z mvvmcross

1. Ustvari modele ogledov šahov: v osnovnem projektu ustvarite modele pogleda (`chessviewModel`), ki sodelujejo s` chessgamemanager`. Ti modeli ogledov bodo izpostavili lastnosti in ukaze, na katere se lahko poveže uporabniški vmesnik.

2. Pomaknite med pogledi: Uporabite navigacijske funkcije MVVMCrossa, da se premikate med različnimi pogledi šahovske igre, na primer od glavnega menija do igralne plošče.

3. Parametri prehoda: Za prenos podatkov med modeli ogledov, kot je trenutno stanje igre [1], uporabite mehanizem za prenos podatkov MVVMcrossa.

Korak 5: Testiranje in uvajanje

1. Testiranje enot: Za pisanje testov za modele pogleda in logiko igre uporabite MVVMcrossove enote za preskuse.

2. Testiranje uporabniškega vmesnika: izvedite teste uporabniškega vmesnika na vsaki platformi, da zagotovite, da igra šaha deluje, kot je bilo pričakovano.

3. Namestite aplikacijo: Ko je vse preizkušeno in dela, aplikacijo namestite v ustrezne prodajalne aplikacij.

Če upoštevate te korake, lahko šahovsko igro integrirate z MVVMcross in tako uporabite svoje zmogljivosti med platformami za skupno rabo kode in logike med platformami Android in iOS.

Navedbe:
[1] https://www.packtpub.com/en-us/learning/how-to-tutorials/sharing-mvvmcross
[2] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-and-setup
[3] https://github.com/mvvmcross/mvvmcross
[4] https://stackoverflow.com/questions/50111506/how-do-i-pecify-to-use-view-from-shared-project-in-mvvmcross-6-0
[5] https://leaware.com/creating-cross-platform-xamarin-applications-using-the-mvvmcross-framework/
[6] https://www.chessnutech.com
[7] https://www.mvvmcross.com/documentation/getting-started/getting-start
[8] http://squareoffnow.com