Trace Id is missing
Przejdź do głównej zawartości
Azure
osoba korzystająca z telefonu komórkowego

Co to jest tworzenie aplikacji mobilnych?

Poznaj procesy i oprogramowanie używane do tworzenia aplikacji mobilnych.

Tworzenie oprogramowania dla urządzeń przenośnych

Definicja tworzenia aplikacji mobilnych może być szeroka, obejmująca wszystkie procesy związane z tworzeniem i wydawaniem aplikacji mobilnej, lub określonej aplikacji, odnoszące się do kodowania i wdrażania aplikacji. W tym artykule omówiono zarówno definicje tworzenia aplikacji mobilnych, jak i skoncentrowano się zwłaszcza na definiowaniu tworzenia aplikacji mobilnych dla osób podejmujących decyzje związane z tworzeniem samego oprogramowania lub odpowiedzialnego za nie.

Aby zdefiniować tworzenie aplikacji mobilnych, należy zacząć od zdefiniowania urządzeń przenośnych, które w tym przypadku odnoszą się do przenośnych urządzeń elektronicznych, takich jak smartfony, tablety, laptopy, inteligentne zegarki, czytniki elektroniczne i konsole do gier podręcznych. W przypadku aplikacji mamy na myśli nie tylko oprogramowanie natywne dla tych urządzeń, ale także typowe systemy operacyjne, platformy i języki obsługiwane przez te urządzenia. Jak się dowiesz, istnieje wiele różnych sposobów podejścia do tworzenia aplikacji mobilnych i wiele decyzji do podjęcia.

Osoba siedząca na sofie i używająca kontrolera gier z słuchawkami
Kobieta pisząca na tablicy markerem

Proces tworzenia aplikacji mobilnych

Proces tworzenia i wydawania aplikacji mobilnych jest często rozumiany w serii kroków lub faz. Te fazy procesu tworzenia aplikacji mobilnych obejmują wiele różnych osób i dyscyplin w organizacji, w tym biznesowych, marketingowych, projektowych i inżynieryjnych. Etapy procesu tworzenia aplikacji mobilnych to:

  • Strategia
  • Planowanie
  • Projektowanie
  • Tworzenie oprogramowania
  • Testowanie
  • Wydawanie

Jak długo trwa tworzenie aplikacji mobilnej?

Organizacje poświęcają od trzech miesięcy do dziewięciu miesięcy, lub dłużej, gdy jest to wymagane, na tworzenie aplikacji mobilnych. Zakres i funkcje aplikacji mają wpływ na oś czasu procesu tworzenia aplikacji mobilnych.

Strategia

Proces tworzenia aplikacji mobilnych zaczyna się od zrozumienia, dlaczego aplikacja mobilna może być dobrym rozwiązaniem problemu lub podejścia do szansy sprzedaży, a następnie podjęcia decyzji o tym, co należy skompilować i jak to zrobić. W fazie strategii organizacje ustalą cele i miary sukcesu aplikacji, przeanalizują rynek i konkurencję, zbadają potrzeby swoich klientów oraz określą, którzy użytkownicy i przypadki użycia będą służyć aplikacji. W fazie strategii organizacje mogą również zacząć badać, które platformy deweloperskie aplikacji mobilnych będą działać najlepiej ze swoimi celami i wymaganiami. Na tym etapie organizacje również zaczynają rozważać marketing dotyczący wydania aplikacji.

Planowanie

W fazie planowania organizacje uzgadniają cztery kluczowe szczegóły procesu tworzenia aplikacji mobilnych: zespoły, narzędzia, technologie i osie czasu. Do tej pory mają pojęcie o tym, jakiego typu aplikację mobilną potrzebują utworzyć, kto będzie kompilować aplikację i których platform będą używać. W tej fazie organizacje opublikują plan produktu, określając, które funkcje będą wbudowane w jakiej kolejności i do kiedy, ustawią punkty kontrolne, oraz zaprojektują plan projektu, który umożliwi im dotrzymanie zamierzonej daty wydania. Wiedza o tym, jakie zasoby i wiedza specjalistyczna są dostępne, oraz zrozumienie sposobu implementacji technologii wybranej do tego procesu są niezbędne do określenia tej daty i dotrzymania daty wydania.

Projektowanie

