Monialustainen vs. alkuperäisen mobiilisovelluksen kehittäminen: Oikeiden kehittämistyökalujen valitseminen sovellusprojektillesi

Globaaleilla mobiilisovellusmarkkinoilla - joiden odotetaan olevan 77 miljardia dollaria yli tänä vuonna - on tapahtunut useita suuria muutoksia. Nykyään 99,6% kaikista älypuhelimista toimii joko iOS: llä tai Androidilla. Yritykset kohtelevat nyt mobiilisovelluksia merkkitietoisuuden lisäämisen kanavana, ei omana yrityksenä. AI-ratkaisujen (nimittäin chatbotien) ja lähettiläiden kasvavan käyttöönoton myötä asiantuntijat alkavat jopa kysyä mobiilisovellusten tulevaisuudesta! Ristiriitojen ja kaaoksen keskellä omaperäinen versioympäristöjen välinen mobiilisovellusten kehitysargumentti on kuumin kuin koskaan. Pitäisikö yrityksesi investoida natiiviin sovelluksiin tai tehdä tekemistä monen alustan kanssa? R-Style Labin iOS-sovelluskehitysyksikön päällikkö Pavel Vaskou tuo esiin keskeiset erot monikansallisten ja alkuperäisten sovellusten välillä ja selittää, miksi hybridi ei ehkä ole hyvä päätös.

Monikokoinen käyttöympäristö vs. alkuperäiset sovellukset: tärkeimmät erot

Alkuperäinen mobiilisovellus on sovellus, joka täyttää tietyn käyttöjärjestelmän vaatimukset käyttämällä SDK: ta (samoin kuin laitteistomuistia, vaihdelaitteita ja muita laitteeseen asennettuja sovelluksia).

Natiivien mobiilisovellusten etuja ovat:

· Korkea suorituskyky;

· Lopullinen käyttökokemus;

· Parempi näkyvyys sovellusliikkeessä.

Alustojenvälinen sovellus on mobiilisovellus, joka on yhteensopiva useiden käyttöjärjestelmien kanssa ja voi siksi toimia millä tahansa älypuhelimella tai tablet-laitteella.

On olemassa kahden tyyppisiä alustojenvälisiä mobiilisovelluksia:

· Alkuperäiset alustojenväliset sovellukset. Jokaisella käyttöjärjestelmällä on SDK ja tärkein tekniikka-pino (Java Androidille ja Objective-C / Swift iOS-sovellusten kehittämiselle). Kokenut mobiilimyyjä voi kuitenkin luoda yhtenäisen sovellusliittymän, joka toimii natiivin ohjelmistokehityspaketin päällä, ja käyttää samaa koodia emäksessä molemmissa Android ad iOS -sovelluksissa. Alkuperäiset alustojenväliset sovellukset on rakennettu ensisijaisesti Xamarinin ja Appcelerator Titaniumin kanssa;

· Hybridi HTML5-sovellukset. Vaikka mobiilisovellukset on suunniteltu älypuhelimille ja tablet-laitteille, sovelluslogiikkaa käsittelevät taustapalvelimet (joko pää- tai pilvipohjaiset). Koska sekä iOS: n että Android SDK: n ominaisuudet sisältävät edistyneitä web-komponentteja, ammattitaitoiset ohjelmistosuunnittelijat hyödyntävät WebView-sovellusta usein sovelluksen graafisen käyttöliittymän (HTML), CSS: n ja JavaScriptin sisältämien osien luomiseen. Suosituin hybridi-sovelluskehys on Apache Cordova (aikaisemmin nimeltään PhoneGap).

Suosituimmat eri alustojen väliset mobiilisovellusten kehittämistyökalut

Apache Cordova, Xamarin ja Unity muodostavat 70% koko alustojenvälisten sovelluskehitystyökalujen markkinoista.

· Apache Cordova. Apache Cordovan tech-pinossa on HTML5, CSS3 ja JavaScript. Mobiilisovelluksen kehityskehys tarjoaa pääsyn älypuhelimen sisäänrakennettuun kiihtyvyysmittariin, tiedostojen tallennukseen, GPS: hen, yhteystietoihin, mediaan ja ilmoituksiin. Apache Cordova tarjoaa useita etuja, mukaan lukien melko yksinkertainen sovellusliittymä ja mahdollisuus käyttää mitä tahansa JS-kehystä. Alusta kuitenkin visualisoi sovelluksen käyttöliittymän verkkoselaimen kautta (mikä voi aiheuttaa viiveitä). Jotkut Cordovan lisäosista ovat päivättyjä, joten kehittäjien on usein kirjoitettava mukautetut laajennukset tyhjästä;

· Xamariini. Suunniteltu #C: n ja .Net: n kanssa, Xamarin antaa kehittäjille mahdollisuuden käyttää koodia uudelleen ja yksinkertaistaa dynaamisten asettelujen luomisprosessia iOS: ssä. Tiettyjä käyttöliittymäkomponentteja ei kuitenkaan voida toteuttaa MonoTouchissa ja MonoDroidissa, koska ne tukeutuvat Android / iOS -ominaisuuksiin;

