Ultimate Guide to Building & Publishing Vaš prvi iPhone App
Ali razmišljate o izdelavi lastne aplikacije? To morate vedeti. Spoznajte ekosistem aplikacije, programske jezike, orodja in čas ter trud. Ne smemo vam povedati, kaj vi treba vedeti, ampak razložiti, kako lahko dejansko začnete danes, da bi dobili aplikacijo objavljeno v App Store.
Za hitre reference si oglejte bližnjice:
- Gradbeni bloki App: Osnove
- Proces izdelave aplikacij
- Na Swift in Objective-C
- Middleware: zgradite enkrat, zaženite več
- Oblikovanje: kako se uporablja vaša aplikacija
- Kako omogočiti aplikacijo za internet
- Od Beta živeti
- Ustvarjanje prvih pogostih vprašanj o aplikaciji
- Učni viri za začetek
- Popoln seznam referenc
1. Gradniki bloka App: Osnove
Aplikacija je pravična programsko opremo, ki deluje na pametnem telefonu. Napisal jo je programer, skupaj z grafičnimi pripomočki, ki jih je ustvaril oblikovalec.
Aplikacije za iPhone so z aplikacijo Mac, imenovano Xcode, in programirane v Swift ali Objective-C. Številne aplikacije so povezane z internetom, kar pomeni, da imajo back-end ki omogoča shranjevanje podatkov v oblaku ali funkcionalnost, ki povezuje uporabnike.
Xcode je aplikacija, ki jo lahko uporabite za izdelavo domače aplikacije iPhone in je na voljo samo za Mac OS X. Vključuje Builder Interface, orodje za vizualno ustvarjanje grafične podlage vaše aplikacije. Je orodje za odra: z njim ne morete narediti funkcionalne aplikacije, vendar lahko določite podlago za uporabniške vmesnike aplikacije.
Xcode ima veliko uporabnih funkcij, kot je samodejna postavitev za delo z vmesnikom na več ločljivostih zaslona in simulator iPhone za testiranje aplikacije brez dejanskega iPhonea.
Če želite objaviti aplikacije v trgovini App Store, potrebujete račun razvijalca iz podjetja Apple. Na voljo je za 99 USD na leto in ga je treba vsako leto obnoviti. Apple ima na voljo obsežno spletno orodje za upravljanje novih in objavljenih aplikacij, imenovane iTunes Connect, kot tudi obsežen nabor dokumentacije.
Poleg tega iTunes Connect zdaj vključuje beta distribucijsko orodje, imenovano TestFlight. Lahko se uporablja za distribuirate svojo aplikacijo za beta testerje.
2. Proces izdelave aplikacij
Vsak razvojni proces aplikacije sledi tem korakom:
- Oblikovanje. Naredite model aplikacije in postavite vse komponente na zaslon.
- Razvijte. Ta korak vključuje kodiranje aplikacije, povezovanje vmesnikov z dejanji if-this-then-that.
- Test. Pošljite aplikacijo beta testerjem in zberite povratne informacije o njeni uspešnosti. Nato odpravite morebitne napake.
- Objavi. Prenesite aplikacijo v preteklosti postopka pregleda in jo potisnite v produkcijo v App Store.
Z modernim upravljanjem procesov pogosto delamo ponovitve na mikro in makro ravni.
Ko ustvarjate novo funkcijo, jo vedno najprej oblikujete, nato jo kodirate, nato jo preizkusite in nato potisnete v živo. Ne glede na to, ali gre za majhen del ali celoten nov del aplikacije, sledite temu procesu.
3. Na Swift in Objective-C
Aplikacije za iPhone so napisane v jeziku Swift ali Objective-C. Swift je novi programski jezik, ki ga je izumil Apple, objavljen 2. junija 2014, nato pa je bil izdan kot stabilna različica 1.0 9. septembra 2014. To je dokaj nov jezik in aplikacije, ki so v celoti napisane v storitvi Swift, šele zdaj vstopajo v App Store.
Swift hitro pridobiva na priljubljenosti in njegove lastnosti so zelo priznane tako za začetnike kot za napredne programerje. Velika stvar pri Swiftu je, da je zamenljiva z Objective-C. To pomaga pri sprejemanju programa Swift s strani programerjev, ker ti ni treba ponovno pisati celotne kode, da bi bila združljiva z novim jezikom.
Ljudje, ki že imajo srednjo stopnjo znanja katerega koli programskega jezika, potrebujejo manj časa, da poberejo Objective-C ali Swift. Še posebej tisti, ki so delali z jeziki, ki so podobni Swiftu, kot so Java, PHP ali Ruby, naj ne bi imeli težav pri učenju..
Ampak kar je bolje, Swift ali Objective-C?
Objective-C je nekoliko težje rešiti, ker uporablja edinstveno skladnjo. Za začetnike je Swift očitno boljša možnost. Lažje je v primerjavi z Objective-C in odstraniti režijske stroške iz razvojnega procesa, zaradi česar je vstopna ovira za začetnike bistveno nižja..
Kljub temu je Objective-C še vedno standard v številnih podjetjih po vsem svetu, tako da bo zapuščena koda Objective-C za prihodnja leta. Kot zaposleni razvijalec iOS boste videli več Objective-C kot Swift.
4. Middleware: Build enkrat, Run več
Middleware (ali cross-platform), kot je Cordova ali PhoneGap, je priljubljena izbira za razvijalce aplikacij, saj jim omogoča enkratno pisanje kode in uporabite tako za Android, kot za iOS.
Aplikacije za Android so napisane v jeziku Java in niso združljivi z aplikacijami za iOS. Če želite narediti aplikacijo za obe platformi, vendar ne želite dvakrat programirati iste aplikacije, middleware je varčevalna možnost.
Mnoga od teh orodij, ki temeljijo na več platformah, temeljijo na spletni tehnologiji, kot sta HTML5, CSS in JavaScript.
PhoneGap je najbolj razširjen: uporablja ga 400.000 razvijalcev aplikacij. PhoneGap ima svoja orodja za gradnjo in tehnično izvozi aplikacijo ki jih je mogoče zagnati in zgraditi znotraj Xcode, narediti “hibridna aplikacija” - izvorne komponente v kombinaciji z HTML5.
Funkcija PhoneGap zdaj PhoneGap Build, ki nadomešča prevajalnik Xcode z rešitev v oblaku. PhoneGap je brezplačen in izdan pod odprtokodno Apache Public License v2.
Alternative za PhoneGap vključujejo:
- Cordova (odprtokodni)
- Sencha Touch (odprtokodni in komercialni)
- Suite RhoMobile (odprtokodni)
PhoneGap prekaša te alternative podprtih naprav (iOS, Android, Windows Phone, BlackBerry OS, Ubuntu in Firefox OS) in podprta strojna oprema (merilnik pospeška, kamera itd.).
Slabosti v Middleware
Uporaba middleware, kot je PhoneGap ima dve glavni slabosti.
Ker takšna orodja temeljijo na spletni tehnologiji, ne morejo uporabljati prvotnih komponent, ki jih pospešuje strojna oprema. Animacije, prehodi in grafike z visoko ločljivostjo ne delujejo tako dobro kot v domači aplikaciji, zaradi česar je nemogoče uporabljati za igre ali vizualno intenzivne aplikacije.
Tudi uporaba vmesne programske opreme zahteva dobro poznavanje prevajalnikov in gradbenih orodij, zaradi česar je Neprijetna možnost za začetnike.
5. Oblikovanje: kako se uporablja vaša aplikacija
Ni vse, kar je apps, programiranje. Grafično oblikovanje je veliko v industriji aplikacij; to je zahteva za vsako aplikacijo, ki želi biti resno vzeta. Ali razmišljate o programiranju lastnih aplikacij? Če vaš proračun to dovoljuje, najame grafičnega oblikovalca. Obstaja veliko tistih, ki so na outsourcing straneh, kot so Elance ali oDesk.
Kot rečeno, ne potrebujete grafičnega oblikovalca, če ste šele začeli. V sistemu iOS lahko delate s številnimi prednastavljivimi komponentami, ki jih Apple uporablja v svojih aplikacijah in v uporabniškem vmesniku operacijskega sistema. Standardne komponente uporabniškega vmesnika za iPhone ne izgledajo izjemno, vendar niso slabe. To je odličen način, da začnete, ne da bi porabili preveč časa za grafični videz aplikacije.
Orodja in viri
Smernice človeškega vmesnika vam dajejo dober pregled razpoložljivih komponent in kako jih uporabljati.
Ikone: Razmislite o uporabi kompleta ikon, kot je Glyphish (komercialni). Združili so na stotine ikon, optimiziranih za aplikacije za iPhone, vključno z ikonami za družabne medije, gumbi za predvajanje / ustavitev in simboli za naloge, povezane z aplikacijo, kot so nove, urejanje in pošiljanje.
MaketeŠe eno orodje, ki ga zagotovo morate uporabiti, je Balsamiq Mockups (brezplačna preizkusna, komercialna). To je urejevalnik točk in gumbov za izdelavo modelov vaših aplikacij. Mockup je groba skica, ki prikazuje in pojasnjuje, kako deluje vaša aplikacija in kaj počne. Nikoli ne začnite s programiranjem: naredite korak nazaj in ponovno razmislite o uporabniškem vmesniku aplikacij in postavitvi, tako da naredite model.
Si naredil skiciran model, vendar ne moreš občutiti, kako bo aplikacija dejansko izgledala? Delo z oblikovanjem PSDs iz Teehan + Lax (brezplačno). Vse komponente GUI so izvlekli iz iOS-a in jih naredili na voljo kot vektorsko grafiko. Idealen za izdelavo grafičnega modela!
6. Kako omogočiti aplikacijo za internet
Ali je vaša aplikacija povezana z internetom? Ustvarjanje prilagojenega ozadja s jeziki strežnika, kot sta NodeJS, Ruby ali PHP, lahko vzame veliko časa, denarja in truda. Uporabite orodje Platform-as-a-Service, na primer Parse.
Razčlenjevanje je rešitev v oblaku za shranjevanje podatkov brez povezave in spleta v vaši aplikaciji. Recimo, da ustvarjate družabno aplikacijo s tokom slik in posodobitvami stanja. Parse lahko uporabite za shranjevanje podatkov v oblaku in uporabite svoj SDK, da ga dobite od uporabnikov in uporabnikom.
Uporaba orodja, kot je Parse popolnoma odstrani potrebo po izdelavi osnutka po meri. Parseova osnovna raven uporabe je brezplačna, naslednje stopnje se začnejo pri 100 USD / mesec.
Alternative za analizo so Appcelerator (vmesna programska oprema + PaaS, komercialna) in App42 (PaaS + analytics, free tier).
7. Odhod iz Beta v živo
Preden bo aplikacija objavljena v trgovini App Store, jo morate naložiti s storitvijo iTunes Connect. Osnovne informacije o aplikaciji vnesete kot a opis, kategorije aplikacij in ikono aplikacije.
Vaša aplikacija nato vstopi v postopek pregleda, ki jo zahteva Apple. Pregledovalec iz Apple preveri, ali je vaša aplikacija v skladu s smernicami za pregledovanje in ali ima napake. Je preverjanje kakovosti za zagotovitev, da v App Store vstopijo samo dobre aplikacije, in od trenutka, ko ga naložite traja približno 2 tedna pregledati svojo aplikacijo.
Več o storitvi Hongkiat:
- Z orodjem MakeAppIcon preprosto ustvarite ikone aplikacij iOS
- Spodbujajte aplikacijo iOS z meta oznako aplikacije iTunes
- 8 nasvetov za povečanje prenosov za vašo aplikacijo
- 20 Oglaševalska omrežja za ovrednotenje mobilne aplikacije
10 Pogosta vprašanja za Ustvarjanje prve aplikacije
Seveda na tej točki boste morda še vedno imeli nekaj perečih vprašanj, povezanih z ustvarjanjem prvih aplikacij za iOS. Oglejte si deset najpogostejših vprašanj, o katerih so zaskrbljeni novi razvijalci aplikacij.
1. Koliko stane aplikacija?
Stroški razvoja aplikacije se lahko resnično razlikujejo od ene pogodbene družbe do druge. Outsourcing samostojni lahko ustvarite preprosto aplikacijo za približno USD3000. Večja podjetja lahko zahtevajo od 25.000 USD do 100.000 USD za kompleksno aplikacijo, vključno z grafičnim oblikovanjem in programiranjem v ozadju. Podjetja, kot so Tinder, Pinterest, Facebook, itd., Lahko porabijo na tisoče milijonov ljudi za razvoj in trženje eno app. Tako kot kjerkoli drugje: dobiš tisto, za kar plačaš.
2. Obtičal sem s programsko napako. Kako dobim pomoč?
Veliko vprašanj začetnega programiranja je bilo zastavljenih že na spletnih mestih, kot je StackOverflow. Poiščite sporočilo o napaki ali napako, ki ste jo našli, in najverjetneje boste našli rešitev. Ko sami postavljate vprašanje, vedno iščite najprej, in poskrbite, da boste temeljito razložili svoj problem in povejte korake, ki ste jih že naredili, da jih rešite. Quora je dober medij za postavljanje ne-tehničnih vprašanj, na primer o poslovnih temah in temah UX / UI.
3. Imam odlično idejo za aplikacijo. Kje naj začnem?
Če ste resni glede ustvarjanja podjetja, ki temelji na aplikaciji, ne začnite takoj s programiranjem. Prvič, potrdite svojo poslovno idejo jo nagibanje k ciljnemu občinstvu.
Stopite v stik s potencialnimi strankami in jih pregledajte, prosi za povratne informacije.
Ne pozabite, da najbolj uspešne aplikacije rešujejo takojšen problem tako, da ga kupci želijo plačati. Ko ste potrdili svojo idejo in ustvarili odnos s svojimi prvimi strankami, nadaljujte z načrtovanjem in razvojem dejanske aplikacije.
4. Ali potrebujem iPhone za ustvarjanje aplikacij?
Ne, vendar je priporočljivo. Xcode ima iPhone Simulator, ki teče vaše aplikacije tako kot fizični iPhone. Če imate v rokah pravi iPhone z aplikacijo, je to drugačno od prikazovanja na monitorju računalnika, zato priporočamo, da preizkusite aplikacijo na dejanski napravi..
Upoštevajte, da Xcode deluje samo v operacijskem sistemu Mac OS X.
5. Nisem dober pri matematiki, ali ga potrebujem za programiranje?
Da in ne. To je urbani mit, da morate biti zmožni kodirati matematiko. Veliko programskih načel najde svoje korenine v matematiki, vendar niso potrebni za osnovno razumevanje, kako izdelajte aplikacije. Ko se potopite globlje in postanete bolj usposobljeni v programiranju, boste ugotovili, da ste vzeli nekaj spretnosti matematike.
6. Delam za podjetje. Ali zasledujem idejo o aplikaciji v podjetju ali v svojem času?
To je odvisno od podjetja in vašega položaja. Ali ste inženir in je osnovna dejavnost vašega podjetja na spletu, digitalno ali tesno povezana z aplikacijami? Potem boste morda želeli zgraditi prototip in prepričati svojega nadzornika ali delodajalca, naj nadaljuje z idejo.
Če menite, da vaš delodajalec ne vidi vrednosti, lahko idejo o aplikaciji nadaljujete v svojem času. Bodite pozorni na vašo pogodbo s svojim delodajalcem. Izumi, ki ste jih ustvarili v času vašega delovanja v podjetju, bi lahko veljali za intelektualno lastnino podjetja, ne pa za vašo.
7. Ideja moje aplikacije že obstaja v trgovini App Store. Kaj naj storim zdaj?
Dejstvo, da obstaja ne pomeni, da je dobra aplikacija. Vedno lahko ustvarite konkurenčno aplikacijo in bolje od tistega, kar je že tam.
Prav tako dejstvo, da je aplikacija ne obstaja, vendar ne pomeni, da je dobra ideja ustvariti. Lahko bi bilo, da je bila aplikacija objavljena večkrat, vendar je bila potegnjena iz App Storea, ker ni bilo potrebe po njej.
Vedno preverite idejo za aplikacijo do problem, ki ga rešuje in vrednost, ki jo ima uporabnikom.
8. Zakaj se iPhone včasih imenuje iOS?
Obstaja majhna razlika: iPhone je ime za dejanski pametni telefon in iOS pomeni “i Operacijski sistem”. Če se vrnemo v zgodovino Applea, je bil računalnik iMac prvi proizvod, ki je imel predpono “jaz”. Kasneje so sledili temu slogu in ustvarili več izdelkov: iTunes, iPod, iPad in iPhone. Običajno je, da pokličete operacijski sistem, ki deluje na iPhone, iOS.
9. Kako učinkovito tržite iPhone app?
O tem vprašanju so bile napisane vse knjige! To je težko, vendar ni nemogoče odgovoriti. Vse uspešne aplikacije rešujejo en problem, tako da ga ljudje želijo plačati.
Lahko tudi prišli do težave in poiščite ljudi, ki potrebujejo vašo rešitev, ali poiščite občinstvo in anketirajte jih za težave, za katere bi lahko naredili rešitev. Ostanite v stiku s to skupino strank in jim dajte možnost, da drugim povejo o svojem izdelku. Napotitve in beseda-od-usta je učinkovit in poceni tržni stroj.
10. Kaj je najslabši način za učenje programiranja?
Odpovedovanje je eden od najslabših načinov za učenje programiranja. Učenje nove spretnosti ima vzpone in padce, in lahko samo nadaljujete s praznovanjem vzponov in gledanjem skozi padce. Odpoved ni del enačbe.
Prav tako ugotovite, kaj je vaš učni stil. Gledanje videoposnetkov ni smiselno, ko vam pisanje kode, napake in napake bolje ustreza.
Končno, ne izbirajte naključno knjige o programiranju iz knjižnice, ampak našli dokazano metodo učenja ali pot. Pri učenju španščine ne začnete z branjem slovarja?
Učni viri za začetek
Če želite še vedno ustvariti svojo prvo aplikacijo za iOS, boste v tem razdelku našli vse vire za učenje.
Razvoj aplikacij vključuje veliko komponent, in ko ste novi, je lahko zelo velik izziv spoznati vsa orodja. Ne boj se! Svojo prvo aplikacijo lahko naredite v enem dnevu na max, brez predhodnega programiranja. Edina stvar, ki jo potrebujete, je dober vir, ki vam pokaže vrvi in se osredotoča na en nabor orodij hkrati. Na internetu je veliko začetniških vaj, pa tudi vrhunskih tečajev.
Proces učenja: Na kratko
Kakšen je vaš stil učenja? Pomislite, da preden izberete vir.
- Gledanje videoposnetkov: Razvoj aplikacij za CS 193P na univerzi Stanford na voljo za iTunes U (brezplačno).
- Branje knjige: Sams se uči Swift v 24 urah ($ 25 - $ 35) in Swift Programming Language Book od Apple (brezplačno)
- Kodiranje sebe: Vadnice za programiranje: We Heart Swift, JamesonQuave in AppCoda (vse brezplačno).
Ko zgradite svojo prvo aplikacijo, je to na kratko na kratko potopite v številne komponente drug drugemu. Več o:
- Uporaba krmilniki za navigacijo, kot so tabulatorji in meniji hamburgerja
- Uporaba strojne opreme, kot so kamera in merilnik pospeška
- Uporaba postavitve, kot so kontrolnik pogleda tabele in kontrolnik pogleda strani
- Delati z animacije in prikaz prehodov
- The življenjski cikel aplikacije
- Prevajalniki in orodja za gradnjo
Večina teh tematik zahteva nekaj dni (24 do 32 ur) popravljanja, poskusov in napak ter iskanje virov.
Ko boste spoznali osnove, pojdite naravnost delo z internetnimi viri in rešitvami v oblaku kot je Parse. Vse aplikacije so tako ali drugače povezane z internetom.
Ne glede na to pa lahko tisti, ki so se naučili nove stvari, pogosto oblikujejo svoj učni načrt in ni nujno, da sledijo programu, kot je tečaj ali knjiga..
Zaviti
Ali ne bi bilo super imeti svojo aplikacijo v trgovini App Store? Zdaj imate osnovno predstavitev orodij za izdelavo aplikacij in kaj je potrebno, da se naučite, kako narediti lastne aplikacije. Začnite s programom Swift tako, da preberete knjigo ali sledite vadnici, ustvarite odličen vmesnik z Balsamiq, si pridobite račun razvijalca in objavite to aplikacijo!
Popoln seznam referenc:
- Xcode
- Builder vmesnika
- Program za razvijalce Apple
- iTunes Connect
- TestFlight
- Swift
- Apache Cordova
- PhoneGap
- Sencha Touch
- Apartma RhoMobile
- Elance
- oDesk
- Smernice za človeški vmesnik
- Glif
- Balsamiq Mockups
- Teehan + Lax iPhone PSDs
- Razčleniti
- Appcelerator
- App42
- Stanford CS 193P razvoj aplikacij iPhone
- Sams uči sebe Swift v 24 urah
- Mi Srce Swift
- JamesonQuave
- AppCoda
- Knjiga za hiter programski jezik
Uredniška opomba: To je napisal Reinder de Vries za Hongkiat.com. Reinder je podjetnik in razvijalec aplikacij, ki meni, da na svetu ni dovolj oblikovalcev aplikacij. Razvil je 50+ aplikacij in njegovo kodo uporablja več sto tisoč uporabnikov po vsem svetu. Ko ne šifrira, uči ambicioznim razvijalcem, kako narediti lastne aplikacije na strani LearnAppMaking.com.
Sedaj preberite: Kako integrirati jQuery Mobile v Phonegap / Cordova