Wygląd, cechy i funkcja aplikacji mobilnej zaczynają kształtować się w fazie projektowania. W tej fazie procesu tworzenia aplikacji mobilnych zespoły będą przedstawiać środowisko użytkownika i tworzyć interfejsy użytkownika oraz stany aplikacji w różnych wiernościach. Mogą one zaczynać się od makiety o niskiej wierności, aby zapewnić weryfikację koncepcji lub zebrać opinie klientów na wczesnym etapie. Deweloperzy i inżynierowie mogą pomóc w tworzeniu prototypów lub konsultacji dotyczących decyzji o środowisku użytkownika i interfejsu użytkownika na tej fazie, dzięki temu zespoły będą informowane o wymaganiach i specyfikacjach technicznych platform wybranych do użycia przez organizację. Dzięki temu organizacje, które przechodzą na ekrany o pełnej wierności, zaprojektowały aplikację, którą można naprawdę utworzyć.

Tworzenie oprogramowania

Programowanie słów w tym kontekście czasami odnosi się do pełnego cyklu życia tworzenia oprogramowania związanego z tworzeniem i wydawaniem aplikacji mobilnej. Jednak częściej programowanie oznacza tę fazę opracowywania oprogramowania w ramach tworzenia aplikacji mobilnych. Tę fazę zdefiniujemy bardziej szczegółowo w dalszej części artykułu. Na razie tę fazę najlepiej opisać jako krok, w którym zespoły ustanawiają architekturę techniczną i stos technologiczny, w tym fronton, zaplecze i interfejsy API, ustawiają kamienie milowe programowania, określają cykl życia programowania aplikacji i kodują aplikację.

Testowanie

Testowanie jest kluczową fazą procesu tworzenia aplikacji mobilnych. Bez testowania organizacje nie mogą mieć pewności, że ich aplikacja będzie bezpieczna, działać w sposób, w jaki użytkownicy jej potrzebują i czego oczekują, i działać tam, gdzie ją wdrażają. W tej fazie zespoły zapewniają gwarancję jakości, tworząc przypadki testowe w celu oceny użyteczności, wydajności, stabilności i zabezpieczeń aplikacji na wszystkich urządzeniach, na których aplikacja ma działać. Organizacje często testują aplikację w celu zapewnienia, że architektura aplikacji może być skalowana w celu zaspokojenia nagłego dużego zapotrzebowania.

Wydawanie

Ostatnią fazą procesu tworzenia aplikacji mobilnych jest wydanie. Po wdrożeniu aplikacji organizacja zapewnia pomoc techniczną klientom korzystającym z niej oraz ciągłe monitorowanie i konserwację, aby upewnić się, że aplikacja jest dostępna i działa zgodnie z oczekiwaniami. Kampanie marketingowe i ruchy zachęcające do wdrożenia aplikacji często pokrywają się z tą fazą. Jeśli organizacja zdecyduje się na wprowadzenie ulepszeń lub zmian w aplikacji, które wykraczają poza zakres zmian, które może obsłużyć ich cykl projektowania, może zdecydować się na rozpoczęcie procesu tworzenia aplikacji mobilnych na nowo.

Osoba używająca telefonu komórkowego z komputerem stacjonarnym na stole

Tworzenie oprogramowania w procesie tworzenia aplikacji mobilnych

Pierwszym zadaniem fazy programowania jest ustanowienie architektury technicznej aplikacji mobilnej. Często mylony ze stosem technicznym, który obejmuje architekturę techniczną frontonu, zaplecza i interfejsów API, to reguły i wzorce, które zarządzają tworzeniem aplikacji mobilnej.

Architektura techniczna

Architektura techniczna często występuje w trzech warstwach:

Warstwa prezentacji

Jest to warstwa aplikacji, którą klient widzi i z którą wchodzi w interakcje. Warstwa prezentacji obejmuje interfejs użytkownika i wszystkie elementy aplikacji, które składają się na środowisko użytkownika.

Warstwa biznesowa

Logika, która zarządza przepływami pracy, wymianą danych i operacjami, znajduje się w warstwie biznesowej. W tej warstwie są obsługiwane podstawowe aspekty aplikacji mobilnej, takie jak zabezpieczenia, buforowanie, rejestrowanie i obsługa wyjątków.

Warstwa danych

Warstwa danych spełnia wymagania samej aplikacji, udostępniając narzędzia danych, składniki dostępu do danych oraz pomocników lub agentów usług. Jest to również warstwa, która weryfikuje i utrzymuje dane oraz obsługuje transakcje danych.

