Trace Id is missing
Přeskočit na hlavní obsah
osoba používající mobilní telefon

Co je vývoj moderních aplikací?

Prozkoumejte procesy a software používaný k vývoji mobilních aplikací.

Vytváření softwaru pro mobilní zařízení

Definice vývoje mobilních aplikací může být široká—a zahrnovat všechny procesy související s vytvořením a vydáním mobilní aplikace—nebo konkrétní, a to s odkazem na kódování a nasazení aplikace. Tento článek se bude zabývat oběma definicemi vývoje mobilních aplikací a zaměří se zejména na definování vývoje mobilních aplikací pro lidi, kteří se rozhodnou nebo zodpovídají za to, jak se software vytváří.

Abychom mohli definovat vývoj mobilních aplikací, měli bychom začít definováním mobilních zařízení, což v tomto případě označuje přenosná elektronická zařízení, jako jsou smartphony, tablety, přenosné počítače, chytré hodinky, elektronické čtečky a přenosné herní konzole. Podle aplikace máme na mysli nejen software nativní pro tato zařízení, ale také běžné operační systémy, platformy a jazyky, které tato zařízení podporují. Jak se dozvíte, existuje mnoho různých způsobů, jak přistupovat k vývoji mobilních aplikací a mnoho rozhodnutí.

Osoba sedící na pohovce a používající herní ovladač se sluchátky
Žena píšící fixem na bílé tabuli

Proces vývoje mobilních aplikací

Proces vytváření a vydávání mobilních aplikací je často srozumitelný v řadě kroků nebo fází. Tyto fáze procesu vývoje mobilních aplikací zahrnují mnoho různých lidí a disciplín v rámci organizace, včetně podnikání, marketingu, návrhu a inženýrství. Fáze procesu vývoje mobilních aplikací:

  • Strategie
  • Plánování
  • Návrh
  • Vývoj
  • Testování
  • Vydání

Jak dlouho trvá vytvoření mobilní aplikace?

Organizace tráví vývojem mobilních aplikací od tří do devíti měsíců—nebo déle, pokud je to třeba. Rozsah a funkce aplikace mají vliv na časovou osu procesu vývoje mobilních aplikací.

Strategie

Proces vývoje mobilních aplikací začíná pochopením, proč může být mobilní aplikace dobrým řešením problému nebo přístupem k příležitosti - a pak se rozhoduje, co se má sestavit a jak. Ve fázi strategie organizace určí cíle a měření úspěchu aplikace, analyzují trh a konkurenci, prozkoumávají potřeby svých zákazníků a určí, kteří uživatelé a případy použití bude aplikace sloužit. Ve fázi strategie mohou organizace také začít zkoumat, které platformy pro vývoj mobilních aplikací by nejlépe fungovaly se svými cíli a požadavky. V této fázi začnou organizace zvažovat také marketing týkající se vydání aplikace.

Plánování

Ve fázi plánování se organizace shodou na čtyřech klíčových podrobnostech procesu vývoje mobilních aplikací: týmech, nástrojích, technologiích a časových osách. Teď mají představu o typu mobilní aplikace, kterou potřebují sestavit, kdo bude aplikaci vytvářet a jakou platformu nebo platformy budou používat. Během této fáze organizace stanoví plán produktu, který určí, které funkce se sestaví v jakém pořadí a kdy—nastaví milníky, a navrhne plán projektu, který jim umožní splnit zamýšlené datum vydání. Znalost dostupných prostředků a odborných znalostí spolu s pochopením toho, jak implementovat technologii zvolenou pro tento proces, je zásadní pro určení tohoto data a dosažení verze.

Návrh

Vzhled, funkce a funkce mobilní aplikace se začnou formovat během fáze návrhu. V této fázi procesu vývoje mobilních aplikací budou týmy vytvářet grafy uživatelského prostředí a vytvářet uživatelská rozhraní a stavy aplikace v různých věrnostech. Mohou začít s modely s nízkou věrností, které poskytují testování konceptu nebo shromažďují zpětnou vazbu od zákazníků v rané fázi. Vývojáři a technici můžou v této fázi pomáhat vytvářet prototypy nebo konzultace ohledně rozhodování o uživatelském prostředí a uživatelském rozhraní, aby týmy věděly o požadavcích a technických specifikacích platforem, které se organizace rozhodla používat. Organizace tak při přechodu na obrazovky s úplnou věrností navrhly aplikaci, kterou je možné skutečně sestavit.

Vývoj

Slovo vývoj v tomto kontextu někdy odkazuje na úplný životní cyklus vývoje softwaru , který je součástí vytváření a vydávání mobilní aplikace. Obecněji ale vývoj znamená tuto fázi vývoje softwaru při vývoji mobilních aplikací. Tuto fázi budeme podrobněji definovat později v článku. Prozatím je tato fáze nejlépe popsaná jako krok, ve kterém týmy vytvářejí technickou architekturu a technologický zásobník, včetně front-endu, back-endu a rozhraní API— nastavují vývojové milníky, určují životní cyklus vývoje aplikace a kódují aplikaci.

