uCube - mobilní aplikace pro speedcubing
uCube - speedcubing mobile application
bachelor thesis (DEFENDED)

View/ Open
Permanent link
http://hdl.handle.net/20.500.11956/119422Identifiers
Study Information System: 224045
Collections
- Kvalifikační práce [10130]
Author
Advisor
Referee
Kofroň, Jan
Faculty / Institute
Faculty of Mathematics and Physics
Discipline
Programming and Software Systems
Department
Department of Distributed and Dependable Systems
Date of defense
7. 7. 2020
Publisher
Univerzita Karlova, Matematicko-fyzikální fakultaLanguage
Czech
Grade
Excellent
Keywords (Czech)
Speedcubing Kociemba Xamarin.Forms Android MEFKeywords (English)
Speedcubing Kociemba Xamarin.Forms Android MEFCílem této práce je vytvořit mobilní aplikaci pro speedcubery, která by obsahovala několik oddělených základních pomůcek k tréninku, ale současně by umožňovala budoucí rozšíření o nové komponenty. Chtěli bychom také výhledově dosáhnout portability na různé cílové platformy. S využitím frameworku Xamarin.Forms jsme implementovali aplikaci pro systém An- droid a paralelně také experimentální verzi pro systém Windows, jejímž smyslem bylo ujistit se o slibované portabilitě, kterou jsme tímto ověřili. Návrh aplikace navíc díky po- užití MEF umožňuje snadnou rozšiřitelnost o nové komponenty pouhým přidáním nového kódu a nevyžaduje modifikaci samotného jádra aplikace. Výsledná aplikace umožňuje uživatelům měřit délku řešení hlavolamu pomocí speci- álního timeru s možností odpočtu inspekce, ukládá naměřené časy a zobrazuje je v pře- hledné tabulce a v grafu. Poskytuje také metronom s možným měřením počtu tiků mezi dvěma okamžiky a jejich ukládáním. Dále zobrazuje přehledy osobních rekordů a umož- ňuje uživateli zobrazit seznam nadcházejících soutěží podle různých kritérií. V aplikaci podporujeme několik různých hlavolamů a pro všechny je k dispozici generátor scram- blů. Pro 2×2×2 je navíc dostupný random state generátor, který využívá zjednodušený Kociembův algoritmus pro nalezení optimálního řešení náhodného stavu. 1
The goal of this thesis is to create a mobile phone application for speedcubers, which would contain several separate basic training tools, but would also allow future extension with new components. We would also like to achieve portability to various target platforms in the future. Using the Xamarin.Forms framework, we implemented an application for the Android system and, in parallel, an experimental version for the Windows system, the purpose of which was to make sure of the promised portability. In addition, by using MEF, the de- sign of the application allows easy extensibility with new components by simply adding new code and does not require modification of the application core itself. The resulting application allows users to measure duration of a puzzle solve using a special timer with possibility to enable an inspection countdown, saves the measured times and displays them in a comprehensible table and graph. It also provides a met- ronome with an option to measure number of ticks between two moments and to store them. Furthermore, it displays personal records and allows the user to search for up- coming competitions according to various criteria. We support several different puzzles in the application and a scramble generator is available for each of them. In addition, we provide a random state...