Înțelegerea ecosistemului iOS

Înainte de a începe să construiți aplicații iOS, este esențial să înțelegeți mai întâi ecosistemul. Acest articol va examina fundamentele sistemului de operare iOS, diferitele dispozitive iOS disponibile și App Store-ul Apple.


De ce iOS?

Înainte de sosirea Android și Windows Phone, Apple a fost jucătorul dominant în spațiul mobil, rivalizat doar de Nokia și BlackBerry. Odată cu apariția unor noi platforme mobile, a devenit din ce în ce mai important să vă întrebați care este cea mai potrivită platformă pentru dvs. În ciuda începutului Apple în 2007, Android a depășit iOS-ul în cota de piață. Ce înseamnă asta pentru iOS? Este încă o platformă care merită dezvoltată? Cu siguranță e. Există multe motive serioase pentru a începe dezvoltarea aplicației iOS.

  • Stimulente financiare puternice: Oamenii cheltuiesc mai mulți bani pe Apple App Store decât pe orice altă platformă mobilă. În ciuda faptului că Android a devenit jucătorul dominant în spațiul mobil, platforma iOS rămâne mai profitabilă pentru dezvoltatori.
  • Grădină cu grădină: Chiar dacă Apple's App Store a primit o mulțime de critici din partea dezvoltatorilor și a clienților, în special a procesului de revizuire al Apple, este clar că această politică a dus la un App Store în care calitatea aplicației medii este mai mare decât în ​​orice alt magazin mobil. De asemenea, clienții tind să se simtă mult mai siguri atunci când achiziționează aplicații de la App Store decât pe alții deschis platforme, cum ar fi Google Play.
  • Comunitate și asistență: Comunitatea dezvoltatorilor iOS este o comunitate minunată în care trebuie să faceți parte. Există o ofertă aproape nelimitată de articole, tutoriale și documentație care vă ajută să vă aflați când vă aflați blocați cu o problemă. În plus, documentația Apple a SDK-ului iOS este superbă, să nu mai vorbim de sute de videoclipuri WWDC (World Wide Developer Conference) disponibile tuturor dezvoltatorilor iOS înregistrați.

Oamenii uită adesea sau nu știu că Android și iOS sunt platforme foarte diferite. Chiar dacă ambele platforme au fost concepute pentru spațiul mobil, ecosistemul iOS diferă în multe privințe de ecosistemul Google Android. Din perspectiva dezvoltării, majoritatea oamenilor par să găsească mai ușor să se dezvolte pentru platforma iOS decât pentru platforma Android. Nu mă înțelegeți greșit, nu mă refer la stivele de tehnologie pe care le utilizează fiecare platformă și nu mă refer la instrumentele disponibile pentru fiecare platformă. Două motive sunt la baza prăpastiei dintre iOS și Android, fragmentare și rata de adopție.

fragmentarea

Una dintre principalele puncte forte ale Android este în același timp una dintre principalele sale slăbiciuni. După cum știți majoritatea, sistemul de operare Android este lansat ca un proiect open source și, prin urmare, poate fi folosit și modificat. Numeroși producători de hardware au văzut potențialul Android, mai ales că a fost susținut de Google. Android a câștigat rapid în popularitate ca rezultat. Problema este că fiecare producător de hardware a modificat Android pentru a se potrivi cu nevoile lor și a apărut o mare varietate de factori de formă de la introducerea Androidului.

Chiar dacă cota de piață a Android poate părea o mare oală de miere, este o durere pentru a crea software care rulează pe fiecare versiune Android disponibilă în prezent. Datorită mii de dispozitive diferite care rulează Android, testarea software-ului pe hardware nu este nici o sarcină trivială. După cum vă puteți imagina, suportul și compatibilitatea devin o adevărată provocare.

Rata de adopție

În mod tradițional, în multe țări, piața wireless este controlată de transportatorii celulari. De la început, Apple a știut că trebuie să fie în controlul dispozitivelor mobile pentru a oferi cea mai bună experiență de utilizare posibilă. Rezultatul este că clienții pot să își upgradeze dispozitivele iOS la cea mai recentă versiune de iOS în aceeași zi în care sunt lansate publicului. Acesta este un avantaj major al platformei iOS și rezultatul este substanțial. La mai puțin de trei luni de la lansarea iOS 7, peste 74% dintre dispozitivele iOS au fost actualizate la iOS 7.

Să comparăm acest lucru cu Android. În decembrie 2013, mai puțin de 55% dintre utilizatorii de Android și-au îmbunătățit dispozitivele la Jelly Bean (lansat în iulie 2012), iar 1.1% au îmbunătățit KitKat (lansat în octombrie 2013).