Testování

Testování je zásadní fází procesu vývoje mobilních aplikací. Bez testování si organizace nemůžou být jisté, že jejich aplikace bude zabezpečená a pracovat tak, jak uživatelé potřebují a očekávají, a fungovat tam, kde ji nasadí. Během této fáze poskytují týmy kontrolu kvality a vytvářejí testovací případy pro vyhodnocení použitelnosti, výkonu, stability a zabezpečení aplikace na všech zařízeních, na jejichž spuštění je aplikace určená. Organizace často aplikaci zátěžově otestují, aby zajistily, že se architektura aplikace může škálovat tak, aby splňovala náhlou velkou poptávku.

Vydání

Testování je zásadní fází procesu vývoje mobilních aplikací. Po nasazení aplikace poskytuje organizace podporu zákazníkům, kteří ji používají, a průběžné monitorování a údržbu, aby se zajistilo, že je aplikace dostupná a funguje podle potřeby. S touto fází se často shodují marketingové kampaně a akce, které podporují přijetí aplikace. Pokud se organizace rozhodne provést vylepšení nebo změny aplikace, které přesahují rozsah změn, na které je životní cyklus jejich vývoje vybavený, může se rozhodnout zahájit proces vývoje mobilních aplikací znovu.

Osoba, která používá mobilní telefon s stolním počítačem na stole

Vývoj softwaru v procesu vývoje mobilních aplikací

Prvním úkolem fáze vývoje je vytvoření technické architektury mobilní aplikace. Často jsou zaměňováni s technickým zásobníkem—, který zahrnuje technickou architekturu front-endu, back-endu a rozhraní API—technická infrastruktura jsou pravidla a vzory, které řídí vývoj mobilní aplikace.

Technická architektura

Technická architektura se často používá ve třech vrstvách:

Prezentační vrstva

Jedná se o vrstvu aplikace, kterou zákazník vidí a pracuje s ní. Prezentační vrstva obsahuje uživatelské rozhraní a všechny prvky aplikace, které tvoří uživatelské prostředí.

Obchodní vrstva

Logika, která řídí pracovní postupy, výměnu dat a operace, se nachází v obchodní vrstvě. V této vrstvě se zpracovávají základní aspekty mobilní aplikace, jako je zabezpečení, ukládání do mezipaměti, protokolování a zpracování výjimek.

Datová vrstva

Datová vrstva slouží požadavkům samotné aplikace a poskytuje datové nástroje, komponenty pro přístup k datům a pomocné rutiny nebo agenty služeb. Je to také vrstva, která ověřuje a udržuje data a podporuje datové transakce.

Zásobník technologií

Podobně se technologický zásobník—nebo technický zásobník—také skládá ze tří částí, jak je uvedeno. Tyto části však představují konkrétní volby používané k sestavení a podpoře aplikace místo pokynů pro její vytvoření.

Front-end

Nástroje a jazyky, které se používají k kódování front-endu mobilní aplikace, úzce odpovídají prezentační vrstvě, závisí do značné míry na zařízeních, do kterých se aplikace nasadí. Existuje mnoho možností a většina mobilních zařízení má specifické jazyky, které jsou pro ně nativní.

Back-end

Back-end je součástí aplikace, která zahrnuje databázi a další podobné objekty, které se nacházejí na serveru a podporují funkce mobilní aplikace. Při výběru mobilních back-endových technologií, jsou Teams méně závislé na zařízení a můžou často najít předem připravená back-endová řešení.

API

Aplikace komunikuje mezi back-endem a front-endem prostřednictvím rozhraní API— což také umožňuje aplikaci se integrovat a pracovat s ostatními aplikacemi a službami.

Než ale týmy budou moct zvolit svůj technický zásobník—nebo dokonce vytvořit technickou architekturu— musí se nejprve rozhodnout, jaký typ mobilní aplikace sestavují.

Osoba, která kontroluje statistiky na tabletu

Typy mobilních aplikací

Při vývoji aplikací pro mobilní zařízení mají organizace na výběr několik různých typů mobilních aplikací. V tomto případě typ mobilní aplikace neodkazuje na to, co aplikace umožní uživatelům, ale způsob, jakým bude aplikace vytvořena.

Nativní aplikace

Aplikace specifické pro určité zařízení nebo platformu— jako je Android nebo iOS— se nazývají nativní aplikace. Tyto aplikace běží přímo v operačním systému zařízení, používají jazyky a architektury, které platforma poskytuje, a nasazují se prostřednictvím obchodu nebo tržiště specifického pro operační systém. Nativní aplikace mají obvykle úplný přístup ke všem funkcím a hardwaru zařízení, na kterých běží.