· Ykseys. Unity on suosittu mobiilisovellusten kehitysmoottori, jonka avulla ohjelmistosuunnittelijat voivat suunnitella korkealaatuisia 2D / 3D-sovelluksia (lähinnä pelejä) eri alustoille, kuten Windows, iOS, Android ja Xbox. Ykseyttä (Unreal Engine -sovelluksen rinnalla) pidetään yhtenä parhaimmista työkaluista 3D-sisällön esittämiseen. Ratkaisu sisältää runsaasti vapaasti käytettäviä laajennuksia ja tukee räätälöityjen shaderien kehittämistä. Unityllä on silti jyrkkä oppimiskäyrä, eikä sen kääntäjiä ole optimoitu hyvin ARM-prosessoreille.

Pavelin mukaan useiden eri alustojen mobiilisovellusten suosio johtuu yritysten mobiilisovellusten kasvavasta kysynnästä (joka ylittää pian käytettävissä olevan kapasiteetin 500 prosentilla) ja surullisen Bring Your Own Device -suuntauksen (vuoden 2017 kautta puolet työnantajat vaativat työntekijöitä käyttämään omia laitteitaan työhön).

Kun tehokas resurssien käyttö ja lyhyempi käyttöönottoaika ylittävät UX: n, alustojen ylittäminen on järkevää.

Hyödyt ja haitat monialustaympäristöjen mobiilisovellusten kehittämiselle

Alustaympäristönvälisen sovelluksen rakentamisen etuihin kuuluu:

· Lyhyempi dev-aika. Edellyttäen, että valitset oikean tekniikan nipun ja suunnittelet projektisi perusteellisesti, myyjäsi voi käyttää uudelleen jopa 80% alkuperäisestä kooditietokannasta;

· Kustannustehokkuus. Natiivin mobiilisovelluksen rakentaminen maksaa sinulle vähintään 10 tuhatta dollaria - eikä täällä ole puhuttu Clash of Clans -kloonista. Kerro kustannukset kahdella (iOS ja Android) ja lisää 30% (Android dev on kalliimpi). Saat arvion sovelluksen käynnistämisestä sekä App Storesta että Google Playsta.

· Altistuminen suurelle määrälle käyttäjiä. Useimmat käyttöympäristöjen väliset sovellukset toimivat sekä Androidilla että iOS: llä (sekä Windowsilla, Linuxilla, Tizenillä ja jopa Symbianilla);

· Päivittää synkronoinnin. Maailmassa, jossa menestyvät sovellusjulkaisijat julkaisevat päivityksiä jopa 4 kertaa kuukaudessa, ylläpitokustannukset voivat kuluttaa suuren osan sovelluksen kokonaistuloista - ja siellä voitti alustojen välinen kehitys.

Ja täältä alustasta riippumattomat sovellukset epäonnistuvat:

· Suorituskyky. Älypuhelimien laskentateho on suhteellisen pieni. Raskaiden HTML5 / CSS-käyttöliittymäkomponenttien renderointi puolestaan ​​vie paljon GPU / CPU-resursseja ja voi pidentää sovelluksen vastausaikaa.

· UX-ongelmat. Molempien alustojen UX-vaatimusten täyttäminen voi olla haaste. Apple on erityisen pahamaineinen ihmisrajapintaohjeistaan ​​ja kieltäytyy alkuperäisissä astioihin käärittyjen mobiilisivustojen käytöstä. Kuitenkin virheet ja huono käyttöliittymämuoto muodostavat 20% kaikista App Store -hyökkäyksistä; Jos otat yhteyttä luotettavaan mobiilisovellusten kehitysyritykseen, HTML5-sovelluksesi saa todennäköisesti vihreän valon.

Valinta natiivien ja monen alustan sovellusten välillä

Valinta käyttöympäristönvälisen ja natiivisovelluksen välillä riippuu sovelluksen aiotusta ominaisuusjoukosta ja sovelluksen laajuudesta (pun-tarkoitusta ei ole tarkoitettu).

Jos mobiilisovelluksestasi on tarkoitus tulla oma yritys (kuten kunto ja terveydenhuolto tai suositut kasvojenmuokkaussovellukset), kotimaassa siirtyminen on itsestään selvä valinta. Yrityksille, jotka haluavat luoda puhtaasti informatiivisen tai sisällönjakelusovelluksen, alustojen välinen kehitys voi olla juuri lääkärin määräämää.

Vuonna 2012 Facebook, maailman suurin sosiaalisen verkostoitumisen yritys, korvasi heidän HTML5-sovelluksensa alkuperäisellä iOS-otsikolla ja merkitsi heidän hybridiyrityksensä "suurimmaksi virheeksi", jonka he ovat koskaan tehneet. Facebookin entisen iOS-tuotepäällikön Mick Johnsonin mukaan natiivimahdollisuus auttoi yritystä ratkaisemaan kolme sovelluksen suorituskykyyn liittyvää tärkeää asiaa, kuten käynnistysnopeuden, selaamisen uutissyötteen läpi ja napauttamalla kuvia sen sisällä. Facebook julkaisi alkuperäisen Android-sovelluksen myöhemmin sinä vuonna. Yhtiöllä ei ole mitään HTML5: tä vastaan ​​- tekniikka kuitenkin hoitaa heidän mobiilisivustonsa. Se ei kuitenkaan täyttänyt yrityksen mobiilisovellusvaatimuksia - ja saattaa epäonnistua sinun. Siksi sinun on otettava yhteyttä kokeneeseen myyjään ja suunniteltava mobiilisovellusstrategiasi ottaen huomioon odotettu työmäärä ja ominaisuusjoukot.