Motivul producerii acestor numere nu este de a downplay-ul platformei Android sau al oricărei alte platforme mobile. Ceea ce vreau să subliniez este impactul ratei de adopție asupra ecosistemului de aplicații al acestor platforme. Utilizatorii mai lenți adoptă o nouă versiune a unui sistem de operare, dezvoltatorii mai lungi sunt nevoiți să susțină versiuni mai vechi ale sistemului de operare și devine mai puțin atrăgătoare pentru a adopta noi tehnologii, care pot fi utilizate numai pe o fracțiune de dispozitive Android.

Generarea de bani

Chiar dacă Android atinge viteza, iOS este încă cea mai bună platformă în ceea ce privește generarea de bani. În timpul celui mai recent eveniment al Apple, Tim Cook a anunțat că clienții au descărcat mai mult de 60 de miliarde de aplicații și că Apple a plătit dezvoltatorilor iOS peste 13 miliarde de dolari. În septembrie 2013, în timpul evenimentului iPhone anual al Apple, Tim Cook a anunțat că compania a vândut peste 700 de milioane de dispozitive iOS. Dacă vă gândiți să vă dezvoltați pentru o platformă mobilă, atunci iOS este o alegere excelentă, iar stimulentele financiare pentru a face acest lucru este puțin probabil să se schimbe în orice moment în curând.


De ce nativ?

Dacă sunteți un cititor frecvent al Envato Tuts +, este posibil să fi auzit despre cadre inter-platforme precum PhoneGap sau Titanium Mobile. S-ar putea să te întrebi de ce ar trebui să treci prin dificultatea de a învăța Obiectiv-C atunci când poți crea aplicații iOS folosind JavaScript. Permiteți-mi să vă dau o scurtă descriere a opțiunilor dvs. dacă vă decideți să dezvoltați aplicații iOS.

  • Aplicații Web: O aplicație web este prima dvs. opțiune și aceasta a fost, de fapt, singura opțiune înainte de introducerea SDK-ului nativ iOS în 2008. Dezvoltarea aplicațiilor web este că nu trebuie să se ocupe de procesul de revizuire a App Store sau Apple. De ce este asta? O aplicație web este un nume fantezist pentru un site care acționează și se comportă ca o aplicație. Tot ce aveți nevoie este un browser, cum ar fi Mobile Safari sau Google Chrome.
    Aplicațiile web au avantaje clare. Acestea sunt implicit cross-platform, deoarece aplicația rulează într-un browser. Un alt avantaj este curba de învățare pentru a crea aplicații web. Dacă sunteți familiarizat cu dezvoltarea web, atunci veți fi în picioare și funcționează în cel mai scurt timp.
    Desigur, dezavantajele aplicațiilor web nu pot fi ignorate. O aplicație web are acces limitat la capabilitățile dispozitivelor pe care le rulează. Aplicațiile web mobile sunt destul de puternice grație HTML5 și JavaScript. Cu toate acestea, există restricții distincte în ceea ce privește ceea ce pot face. Nu veți putea folosi toate funcțiile interesante ale dispozitivului iPad și iPhone. De asemenea, aplicațiile web necesită de obicei o conexiune la rețea pentru a funcționa, deși există excepții de la această regulă. Cu toate acestea, probabil cel mai mare dezavantaj al construirii exclusive a aplicațiilor web este că, în general, se vor simți în mod semnificativ mai lent decât aplicațiile native. Răspunsul aplicațiilor web se îmbunătățește în mod constant, dar întârzierea moștenită adăugată de browser nu trebuie ignorată sau ignorată.
  • Mobile Cross Platform Platforms: Promisiunea unui cadru cross-platform este că dezvoltatorii pot scrie o aplicație care poate fi implementată pe mai multe dispozitive mobile dintr-o singură bază de cod. Acest lucru este realizat cu o serie de abordări diferite. Unele cadre, cum ar fi PhoneGap, utilizează SDK-ul nativ al platformei pentru a crea o vizualizare web în care este încorporată aplicația. Ca și în cazul aplicațiilor web, acest lucru impune limitări în ceea ce privește funcționalitatea. Principalul avantaj este că aplicația se simte ca o aplicație nativă în ceea ce privește experiența utilizatorului și că poate fi distribuită prin magazinul platformei.
    Chiar dacă cadrele de dezvoltare mobile ar putea părea ca un grail sfânt pentru dezvoltarea mobilă, există o serie de dezavantaje care trebuie luate în considerare. Cel mai important dezavantaj este că aplicația dvs. depinde de un cadru terț. Cu alte cuvinte, întreaga bază de cod devine dependentă de compania care furnizează soluția cross-platform. În cazul în care această companie se strică sau se implementează lent modificările aduse SDK-ului nativ, ați putea fi forțat să începeți de la zero. Acesta este un risc care nu trebuie ignorat.
  • SDK pentru iOS: Alegerea să se dezvolte împreună cu SDK-ul nativ este cea mai bună alegere dacă doriți să creați aplicații care să stea în evidență și să profitați din plin de capacitățile dispozitivului. Alegerea unei aplicații native înseamnă, de asemenea, că veți lucra într-un mediu de dezvoltare robust și că vă puteți baza pe instrumentele, utilitățile și suportul de dezvoltare ale Apple.