Chat pro různé platformy

Teams může kódovat v aplikaci v jazycích a architekturách podle svého výběru a pak zkompilovat kód pro každý operační systém, na kterých je aplikace určená k používání platforem, jako je Xamarin. Aplikace pro různé platformy, jak se nazývají, umožňují týmům běžet na mnoha různých zařízeních a opakovaně používat velkou část kódu— i když přemostění kódu vyžaduje více práce než vývoj pouze pro jednu platformu.

Progresivní webová aplikace

Stejně jako webové aplikace běží progresivní webové aplikace v mobilních prohlížečích a obvykle se vytvářejí pomocí JavaScriptu, CSS a HTML5. Webové aplikace jsou díky tomu progresivní a umožňují poskytovat nabízená oznámení, lepší dotyková gesta a hardwarovou interakci pomocí pokročilých možností prohlížeče. Neexistují žádné sady SDK, které by vám pomohly vytvářet progresivní webové aplikace, ale je možné je nasadit bez nutnosti procházet marketplace.

Hybridní aplikace

Hybridní aplikace jsou v podstatě nativně kódované kontejnery, které spouštějí webové aplikace, kombinací nativních aplikací a progresivních webových aplikací. Tato kombinace umožňuje aplikaci větší přístup k funkcím a hardwaru zařízení a běží na více typech zařízení—a současně udržuje jediný základ kódu. U všech výhod hybridních aplikací obvykle nedosáhnete výkonu, který dělají jiné typy mobilních aplikací.

Jaký typ mobilní aplikace se má sestavit

Typ mobilní aplikace, kterou se organizace rozhodne sestavit, má velké důsledky pro nástroje, platformy, architektury, jazyky dostupné jejich týmům, distribuci aplikace, počet základů kódu, které se mají udržovat, na kterých zařízeních bude aplikace běžet a co může aplikace dělat.

Při rozhodování o tom, jaký typ mobilní aplikace se má sestavit, je vhodné zvážit, kdo budou vaši uživatelé a co od aplikace potřebují. Pokud například používají hlavně jeden typ zařízení nebo operačního systému, může být nejlepší nativní aplikace. Aplikace, které nespoléhají na hardwarové senzory nebo GPS, můžou být vhodné jako progresivní webové aplikace nebo hybridní aplikace— ale možná ne, pokud vaši uživatelé nemají dobré připojení. Pokud jsou vaši uživatelé členy vaší firmy nebo organizace, můžete zvážit různé mobilní strategierůzné mobilní strategie. A samozřejmě to všechno vychází z odborných znalostí, které máte k dispozici ve vaší organizaci nebo prostřednictvím partnera.

Tento graf popisuje více rozdílů a podobností mezi různými typy mobilních aplikací, abyste mohli zvážit, jaký typ aplikace byste měli vyvíjet.

Dvě osoby hovořící v sále

Porovnání typů mobilních aplikací

Nativní aplikace Chat pro různé platformy Progresivní webová aplikace Hybridní aplikace
Počet kopií Jeden na platformu Jedna, ale zkompilovaná pro každou platformu Max. celkem Jeden pro aplikaci, druhý pro kontejner
Jazyky a architektury Jenom nativní Volba týmu Pouze web Skript a nativní
Přístup k sadám SDK a rozhraním API Ano Ano Ne Omezená
Výkon Nejvyšší Vysoký Nejnižší Nízký
Přístup k hardwaru zařízení Kompletní řešení Většina Velmi málo Některé
Odezva na vstup uživatele Dobré Dobré Nejhorší Slabé
Interakce Vysoký Vysoký Nejnižší Nízký
Použití prostředku zařízení Vysoký Vysoký Nízký Střední
Vyžaduje připojení Ne Ne Ano Ano
Náklady na sestavení a údržbu Nejvyšší Vysoký Nejnižší Níže
Kde je aplikace uložená Zařízení Zařízení Server Zařízení a server
Nasazeno prostřednictvím Marketplace Marketplace Prohlížeč Marketplace
Vyžaduje vnější schválení Ano Ano Ne Ano

Platformy pro vývoj mobilních aplikací

Jakmile se rozhodnete, jaký typ mobilní aplikace se chystáte sestavit— nebo zvažujete, jaký typ—budete potřebovat vyhodnotit, platformy pro vývoj mobilních aplikací. Jedná se o platformy pro vývoj aplikací, které budete používat k vývoji, sestavování, testování, ladění, správě a v některých případech dokonce i k nasazení mobilních aplikací v průběhu jejich životního cyklu. Většina softwaru pro vývoj aplikací zahrnuje front-endové nástroje pro sestavení rozhraní, back-endové nástroje pro zpracování dat, nástroje API, testovací nástroje a nástroje pro spolupráci a analýzu kódu.

