Photo by Christian Wiediger on Unsplash

Prečo je serverless skvelou voľbou pre vývoj vašej aplikácie a MVP?

Možno sa len zaujímate o vývoj mobilných aplikácií na Slovensku. Možno premýšľate nad tým, že by ste svoj biznis posunuli o krok napred. Možno ešte len máte nápad, ktorý chcete uviesť do reality.

Koniec koncov, je to jedno — o dôležitosti a výhodách serverless či React Native by mal vedieť každý (dobre, možno preháňame). V článku sa dozviete, prečo by ste si mali vybrať React Native a serverless pri vývoji vašej mobilnej aplikácie a tvorbe MVP.

Photo by Emile Perron on Unsplash

Neviete, čo je MVP?

Predstavte si situáciu: Dostali ste skvelý nápad, ktorý by ste chceli zrealizovať. Avšak, keď sa oň podelíte so svojimi známymi, vaša radosť rýchlo odíde. Zistili ste totiž, že ten nápad nie je až taký úžasný, ako ste sa domnievali.

Pri biznise to funguje rovnako. Chcete začať podnikať? Musíte získať odpoveď na otázku — bude o váš produkt naozaj záujem?

S týmto vám pomôže MVP — Minimum Viable Product. MVP je prototyp produktu so základnými funkciami, ktoré však stačia na to, aby upútali pozornosť používateľov. Jeho cieľom je získať spätnú väzbu a na jej základe upraviť váš produkt.

Dôležité je, aby vás získanie spätnej väzby stálo čo najmenej energie a prostriedkov. Pri vývoji mobilnej aplikácie je MVP kľúčová časť, aby klient neinvestoval priveľa do niečoho, čo by mohlo byť nakoniec zbytočné.

Photo by Roberto Cortese on Unsplash

Serverless, MVP a vývoj aplikácie

Povedali sme si, čo je to MVP a prečo je dôležitý pre váš biznis. Ako do toho zapadá serverless?

Ak ste sa s pojmom nikdy nestretli, v skratke: je to skupina techník, ktoré umožnia spustiť kód bez manažovanie serverov, či inej infraštruktúry. Šetrí to čas, energiu, peniaze a vaše nervy.Jasne by ho vystihovala otázka: “Akým najefektívnejším spôsobom získam biznisovú hodnotu môjho produktu?”

Určite chcete čo najkvalitnejší produkt za čo najmenej peňazí. Vďaka serverless to je možné.

Uveďme si niekoľko dôvodov:

  • Žiadne manažovanie serverov
  • Menej stráveného času = menšie výdavky
  • Platí sa len za to, čo sa naozaj využije
  • Automatické škálovanie
  • Rýchle deploymenty

Nakoľko pri serverless nemusí vývojár spravovať servery, výrazne to zľahčuje jeho prácu. Môže svoj čas využiť efektívnejšie. To skráti celý proces. Aplikácie so serverless infraštruktúrou sa automaticky prispôsobia počtu aktuálnych používateľov. Platí za preto len za to, čo sa naozaj využije. Ak aplikácia potrebuje upraviť alebo pridať funkciu, dá sa to spraviť rýchlo.

Photo by Daniel Korpai on Unsplash

AWS Amplify

AWS Amplify je náš obľúbenec pri vývoji aplikácií. Je to serverless framework, ktorý patrí pod Amazon Web Services.

Pýtate sa, čo je to framework?

Nástroj, ktorý poskytuje už hotové funkcie alebo riešenia, ktoré urýchlia vývoj. Tieto riešenia sú vopred overené a kvalitné. Jednoducho šetria čas a peniaze.

Amplify je teda jedným z frameworkov, ktorý namiesto vývojára spravuje server a backend infraštruktúry. V jeho knižniciach nájdeme množstvo vopred pripravených funkcií či UI komponentov. Je skvelou voľbou pri vytváraní MVP.

Cloud-native alebo Cloud-agnostic?

AWS Amplify je pre nás dôležitý aj kvôli cloud-native architektúre. Znamená to, že vytvárame a spúšťame aplikácie s pomocou jedného poskytovateľa cloudových služieb. Opakom je cloud-agnostic architektúra riešenia, čo znamená, že aplikáciu môžeme presúvať medzi cloudovými platformami.

Cloud-native aplikácia bola navrhnutá tak, aby využila všetky výhody špecifickej platformy. Môže to viesť k lepšej výkonnosti, efektívnosti a k nižším nákladom, ako pri výtváraní cloud-agnostic produktu.

Kedže AWS Amplify je súčasťou AWS (Amazon Web Services, ktoré využíva aj samotný Amazon), obsahuje aj tieto nástroje:

DynamoDB

NoSQL databáza na uchovávanie dát. S jeho pomocou môžeme vytvoriť databázové tabuľky, ktoré uložia a vyvolajú akýkoľvek počet dát. “NoSQL” nie je náhodné zoradenie písmen, ale názov pre druh databázy. V porovnaní s tradičnými je lepšie škálovateľná a častokrát podáva efektívnejší výkon.

Lambda

