CZ: Výsledkem projektu, na kterém jsem pracoval v rámci předmětu Vývoj aplikací v objektovém programování, je mobilní aplikace, která by měla nahradit papírový potápěčský logbook.

Potápěči, především ti začínající, by si měli vést záznamy o svých ponorech. Po završení kurzu dostávají malou knížečku, potápěčský deník, do kterého by si měli psát jednoduchý a krátký záznam o každém svém ponoru. Důvodem vzniku aplikace a i důvod výběru právě tohoto tématu je, že jsem si často na své potápěčské výlety tento deník zapomínal doma. Pokud se jednalo o vícedenní potápění, mnohé detaily o jednotlivých ponorech jsem zapomínal. Nezbývalo nic jiného než si psát poznámky na kusy papíru nebo do poznámek v mobilu. Na to, že jsem si něco takového napsal, jsem si často vzpomněl až po měsíci, kdy jsem na tu poznámku náhodou narazil. Proto jsem chtěl mít možnost zapsat si data ucelenou formou do mobilu a vědět kde ta data najdu. Řešením byla právě vzniklá aplikace.

foto-diversLogBook2

Asi největším problémem byly mé malé a nedostatečné znalosti o samotném vývoji a o způsobu používání jednotlivých elementů jako například listview a gridview. Drtivá většina času stráveného při tvorbě tak připadá vyhledávání návodů, tutoriálů a vysvětlení, jak funguje ta či ona věc, kterou jsem chtěl zrovna použít. Jak vytvořit gridview o 9 položkách? Jak do každé této položky vložit vlastní layout s texty a ikonami? Jak vyplnit jednotlivé položky daty z databáze? Takové a další stovky podobných otázek bylo potřeba vyřešit, respektive najít jejich řešení.

Na samotném vývoji aplikace mě překvapilo, že jsem nemusel příliš řešit logiku. Nebylo potřeba vymýšlet nic složitějšího. Celý vývoj na Android je spíše o tom vědět, jak se který element používá, jak do něj dostat data a jak data zobrazit. Na to jsou už připravené celky, jako adaptéry, které se jen celkem jednoduše implementují. Jenže se o nich člověk musí nejprve dozvědět.

Aplikaci jsem psal v prostředí Android Studio, které bylo zprvu velmi nestabilní. Vývoj trval několik týdnů přerušované práce, během kterých vyšel update, který stabilitu podstatně zlepšil a až na občasné restartování programu probíhal vývoj celkem bez problémů.

Na tomto malém projektu jsem se naučil spoustu nových věcí o Androidu a to o samotném systému tak i o tom, jak fungují aplikace na něm. Co se výsledku týče, tak jsem celkem spokojený. Jedná se o mou první mobilní aplikaci, a tudíž jsem spíše zkoušel, než dělal. Nicméně zkoušením se člověk naučí nejvíc. Nejvíce se mi ale líbí to, že jsem ani zdaleka nevyčerpal možnosti, které by tento logbook mohl nabízet a můžu ho dál rozšiřovat a dál se učit.

 

EN: The result of the project I have been working on during the subject (Vývoj aplikací v objektovém programování) Developing applications in object programming is a mobile app, which should replace paper logbook for divers. Every diver, especially those who only just began, should keep records about their dives. After they have finished their diving course, they are given a small book, a diver’s logbook, in which they write short and brief log about each dive. The reason for developing this app and picking this topic was my frequent forgetting the logbook at home. If it was a multiday diving trip, I kept forgetting about many details. I was left with no choice but to write it all down on pieces of paper or in my cellphone, and sometimes remembered about my notes after a month or so, when I accidentaly found it. That is why I wanted to write down the data in a comprehensive form in my cellphone and always know where to find it. The solution was the app.

The biggest problem was lack of my knowledge in development itself and the way some elements, such as listview or gridview, are used. The overwhelming majority of my time was spent on guides, tutriials and explanations of how this or that is used. How to create a gridview of 9 elements? How to add my own layout with text and icons? How to fill the elements with data from a database? These and hundreds more problems needed to be solved and I needed to find the solution.

I was very surprised that during the development, there was very little need for logic. I did not need to think up anything elaborate. All the development for Android is about knowing how to use each element, how to get the data into it and how to display it. There are adapters prepared, which are implemented quite easily, but one needs to learn they existed in the first place.

I developed my app in Android Studio, which was quite unstable at first. It took several weeks of discontinuous work, during which an update was released, which improved the stability greatly and except for and occasional restarting of the program the development went smoothly.

I learned a lot about Android both in the way of the system and the apps that run on it. As far as theresult goes, I am fairly satisfied. It is my first mobile app, so the development was really about trying than actually doing However, this trial or error approach is often the best way to learn. What I enjoyed the most was the fact that I did not even come close to running out of options to upgrade and enrich my logbook.

Android app (.apk file)

Author: Hodáň