Během posledních pár měsíců možná někteří z vás přemýšleli o tom, že by se naučili nějakou dovednost ze světa IT. Třeba je zrovna teď ta pravá chvíle nahlédnout pod pokličku toho, jak se tvoří webové a nebo mobilní aplikace?
Jednoduchý návod na vývoj aplikací bohužel nestačí. Důležitá je hlavně praxe, pro dobré ovládnutí technologie je třeba se vývoji dlouhodobě aktivně věnovat a sledovat novinky v oboru. Zároveň doporučuji si vymyslet nějakou vlastní aplikaci, na které se budete učit. Celý vývoj vás bude o to více bavit, protože na konci budete mít něco reálného. 🙂
Tak pojďme začít společně vyvíjet mobilní a webové aplikace!
Jak na mobilní a nebo webovou aplikaci?
Na začátku je třeba se rozhodnout, v jaké technologii danou aplikaci vyvinete. Proto je důležité si rozmyslet, zda chcete vytvořit pouze jednoduchou webovou stránku a nebo složitější webovou aplikaci třeba i s administrací. A nebo zda chcete vyvíjet mobilní aplikaci.
V dnešním článku rozeberu, jak je možné začít tvořit:
- Webové stránky pomocí HTML, CSS a JavaScriptu
- Webové aplikace (backendy a API) pomocí Ruby on Rails
- Mobilní aplikace pro Android
- Mobilní aplikace pro iOS
Vycházím z technologií, které v Juicymu používáme pro vývoj aplikací na denní bázi a pro které čas od času hledáme nové členy týmu. Technologií a jazyků, např. pro tvorbu webových aplikací, existuje mnoho, mobilní aplikace se dají též vytvářet pomocí multiplatformních řešení (neboli že s jedním kódem je možné vytvořit mobilní aplikaci pro obě platformy).
Zdroje, které zde najdete, budou převážně v angličtině, protože angličtina je primární jazyk pro programování.
Vývoj webových aplikací
Webové aplikace se rozdělují na frontend a backend. Vývoj webových frontendů můžete připodobnit k dělání všech těch krásných věcí, které jsou rovnou vidět ve webovém prohlížeči. Backend webové aplikace je ta velká magie na serveru, která není ve webovém prohlížeči na první pohled vidět, tvoří ale všechnu tu důležitou logiku na pozadí. Backend například zařídí to, že frontend dostane data z databáze na “stříbrném podnose” a může je vykreslit.
Vývoj webových frontendů
Webové frontendy se píši ve značkovacím jazyce HTML (to definuje strukturu stránky - například co je nadpis, co odstavec a co obrázek), stylují se pomocí CSS (to definuje, jak to celé bude vypadat - například nadpis bude mít velikost fontu 30px, bude tučně a modrou barvou písmem Montserrat).
A pak je tu magický jazyk JavaScript. JavaScript je skriptovací jazyk, se kterým se dá dělat spousta parády, dokáže výrazně oživit weby a vývoj moderních webových stránek a aplikací se bez něj už dnes neobejde.
Jak na HTML a CSS
Jedním z nejlepších zdrojů na naučení se HTML a CSS je web w3schools. Dále existuje spousta online kurzů jako je Intro to HTML and CSS na Udacity či třeba Learn HTML & CSS: How To Start Your Web Development Career na Udemy.
Jak na JavaScript
Pomocí JavaScriptu můžete psát jak jednoduché skripty na oživení stránky (něco se v nějakou chvíli vysune, schová, obarví atd.), tak programovat celé webové aplikace, který se postarají o získání dat ze serveru a vykreslení v prohlížeči (těmto aplikacím, které se vykreslují v prohlížeči říkáme SPA - z angl. Single Page Application).
Na JavaScript existuje též sekce na w3schools, nicméně tam najdete spíše velké základy. Pro zkušenější “fajnšmejkry” je velmi dobrý web MDN. Na JavaScript též existuje spousta online kurzů jako Intro to JavaScript na Udacity, Javascript Essentials na Udemy či interaktivní kurz Learn JavaScript na Codecademy.
Single page aplikace
Pomocí JavaScriptu je možné psát i celé (“single page”) aplikace, které získají data z backendu a samy je vykreslí v prohlížeči. Mezi nejznámější technologie patří Vue.js, React a nebo třeba Angular. O těchto technologiích napíši více v nějakém dalším pokračování tohoto článku.
Vývoj webových backendů
Backend běží na serveru a webové backendy se vyvíjí v celé řadě technologií. V Juicymu používáme technologii Ruby on Rails (neboli RoR), která nám umožňuje psát rychlé a škálovatelné webové aplikace i v menším týmu lidí. Programujete pak v jazyce Ruby a používáte framework (sadu nejrůznějších technologií, komponent, standardů, atd.) Rails. Výhodou jazyka Ruby je, že se velmi dobře učí. Ruby on Rails má skvělou komunitu i dokumentaci. Včetně úvodního tutoriálu, pomocí kterého si nový vývojář snadno osvojí, jak pomocí RoR začít vyvíjet webové aplikace. A to velmi rychle.
Jak na Ruby
Osvojit si jazyk Ruby můžete nejlépe pomocí oficiální dokumentace jazyka nebo si můžete projít interaktivním kurzem Learn Ruby na Codecademy.
Jak na Ruby on Rails
Abyste s jazykem Ruby mohli efektivně psát ty webové aplikace, potřebujete framework Ruby on Rails. Zde doporučuji oficiální Ruby on Rails tutoriál, který vás provede krok po kroku, jak psát v RoR webové aplikace. Nebo si můžete třeba projít kurzem Ruby on Rails a Beginners Guide na Udemy.
Vývoj mobilních aplikací
Mobilní vývoj obecně není vůbec jednoduchý, každý rok je na Androidu i iOSu spousta novinek a vylepšení. Stále je se co nového učit a prozkoumávat, některé věci zastarávají, a proto je třeba mobilní aplikaci i po vydání pravidelně aktualizovat.
Pro ty, které zajímá dělat aplikace pro zeleného robotka a jsou fanoušky Androidu, může být zajímavé si vyzkoušet napsat mobilní aplikaci pro Android. Nativní mobilní aplikace pro Android se dnes vyvíjí v programovacím jazyce Kotlin (ještě do nedávna se používal jazyk Java, v určitých případech se může hodit i C++).
Pro fanoušky a vlastníky jablečných zařízení může být zajímavé si vyzkoušet napsat mobilní aplikaci pro iPhone nebo iPad. Nevýhodou je, že abyste mohli vyvíjet iOS aplikace, tak potřebujete Mac. Mobilní aplikace pro iOS se vyvíjejí v jazyce Swift (dříve se používal jazyk Objective-C).
Vývoj mobilních aplikací pro Android
Jak na Kotlin
Jazyk Kotlin, ve kterém se vyvíjí Android aplikace, má skvělou dokumentaci, kde se dozvíte vše potřebné. V oficiální Android dokumentaci najdete též celou sekci věnovanou Kotlinu.
Jak na Android aplikace
A jak na vývoj Android aplikací? Existuje oficiální dokumentace, ta však může být na začátku hodně složitá. Doporučuji proto začít kurzem Developing Android Apps with Kotlin nebo Android Kotlin Developer na Udacity. V těchto kurzech je možné se naučit většinu věcí, které jsou pro základy vývoje Android aplikací potřeba.
Vývoj mobilních aplikací pro iOS
Jak na Swift
Ke Swiftu, ve kterém se vyvíjí iOS aplikace, existuje skvělá (a pravidelně aktualizovaná) online kniha o Swiftu přímo od společnosti Apple. Z ní se dozvíte vše potřebné o tomto jazyce.
Jak na iOS
Vývoj pro iOS má též oficiální dokumentaci, pro přístup je však nutné se zaregistrovat do vývojářského programu (na rozdíl od Androidu nemá dokumentaci veřejnou). Na Udacity je též kurz Intro to iOS App Development with Swift. Dalším skvělým zdrojem informací jsou články a kurzy na webu Raye Wenderlicha.
Závěrem
V dnešním článku jsem ukázala, jak se začít učit vyvíjet aplikace pro web a nebo pro mobilní telefony. Vývoj aplikací není jednoduchý, technologie se neustále vylepšují a posouvají, pro ovládnutí dané technologie je třeba se jí aktivně věnovat a sledovat novinky v oboru.
Není však nic krásnějšího, než mít v telefonu nebo na webu aplikaci, kterou jste sami vytvořili. 🙂
Do vývoje jaké aplikace se hodláte pustit? V případě jakýchkoliv dotazů či připomínek budu ráda, když mi napíšete na jana.moudra@juicymo.cz.
Těším se zase příště!
Jana