Spustenie kódu bez zbytočnej administrácie? Vďaka službe AWS Lambda je to možné. Spustí kód a všetku správu serverov spraví za nás. Okrem toho aj automaticky škáluje kapacitu aplikácie, čiže sa nemusíte obávať výpadkov. A vďaka modelu “plať za to, čo využiješ” minimalizuje prevádzkové náklady = neplatíte za čas, keď sa kód nepoužíva.

S3

Simple Storage Service (S3) je program na ukladanie a získavanie dát z akéhokoľvek zariadenia. Za nízku cenu ponúka “relatívne” veľa priestoru — konkrétne neobmedzené množstvo. S3 je rýchle a spoľahlivé úložisko. Používatelia z celého sveta doň môžu bezpečne ukladať (a získavať) ľubovoľné množstvo dát kedykoľvek počas dňa.

AppSync

Ako už názov napovedá, AppSync má niečo spoločné so synchronizáciou aplikácií. Umožňuje vývojárom spravovať a synchronizovať údaje aplikácií v reálnom čase. Rovnako však umožňuje zmenu dát, keď je zariadenie offline. Hneď ako sa pripojí späť k sieti, dáta sa synchronizujú. V minulosti by to bolo celkom náročné a potrebovali by ste viac služieb. Dnes nám stačí len jeden nástroj, ako napríklad AppSync.

Photo by Domenico Loia on Unsplash

Aké typy aplikácií dokážeme vytvoriť so serverless?

E-commerce a fintech

E-commerce aplikácie zľahčujú životy mnohých. Sú pre ne dôležité technológie, ktoré umožňujú online platobné transakcie a mnoho ďalších funkcií. Medzi e-commerce aplikácie patria napríklad marketplaces - trhoviská ako eBay, Etsy alebo rezervačné aplikácie.

Pre e-commerce aplikácie je dôležité automatické škálovanie. O tom vedia aj v kanadskom Walmart, kde v 2012 nedokázali zniesť nápor zákazníkov počas Black Friday. Stratili tak nemalý počet dolárov. Zaťaž aplikácie sa počas dňa bude líšiť, s čím pomôže automatické škálovanie.

Fintech aplikácie (platobné služby, bankovníctvo…) potrebujú spĺňať bezpečnostné štandardy. Čiže technologická platforma musí byť bezpečná a zároveň flexibilná.

Sociálne siete

Vyvinúť MVP pre sociálnu sieť so serverless nie je ľahká úloha, ale ani nemožná. Je dôležité určiť si všetky funkcionality, ktoré by mala mať. Serverless bude vašou najlepšou voľbou, ak chcete mať aplikáciu rýchlo a výhodne.

Sociálna sieť potrebuje real-time funkcie ako chat či push notifikácie. So serverless platformou bude implemtácia oveľa jednoduchšia. Pre predstavu, u nás môžete mať takúto aplikáciu v priebehu 2–4 mesiacov.

“Fantázii sa medze nekladú”

Audio sprievodca mestom, alternatíva QR scanneru, marketplace, MVP alebo univerzitná aplikácia pre študentov? To sú len príklady toho, čo môžeme vytvoriť serverless technikou.

Serverless je vhodný pre firmy alebo startupy, ktoré nechcú strácať čas a peniaze manažovaním serverov. Častokrát potrebujú rýchlo upraviť aplikáciu — či už kvôli bezpečnosti alebo novým službám.

Photo by Rahul Chakraborty on Unsplash

Záver

Chceli by ste mobilnú aplikácie? Neviete, či ju vaša firma naozaj potrebujete? Alebo netušíte, čo by mala obsahovať? Vhodným riešením môže byť MVP. Potom zistíte, či sa vám oplatí pokračovať alebo nie.

Keďže nie každý má peniaze na rozhadzovanie, MVP (prvotný produkt) by ste mali dostať rýchlo a výhodne. S tým vám pomôže technika serverless a framework React Native. Obe totiž ponúkajú širokú škálu výhod, ktoré budú pre vás efektívnejšie než tradičné budovanie aplikácie.

My používame práve tieto dva “zázraky”. Vyvinieme vám nielen MVP, ale aj kompletnú a funkčnú aplikáciu, ktorá bude spĺňať všetky vaše požiadavky. Veľmi radi totiž premieňame vízie do reality (plus ako jedny z mála, aj s cenovou garanciou).

Kontakt: stefan-majiros.com

--

--

--

Nenechajte si ujsť náš blog ! stefan-majiros.com je malé vývojárske štúdio, ktoré vyvíja apky pre Android a iOS s pomocou React Native a serverless (AWS). Naučíme vás na čo si dať pozor, dozviete sa čo sa od vás ako klienta vyžaduje a koľko to stojí s nami :)

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Stefan Majiros

Stefan Majiros

Senior React Native Developer @stefan-majiros.com (Mobile MVP Dev Agency). Working w/ AWS Amplify and Firebase. Open to remote dev projects w/ my own clients!

More from Medium

Understanding Typescript Distributive Conditional Types with a Source Code Debugging Approach

360° IT Check #44 — Node.js 18, Serverless Functions Running On Deno, And More!

The cover photo for our blog post. Includes the logos of Linux, Node.js and Deno.

When Apollo Cache meets BroadcastChannel

Firebase upgrade from v8 to v9