Ecosistemul iOS

Unul dintre aspectele cele mai atrăgătoare ale ecosistemului iOS este simplitatea acestuia. Lista de dispozitive capabile să ruleze iOS este surprinzător de scurtă în comparație cu Android sau Windows Phone. Acest lucru înseamnă că testarea aplicațiilor iOS este mult mai puțin greoaie în comparație cu alte platforme.

Așa cum sa afirmat mai devreme, Android a depășit iOS-ul în ceea ce privește cota de piață, dar aceasta este doar o parte din poveste. Platforma iOS reprezintă mai mult de 50% din utilizarea web pe dispozitivele mobile. Ce ne spune acest lucru despre spațiul mobil? Acesta ne spune că iOS rămâne cel mai utilizat sistem de operare în spațiul mobil, cel puțin on-line, iar acest lucru în ciuda cotei de piață a Android.

Dispozitive

Există, în esență, două familii de dispozitive din cadrul ecosistemului iOS: familia dispozitivelor iPhone, care include și iPod Touch și familia dispozitivelor iPad. Pentru o prezentare completă, vă recomandăm să aruncați o privire la această listă.

Principalele diferențe în familia dispozitivelor iPhone sunt capabilitățile hardware și dimensiunea ecranului. IPhone-urile 5, 5S, 5C și iPod-ul de generația a 5-a au un ecran mai mare de 4 ", în timp ce modelele precedente vin cu ecranul mai familiar de 3,5". Diferența în dimensiunea ecranului nu are impact asupra dezvoltării, dar nu adaugă prea multe cheltuieli pentru majoritatea aplicațiilor. Voi vorbi mai multe despre asta în cursul seriei.

În 2012, familia iPad a fost extinsă cu introducerea iPad Mini. Chiar dacă introducerea iPad-ului Mini a provocat o răsplată în industria tehnologiei, ea are un impact redus asupra dezvoltatorilor iOS. Ecranul iPad Mini este semnificativ mai mic decât cel al dispozitivului iPad 10 și iPad Air, însă rezoluția este identică cu rezoluția iPad-urilor de 10 ". Datorită ecranului iPad Mini, dimensiunea medie a țintelor atinge este mai mică și acest lucru poate reprezenta o problemă pentru unele aplicații existente.

iOS

Apple lansează în mod tradițional o nouă versiune a sistemului său de operare mobil în fiecare an. Până în prezent, Apple a lansat șapte versiuni majore ale sistemului său de operare mobil cu cea mai recentă versiune fiind iOS 7. Suportul pentru dispozitive este un aspect al iOS pe care oamenii o ignoră adesea. Luați iPhone 4, de exemplu. IPhone 4 a fost lansat în 2010 și este încă capabil să ruleze iOS 7. Nu există o platformă mobilă care să vină chiar și aproape de aceasta în ceea ce privește suportul pentru dispozitive.

Magazin de aplicații

Unul dintre motivele cheie care trebuie dezvoltate pentru platforma iOS este succesul incredibil al App Store. Software-ul de vânzare nu a fost niciodată mai ușor datorită atât App Store cât și Mac App Store. Apple a anunțat recent că App Store a depășit piatra de hotar a 1 milion de aplicații. Ea devine puțin aglomerată în App Store, dar rețineți că numărul de dispozitive iOS continuă să crească exponențial.

Spațiul mobil este încă în fază incipientă și există încă un potențial atât de mare care așteaptă să fie descoperit. La fel ca și în cazul web-ului la sfârșitul anilor nouăzeci, spațiul mobil va continua să crească într-un ritm rapid și cantitatea de bani care poate fi făcută crește cu fiecare nou smartphone sau comprimat vândut.


Concluzie

Acum aveți o imagine clară a ecosistemului iOS și sper că am reușit să vă conving să începeți dezvoltarea iOS. În următorul mesaj, vă voi arăta cum să începeți cu SDK-ul nativ prin configurarea mediului de dezvoltare. Veți fi surprins de cât de ușor este acest lucru.

Resurse suplimentare

Dacă sunteți nou în dezvoltarea iOS sau în dezvoltarea mobilă în general, atunci ar putea fi interesat să verificați pagina noastră de dezvoltare a aplicațiilor în Envato Studio.

Cod