+420 603 755 610
info@inited.cz
flagEnglish (Angličtina)
flagČeština
INITED Solutions s.r.o.
  • Domů
  • Služby
    • Vývoj mobilních aplikací
    • Záchrana projektů
    • Konzultace
    • Provoz a rozvoj mobilních aplikací
  • Pro agentury
  • Ukázky naší práce
  • Blog
  • Kontakt
Grafika Jak pracuje vývojář – nákres muže sedícího u počítače.

Jak pracuje… Vývojář

20.7.2022Jaroslav Pavlíček

Před pár týdny jsme vám ukázali, jaké úkoly má na starost projektová manažerka v INITED. Víte ale, jak vypadá běžný pracovní den vývojářů? A co všechno řeší například při vývoji backendu?

V předchozím díle našeho seriálu Jak pracuje… jsme vám ukázali, co v průběhu jednoho projektu řeší naše projektová manažerka Jana. A nyní je čas podívat se, jaké úkoly mají na starosti vývojáři. Konkrétně náš fullstack developer Dmitrij (tedy Dima, jak mu v INITED říkáme).

Důležitá je příprava projektu

Dima má v INITED na starosti zejména tvorbu backendu. V úvodních etapách projektu, tedy ve fázích Plánu a Makety, tak klient nedostává žádné jeho výstupy. Neznamená to ale, že má Dima volno.

Na začátku vývoje mobilní aplikace je jeho úkolem vytvořit nové projekty v Bitbucketu, který slouží jako Git (tedy nástroj pro správu adresářů a souborů) pro zdrojový kód. Díky tomu může každý vývojář dělat změny jen ve své části kódu.

Kromě toho vytvoří nový projekt také na open-source serveru Jenkins. V něm připraví a nastaví skripty, díky kterým Jenkins automaticky vytváří buildy dané aplikace a nahrává je na server. Z něj si pak klient může aplikaci stáhnout a nainstalovat.

Zároveň Dima připravuje server pro backend.

Musí proto nastavit konfigurační soubory pro platformu Docker, která izoluje jednotlivé aplikace (například backend, frontend či administraci) do takzvaných kontejnerů. V případě backendu to znamená, že konfigurační soubory určí jeho prostředí a umožní spuštění.

S Dockerem pracujeme i v dalších částech projektu. Pomocí takzvaného docker compose file nastavíme celý projekt, což nám následně usnadní například testování.

Stačí totiž zkopírovat jen zmíněný soubor a získáme klon celého projektu. Můžeme ho tak testovat a zároveň programovat nové funkce

Tvorba backendu trvá i přes 80 hodin

Dimova práce na backendu pokračuje návrhem API, které umožní propojení backendu s frontendovou aplikací.

Poté do softwaru Swagger zaznamená:

  • modely, se kterými bude v backendu pracovat;
  • a endpointy, které následně vytvoří v backendu. Určí přitom mimo jiné i to, jaké vstupní parametry daný endpoint dostane, jaká data vrátí nebo jaké se mohou objevit chyby. 
Ukázky obrazovek ze swaggeru.

Parametry endpointů mohou vypadat například takto.

Kromě toho je potřeba zvolit také vhodný typ databáze – obvykle je to relační databáze MySQL.

A poté už přichází čas na tvorbu zdrojového kódu pro backend. Už u jednodušších serverů zabere práce minimálně 80 hodin, ve kterých je potřeba naprogramovat například:

  • přihlašování přes e-mail, Facebook, Google a Apple ID,
  • ukládání a zobrazování obrázků,
  • nebo práci s daty v databázi,

U komplexnějších projektů se k tomu přidává například ještě:

  • rozesílání e-mailů a push notifikací,
  • propojení mobilní aplikace s jiným systémem (například s administrací či webem)
  • nebo propojení s dalším systémem na rozesílání e-mailů (jako je například Incomaker nebo Ecomail).

V takovém případě samozřejmě čas strávený prací narůstá (jak přesně rozsah prací na jednotlivých projektech vypadá a jaká je cena vývoje zjistíte v článku Na čem závisí cena za vývoj mobilní aplikace?).

„V INITED většinou k tvorbě backendu používáme Node.js framework zvaný NestJS. Kód píšeme v jazyce TypeScript. Výhodou je, že jak kód, tak struktura projektu dost připomínají Angular nebo Ionic, ve kterých píšeme webové a mobilní aplikace. Pokud je potřeba lehce upravit kód, doplnit jednoduchou funkci, může to udělat i frontend developer. Kód a struktura projektu se totiž podobají frontendovým aplikacím,” upozorňuje na výhodu tohoto postupu Dima.

V INITED ale pracujeme i s dalšími frameworky. Ať už je to například Spring Boot nebo Apache Sling, ve kterých máme backend u některých projektů.

Vzájemná kontrola kódů pomáhá všem

Kromě přípravy backendu se Dima stará o aktualizace aplikací nebo o přípravu některých aplikací k publikaci v obchodech App Store, Google Play nebo AppGallery.

Jako jeden ze služebně nejstarších vývojářů v INITED má na starosti také předávání informací o technické stránce vývoje novým členům týmu. Spolu s ostatními vývojáři také kontroluje kód svých kolegů.

„Kód si kontrolujeme všichni navzájem. Někdy tam můžeme nalézt věci, co by se daly vylepšit, ale většinou se sami naučíme něco nového od jiného programátora,” zmiňuje Dima.