Stos technologii

Podobnie stos technologiczny składa się również z trzech elementów, jak wspomniano. Jednak te elementy reprezentują konkretne opcje używane do kompilowania i obsługi aplikacji, a nie wskazówki dotyczące jej tworzenia.

Fronton

Zgodnie z warstwą prezentacji narzędzia i języki używane do kodowania frontonu aplikacji mobilnej w dużym stopniu zależą od urządzeń, na których aplikacja zostanie wdrożona. Istnieje wiele opcji, a większość urządzeń przenośnych ma określone języki, które są dla nich natywne.

Zaplecze

Zaplecze jest częścią aplikacji, która zawiera bazę danych i inne podobne obiekty, które znajdują się na serwerze i obsługują funkcje aplikacji mobilnej. Zespoły są mniej widoczne dla urządzeń, jeśli chodzi o wybieranie technologii zaplecza dla urządzeń przenośnych i często mogą znajdować wstępnie utworzone rozwiązania zaplecza.

API

Aplikacja komunikuje się między zapleczem a frontonem za pośrednictwem interfejsu API, co umożliwia również aplikacji integrację i interakcję z innymi aplikacjami i usługami.

Jednak zanim zespoły będą mogły wybrać stos techniczny, a nawet ustanowić architekturę techniczną, najpierw muszą zdecydować, jakiego typu aplikacje mobilne tworzą.

Osoba sprawdzająca statystyki na tablecie

Typy aplikacji mobilnych

Jeśli chodzi o tworzenie aplikacji dla urządzeń przenośnych, organizacje mają kilka różnych typów aplikacji mobilnych do wyboru. W takim przypadku typ aplikacji mobilnej nie odnosi się do tego, na co aplikacja będzie zezwalać swoim użytkownikom, ale do sposobu kompilowania aplikacji.

Aplikacje natywne

Aplikacje specyficzne dla określonego urządzenia lub platformy, takie jak Android lub iOS, są nazywane aplikacjami natywnymi. Te aplikacje działają bezpośrednio w systemie operacyjnym urządzenia, używają języków i struktur udostępnianych przez platformę i są wdrażane za pośrednictwem sklepu lub platformy handlowej specyficznej dla systemu operacyjnego. Aplikacje natywne zwykle mają pełny dostęp do wszystkich funkcji i sprzętu urządzeń, na których działają.

Aplikacje międzyplatformowe

Zespoły mogą kodować w aplikacji w wybranych językach i strukturach, a następnie kompilować kod dla każdego systemu operacyjnego, na których aplikacja jest przeznaczona do uruchamiania przy użyciu platform, takich jak Xamarin. Aplikacje międzyplatformowe, jak są one nazywane, umożliwiają zespołom uruchamianie na wielu różnych urządzeniach i ponowne używanie dużej części kodu, chociaż mostkowanie kodu wymaga więcej pracy niż tworzenie tylko dla jednej platformy.

Progresywne aplikacje internetowe

Podobnie jak aplikacje internetowe, progresywne aplikacje internetowe działają w przeglądarkach mobilnych i są zwykle tworzone przy użyciu języków JavaScript, CSS i HTML5. To, co sprawia, że aplikacje internetowe są progresywne, to możliwość dostarczania powiadomień push, lepszych gestów dotykowych i interakcji sprzętowych przy użyciu zaawansowanych możliwości przeglądarki. Brak zestawów SDK ułatwiających tworzenie progresywnych aplikacji internetowych, ale można je wdrożyć bez przechodzenia przez platformę handlową.

Aplikacje hybrydowe

Aplikacje hybrydowe, będące połączeniem aplikacji natywnych i progresywnych aplikacji internetowych, to zasadniczo natywnie kodowane kontenery, które uruchamiają aplikacje internetowe. Ta kombinacja umożliwia aplikacji większy dostęp do funkcji i sprzętu urządzeń oraz uruchamianie na większej liczbie typów urządzeń przy zachowaniu pojedynczej bazy kodu. Mimo wszystkich swoich zalet aplikacje hybrydowe zwykle nie osiągają wydajności innych typów aplikacji mobilnych.

Jakiego typu aplikację mobilną utworzyć