Většina platforem mobilních aplikací se snaží poskytnout všechno, co vývojář potřebuje k vytvoření mobilní aplikace. To vývojářům umožňuje vyhnout se problémům s pohybem mezi různými součástmi softwaru—pro vývoj mobilních zařízení a řešením problémů, které mezi nimi nastanou, jako je integrita kódu, nekompatibilita či ztráta dat. Platformy pro vývoj mobilních aplikací také snižují náklady, čas, prostředky a odborné znalosti potřebné k tomu, aby organizace vytvořila mobilní aplikaci. I když se několik organizací rozhodne vytvořit vlastní platformy, mnoho dalších se rozhodne pro jednu z mnoha dostupných alternativ vývoje aplikací.

Nejlepší alternativy vývoje mobilních aplikací pro použití v organizaci se liší podle toho, jaké typy mobilních aplikací mají v úmyslu vytvořit, v jakých jazycích můžou kódovat a jaká zařízení chtějí obsluhovat. Mezi další alternativy vývoje mobilních aplikací patří:

  • Multiplatformní nástroje, jako je Xamarin , které vývojářům umožňují vytvářet aplikace pro Android a iOS pomocí .NET a C#.
  • Visual Studio Tools for XamarinVisual Studio Tools pro Xamarin, který používá jeden sdílený základ kódu pro mobilní aplikace pro Android, iOS a Windows.
  • Nástroje s minimálním psaním kódu nebo bez kódu, například Power Apps. Minimální psaní kódu je jednoduchý způsob, jak vytvářet aplikace na profesionální úrovni bez technických školení nebo odborných znalostí. Získejte další informace.

 

Prostředky pro vývoj mobilních aplikací

Prozkoumejte dokumentaci k Azure pro vývojáře pro mobilní zařízení

Informace, které potřebujete k vývoji mobilních aplikací v Azure. Seznamte se s nabízenými oznámeními, ověřováním, analýzami a sadami SDK.

Zkuste vytvořit mobilní aplikaci hned teď

Nastavte kanál průběžné integrace a doručování pro aplikace pro Android. Připojte se k libovolnému úložišti Git a během několika minut zprovozněte svůj tým.

Nejčastější dotazy k vývoji mobilních aplikací

  • Definice vývoje mobilních aplikací může být široká—a zahrnovat všechny procesy související s vytvořením a vydáním mobilní aplikace—nebo konkrétní, a to s odkazem na kódování a nasazení aplikace.

    Další informace

  • Fáze procesu vývoje mobilních aplikací jsou strategie, plánování, návrh, vývoj, testování a vydání.

    Další informace

  • Při rozhodování o tom, jaký typ mobilní aplikace se má sestavit, je vhodné zvážit, kdo budou vaši uživatelé a co od aplikace potřebují.

    Další informace

  • Nejlepší alternativy vývoje mobilních aplikací pro použití v organizaci se liší podle toho, jaké typy mobilních aplikací mají v úmyslu vytvořit, v jakých jazycích můžou kódovat a jaká zařízení chtějí obsluhovat.

    Další informace

  • Organizace tráví vývojem mobilních aplikací od tří do devíti měsíců—nebo déle, pokud je to třeba.

    Další informace

  • Plně vyvíjená mobilní aplikace sice může trvat měsíce, ale tady je pět tipů od Microsoftu, které vám pomůžou začít s vývojem mobilních aplikací.

    Přečtěte si pět tipů pro vytváření mobilních aplikací

  • Označení DevOps, které vzniklo spojením slov "vývoj (development, Dev)" a "provoz (operations, Ops)", představuje spojení lidí, procesů a technologií, jehož cílem je zajistit průběžné doručování kvalitních produktů a služeb zákazníkům. Kultura, nástroje a postupy DevOps můžou pomáhat dříve isolovaným rolím— jako je vývoj, provoz IT, kvalitní inženýrství a zabezpečení— se koordinovat a spolupracovat na vytváření lepších a spolehlivějších mobilních aplikací. DevOps pomáhá vývojovým týmům rychleji reagovat na potřeby zákazníků, zvýšit důvěru v vyvíjené aplikace a rychleji dosáhnout obchodních cílů týmu.

    Další informace o DevOps

  • Vývojáři se obvykle zaměřují na technické schopnosti a procesy poskytovatele cloudu, jako jsou například: snadné nasazení, správa a upgrade, jestli používá standardní rozhraní a rozhraní API, jestli má formální systém pro správu událostí, který je integrovaný s jeho systémem monitorování/správy, jestli má dobře zdokumentované procesy správy změn a jestli jsou podporované hybridní funkce.

    Další informace o volbě poskytovatele cloudu