I když se ve své pozici soustředí zejména na přípravu backendu, má možnost podílet se i na přípravě samotné aplikace. „Například něco opravím nebo doplním nové funkce podle požadavků klienta. To je výhoda INITED, že nemusíte neustále dělat jednu věc, ale můžete si práci zpestřit naprogramováním nových funkcí na jiném projektu nebo platformě,” říká jeden z našich nejzkušenějších vývojářů mobilních aplikací.

Když práce skončí

Dima se nenudí, ani když navečer odloží klávesnici. Pokud ji tedy odloží – ve volném čase totiž rád programuje vlastní drobné aplikace. Třeba takové, které mu pomohou najít nejbližší zastávku hromadné dopravy.

Rád si také zahraje počítačové hry, ponoří se do virtuální reality nebo si zajde s kamarády na fotbal, do fitcentra či do bazénu.

„V době koronavirového lockdownu jsem navíc objevil, že mě baví práce s epoxidem. Takže občas vyrobím nějakou lampu nebo malý stolek,” dodává Dima.

A co na takový stolek odloží? Třeba některou ze svých oblíbených fantasy knížek. Ať už je to Eragon, nebo Zaklínač.

Jaroslav Pavlíček
Jaroslav je certifikovaný architekt (TOGAF) s 25+ lety praxe v IT. Díky tomu mají naše mobilní aplikace vysokou technickou úroveň a jsou postavené na spolehlivých technologiích. Své zkušenosti získával na projektech v zahraničí (Velká Británie, Malta) a vedle INITED působí jako konzultant Adobe Experience Manager, AEM.
Předchozí článek Kariéra nebo rodina? A proč ne oboje? Další článek 3 důvody, proč publikovat aplikace v App Gallery

Related Articles

Jak funguje přihlášení přes Facebook

29.12.2021Jaroslav Pavlíček

Jak spustit aplikace pro Android na PC? Windows 11 to brzy umožní

26.1.2022Jaroslav Pavlíček
Publikum sledující konferenci.

Mobilní aplikace pro konference: 7 věcí, bez kterých se neobejde

30.11.2022Jaroslav Pavlíček

Kategorie článků

  • Marketing a prodej (26)
  • Mobilní aplikace (47)
  • Mobilní telefony a HW/Ostatní (13)
  • Ostatní (13)
  • Top (5)
  • Trendy (39)
  • Z naší dílny (20)

Přečtěte si také

  • Jana Marková: Mobilní, nebo webová aplikace? Někdy je nejlepší mít obě
  • Apple umožňuje publikovat aplikace v alternativních obchodech. Jaké jsou podmínky?
  • Od nápadu na aplikaci k dokonalému projektu: 6 kroků, které musíte ujít
  • 6 rozdílů mezi ASO pro App Store a pro Google Play
  • Hodinová sazba za vývoj mobilní aplikace: jak se liší u freelancerů a agentur
  • Cena vývoje mobilní aplikace 2024
  • Co jsou widgety a proč se vyplatí i vaší aplikaci
  • Chcete, aby vaše aplikace zůstala na Google Play? Musíte ji aktualizovat!
  • 7 trendů ve vývoji mobilních aplikací pro rok 2024
  • Povinné ověření účtů vývojářů na Google Play
  • Jak funguje našich 6 etap vývoje mobilních aplikací
  • Nebuďte součástí hloupých předsudků a pověr! Můžete tím přijít o peníze i o zákazníky
  • Máte aktuální API? Bez ní vás někteří uživatelé v Google Play nenajdou
  • UX mobilní aplikace: 3 věci, na které musíte myslet
  • AI na vlastní kůži: Jak vypadá aplikace s texty od ChatGPT
  • Proč je práce z domova okolím vnímána jako podřadnější než práce v kanceláři?
  • 3 největší novinky, které přinese Google Pixel 8
  • 6 technologií, které vylepší vaši aplikaci
  • 5 tipů, jak využít umělou inteligenci v mobilní aplikaci
  • 7 nejčastějších chyb, které firmy dělají v ASO

Ahoj 123

blablabl

  • Domů
  • Služby
  • Pro agentury
  • Ukázky naší práce
  • Blog
  • Náš tým
  • Kontakt
© 2023 Created by Provocado
Na tomto webu používáme cookies
Cookies nám pomáhají vidět realitu - co návštěvníky zajímá, co čtou a co naopak přeskakují. Používáme Google Analytics, Google Fonts aYouTube. Více o cookies, najdete v dokumentu níže.
Functional Always active
The technical storage or access is strictly necessary for the legitimate purpose of enabling the use of a specific service explicitly requested by the subscriber or user, or for the sole purpose of carrying out the transmission of a communication over an electronic communications network.
Preferences
The technical storage or access is necessary for the legitimate purpose of storing preferences that are not requested by the subscriber or user.
Statistics
The technical storage or access that is used exclusively for statistical purposes. The technical storage or access that is used exclusively for anonymous statistical purposes. Without a subpoena, voluntary compliance on the part of your Internet Service Provider, or additional records from a third party, information stored or retrieved for this purpose alone cannot usually be used to identify you.
Marketing
The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.
Manage options Manage services Manage vendors Read more about these purposes
Předvolby
{title} {title} {title}