Typ aplikacji mobilnej, którą organizacja zdecyduje się utworzyć, ma duży wpływ na narzędzia, platformy, struktury, języki dostępne dla jej zespołów, dystrybucję aplikacji, liczbę baz kodu do konserwacji, urządzenia, na których aplikacja będzie działać, a nawet to, co aplikacja może zrobić.

Podczas wybierania typu aplikacji mobilnej do skompilowania warto rozważyć, kim będą użytkownicy i czego potrzebują od aplikacji. Jeśli na przykład używają one głównie jednego typu urządzenia lub systemu operacyjnego, najlepszym rozwiązaniem może być aplikacja natywna. Aplikacje, które nie korzystają z czujników sprzętu lub GPS, mogą być odpowiednie jako progresywne aplikacje internetowe lub aplikacje hybrydowe, ale być może nie, jeśli użytkownicy nie mają dobrej łączności. Jeśli użytkownicy są członkamibiznesowymi lub organizacyjnymi, warto rozważyć różne strategie mobilne. Oczywiście wszystko to wiąże się z wiedzą, którą masz w swojej organizacji lub za pośrednictwem partnera.

Ten wykres przedstawia więcej różnic i podobieństw między różnymi typami aplikacji mobilnych, które ułatwiają rozważenie, jakiego typu aplikację należy opracować.

Dwie osoby rozmawiające w sali

Porównywanie typów aplikacji mobilnych

Aplikacje natywne Aplikacje międzyplatformowe Progresywne aplikacje internetowe Aplikacje hybrydowe
Liczba baz kodu Jeden na platformę Jeden, ale skompilowany dla każdej platformy Suma jednego Jeden dla aplikacji, drugi dla kontenera
Języki i struktury Tylko kod natywny Wybór zespołu Tylko sieć Web Sieć Web i natywna
Dostęp do zestawów SDK i interfejsów API Tak Tak Nie Ograniczone
Wydajność Najwyższa Wysoka Najniższa Niska
Dostęp do sprzętu urządzenia Zakończ Najbardziej Bardzo mało Niektóre
Czas odpowiedzi na dane wejściowe użytkownika Dobra Dobra Najgorsza Kiepska
Interaktywność Wysoka Wysoka Najniższa Niska
Użycie zasobu urządzenia Wysoka Wysoka Niska Średnia
Wymaga łączności Nie Nie Tak Tak
Koszt tworzenia i konserwacji Najwyższa Wysoka Najniższa Niższa
Miejsce przechowywania aplikacji Urządzenie Urządzenie Serwer Urządzenie i serwer
Wdrożone za pośrednictwem Platforma handlowa Platforma handlowa Przeglądarka Platforma handlowa
Wymaga zatwierdzenia zewnętrznego Tak Tak Nie Tak

Platformy i oprogramowanie do tworzenia aplikacji mobilnych

Po podjęciu decyzji o typie aplikacji mobilnej, którą zamierzasz skompilować, lub być może podczas rozważania typu, należy ocenić platformy deweloperskie aplikacji mobilnych. Są to platformy deweloperskie aplikacji, których będziesz używać do tworzenia, kompilowania, testowania, debugowania, zarządzania, a w niektórych przypadkach nawet wdrażania aplikacji mobilnych w całym cyklu życia. Większość oprogramowania do tworzenia aplikacji zawiera narzędzia frontonu do tworzenia interfejsu, narzędzi zaplecza do obsługi danych, narzędzi interfejsu API, narzędzi do testowania i narzędzi do współpracy i analizy kodu.

Większość platform aplikacji mobilnych ma na celu zapewnienie wszystkiego, czego deweloper potrzebuje do utworzenia aplikacji mobilnej. Dzięki temu deweloperzy mogą uniknąć problemów z przenoszeniem się między różnymi elementami oprogramowania aplikacji mobilnych i rozwiązywaniem problemów, które występują między nimi, takich jak integralność kodu, niezgodność i utrata danych. Platformy do tworzenia aplikacji mobilnych zmniejszają również koszty, czas, zasoby i wiedzę wymaganą przez organizację do utworzenia aplikacji mobilnej. Podczas gdy kilka organizacji decyduje się na utworzenie własnych platform, wiele innych decyduje się na jedną z wielu dostępnych alternatyw tworzenia aplikacji.

Najlepsze alternatywy tworzenia aplikacji mobilnych dla organizacji różnią się w zależności od tego, jakie typy aplikacji mobilnych mają zostać utworzone, w jakich językach mogą kodować i jakie urządzenia chcą obsługiwać. Oto kilka alternatywnych rozwiązań do tworzenia aplikacji mobilnych:

  • Międzyplatformowe narzędzia, takie jak Xamarin , które umożliwiają deweloperom tworzenie aplikacji dla systemów Android i iOS przy użyciu platform .NET i C#.
  • Visual Studio Tools for XamarinVisual Studio Tools for Xamarin, która korzysta z pojedynczej udostępnionej bazy kodu dla aplikacji mobilnych z systemami Android, iOS i Windows.
  • Narzędzia z niewielką ilością kodu lub bez kodu, takie jak Power Apps. Niski poziom kodu to prosty sposób na tworzenie profesjonalnych aplikacji bez szkoleń technicznych i specjalistycznej wiedzy. Dowiedz się więcej.

 

Zasoby dotyczące tworzenia aplikacji mobilnych

Poznaj dokumentację platformy Azure dla deweloperów urządzeń przenośnych

Znajdź informacje potrzebne do tworzenia aplikacji mobilnych na platformie Azure. Dowiedz się więcej o powiadomieniach push, uwierzytelnianiu, analizie i zestawach SDK.

Spróbuj teraz utworzyć aplikację mobilną

Skonfiguruj potok ciągłej integracji i dostarczania dla aplikacji systemu Android. Nawiąż połączenie z dowolnym repozytorium Git, aby Twój zespół działał w ciągu kilku minut.

Często zadawane pytania dotyczące tworzenia aplikacji mobilnych

  • Definicja tworzenia aplikacji mobilnych może być szeroka, obejmująca wszystkie procesy związane z tworzeniem i wydawaniem aplikacji mobilnej, lub określonej aplikacji, odnoszące się do kodowania i wdrażania aplikacji.

    Dowiedz się więcej

  • Fazy procesu tworzenia aplikacji mobilnych to strategia, planowanie, projektowanie, opracowywanie, testowanie i wydawanie.

    Dowiedz się więcej

  • Podczas wybierania typu aplikacji mobilnej do skompilowania warto rozważyć, kim będą użytkownicy i czego potrzebują od aplikacji.

    Dowiedz się więcej

  • Najlepsze alternatywy tworzenia aplikacji mobilnych dla organizacji różnią się w zależności od tego, jakie typy aplikacji mobilnych mają zostać utworzone, w jakich językach mogą kodować i jakie urządzenia chcą obsługiwać.

    Dowiedz się więcej

  • Organizacje poświęcają od trzech miesięcy do dziewięciu miesięcy, lub dłużej, gdy jest to wymagane, na tworzenie aplikacji mobilnych.

    Dowiedz się więcej

  • Chociaż pełne opracowanie aplikacji mobilnej może potrwać kilka miesięcy, oto pięć porad firmy Microsoft dotyczących rozpoczynania pracy z tworzeniem aplikacji mobilnych.

    Poznaj pięć porad dotyczących tworzenia aplikacji mobilnych

  • Termin DevOps łączy wyraz "development" (programowanie) i słowo "operations" (operacje) i jest zdefiniowany jako związek ludzi, procesów i technologii, aby umożliwić ciągłe dostarczanie wartości klientom. Kultura, narzędzia i praktyki metodyki DevOps mogą pomóc w tworzeniu lepszych i bardziej niezawodnych aplikacji mobilnych, takich jak programowanie, operacje IT, inżynieria jakości i zabezpieczenia. Metodyka DevOps pomaga zespołom programistycznym szybciej reagować na potrzeby klientów, zwiększać zaufanie do opracowywanych aplikacji i szybciej osiągać cele biznesowe zespołu.

    Dowiedz się więcej o metodyce DevOps

  • Deweloperzy zwykle koncentrują się na możliwościach technicznych i procesach dostawcy chmury, takich jak łatwość wdrażania, zarządzania i uaktualniania, czy korzysta on ze standardowych interfejsów API, czy ma formalny system zarządzania zdarzeniami zintegrowany z systemem monitorowania/zarządzania, czy ma dobrze udokumentowane procesy zarządzania zmianami i czy są obsługiwane możliwości hybrydowe.

    Dowiedz się więcej o wybieraniu dostawcy usług w chmurze