Ultimate Vodič za izgradnju i izdavanje svoj prvi iPhone App
Razmišljate li o izradi vlastite aplikacije? To je ono što trebate znati. Saznajte više o ekosustavu aplikacija, programskim jezicima, skupovima alata i uključenom vremenu i naporu. Nemojmo vam reći što vi treba Znate, ali objasnite kako zapravo možete započeti danas da biste aplikaciju objavili u App Storeu.
Za brzu referencu ovdje su kratice:
- Građevinski blokovi App: Osnove
- Proces izrade aplikacija
- Na Swift i Objective-C
- Middleware: izgradite jednom, pokrenite više
- Dizajn: kako se koristi vaša aplikacija
- Kako omogućiti aplikaciju za internet
- Od Beta uživo
- Izrada prvih pitanja o aplikaciji
- Učenje resursa za početak
- Cijeli popis referenci
1. Blokovi aplikacije: osnove
Aplikacija je pravedna računalni softver koji radi na pametnom telefonu. Napisao ga je programer i sastavio grafički materijal koji je kreirao dizajner.
Aplikacije za iPhone su napravljen s Mac aplikacijom pod nazivom Xcode, i programiran u Swift ili Objective-C. Mnoge su aplikacije povezane s internetom, što znači da imaju back-end koji omogućuje pohranjivanje podataka u oblaku ili funkcionalnost koja povezuje korisnike.
Xcode je aplikacija koju možete upotrijebiti za izradu izvornih iPhone aplikacija, a dostupna je samo za Mac OS X. Ona uključuje Builder za sučelja, alat za vizualno stvaranje grafičkog temelja vaše aplikacije. To je alat za skele: s njim ne možete napraviti funkcionalnu aplikaciju, ali možete postavite temelje za GUI vaše aplikacije.
Xcode ima mnogo korisnih značajki, kao što je Auto Layout za automatsko oblikovanje sučelja na više razlučivosti zaslona i iPhone Simulator za testiranje aplikacije bez stvarnog iPhonea.
Da biste objavili aplikacije u App Storeu, potreban vam je račun razvojnog programera tvrtke Apple. Dostupan je za 99 USD godišnje i treba ga obnoviti svake godine. Apple ima sveobuhvatan online alat dostupan za upravljanje novim i objavljenim aplikacijama, nazvanim iTunes Connect, kao i opsežan skup dokumentacije.
Osim toga, iTunes Connect sada ima beta distribucijski alat pod nazivom TestFlight. Može se koristiti distribuirati svoju aplikaciju na beta testere.
2. Proces izrade aplikacija
Svaki proces razvoja aplikacije prati ove korake:
- Dizajn. Napravite maketu svoje aplikacije i rasporedite sve komponente na zaslonu.
- Razviti. Ovaj korak uključuje kodiranje aplikacije, povezivanje sučelja s radnjama if-this-then-that.
- Test. Pošaljite aplikaciju beta testerima i prikupite povratne informacije o njezinoj izvedbi. Zatim riješite sve pogreške koje se pojave.
- Objaviti. Primijenite svoju aplikaciju u prošlosti postupka pregleda i gurnite je u produkciju u trgovini App Store.
Moderno upravljanje procesima često radi iteracija na mikro i makro razini.
Kada stvarate novu značajku, uvijek je prvo dizajnirate, a zatim je kodirate, a zatim je testirate, a zatim je gurnete uživo. Bilo da se radi o maloj komponenti ili o cijelom novom dijelu aplikacije, slijedite ovaj proces.
3. O Swiftu i Objective-C
iPhone aplikacije su napisane u Swift ili Objective-C. Brz je novi programski jezik koji je izumio Apple, objavljen 2. lipnja 2014., a naknadno objavljen kao stabilna verzija 1.0 9. rujna 2014. To je prilično novi jezik i aplikacije koje su u cijelosti napisane u Swiftu upravo udaraju u App Store.
Swift brzo dobiva na popularnosti i njegove značajke su visoko cijenjeni i početnici i napredni programeri. Velika je stvar u Swiftu to što je zamjenjiva s Objective-C. To pomaže usvajanju Swift-a od strane programera, jer oni ne morate ponovno pisati cijelu bazu koda da bi bila kompatibilna s novim jezikom.
Osobama koje već imaju srednju razinu znanja bilo kojeg programskog jezika bit će potrebno manje vremena da pokupe Objective-C ili Swift. Pogotovo oni koji su radili s jezicima sličnim Swiftu, kao što su Java, PHP ili Ruby, ne bi trebali imati problema s učenjem Swifta.
Ali što je bolje, Swift ili Objective-C?
Objective-C je malo teže riješiti jer koristi jedinstvenu sintaksu. Za početnike, Swift je očito bolja opcija. Lakše je u usporedbi s Objective-C i uklanja opterećenje iz razvojnog procesa, čineći prepreku-ulaz za početnike znatno nižom.
Unatoč tome, Objective-C je još uvijek standard u mnogim tvrtkama diljem svijeta, tako da će nasljedni kod biti Objective-C za naredne godine. Kao zaposlenik iOS developer, vi ćete vidjeti više Objective-C nego Swift.
4. Middleware: izgradite jednom, pokrenite više
Middleware (ili cross-platforma) kao Cordova ili PhoneGap, popularan je izbor za programere aplikacija, jer im omogućuje da pišu kod jednom i implementirajte ga na Android i iOS.
Aplikacije za Android napisane su na Java i nisu kompatibilne s iOS aplikacijama. Ako želite napraviti aplikaciju za obje platforme, ali ne želite dvaput programirati istu aplikaciju, middleware je opcija koja štedi vrijeme.
Mnogi od ovih alata za više platformi temelje se na web tehnologiji, kao što su HTML5, CSS i JavaScript.
PhoneGap je najšire prihvaćen: koristi ga 400.000 razvojnih programera. PhoneGap ima vlastite alate za gradnju i tehnički izvozi aplikaciju koji se mogu pokrenuti i izgraditi unutar Xcode, čineći ga “hibridna aplikacija” - izvorne komponente u kombinaciji s HTML5.
PhoneGap sada ima značajke PhoneGap Build, koji zamjenjuje kompajler Xcode rješenjem temeljenim na oblaku. PhoneGap je besplatan i objavljen pod open-source Apache Public License v2.
Alternative za PhoneGap uključuju:
- Cordova (open-source)
- Sencha Touch (otvorena i komercijalna)
- Suite RhoMobile (otvoreni izvor)
PhoneGap nadmašuje ove alternative podržane uređaje (iOS, Android, Windows Phone, BlackBerry OS, Ubuntu i Firefox OS) i podržani hardver (akcelerometar, kamera, itd.).
Nedostaci za Middleware
Korištenje middlewarea kao što je PhoneGap ima dva glavna nedostatka.
Budući da se svi takvi alati temelje na web tehnologiji, ne mogu koristiti izvorne komponente ubrzane hardverom. Animacije, prijelazi i grafike visoke razlučivosti ne funkcioniraju tako dobro kao u izvornoj aplikaciji, što ga čini nemoguće je koristiti za igre ili vizualno intenzivne aplikacije.
Također, korištenje middlewarea zahtijeva dobro poznavanje kompilatora i alata za izradu, što ga čini nezgodna opcija za početnike.
5. Dizajn: kako se koristi vaša aplikacija
Nije sve što je aplikacija programiranje. Grafički dizajn je velik u industriji aplikacija; to je zahtjev za bilo koju aplikaciju koja želi biti ozbiljno shvaćena. Razmišljate li o programiranju vlastitih aplikacija? Ako to dopušta proračun, angažirajte grafičkog dizajnera. Postoji mnogo onih koji se nalaze na outsourcing web-lokacijama kao što su Elance ili oDesk.
To se kaže, ne trebate grafički dizajner ako tek počinjete. Na iOS-u možete raditi s mnogim pre-fab komponentama koje Apple koristi u svojim aplikacijama i kroz korisničko sučelje operacijskog sustava. Standardne komponente korisničkog sučelja za iPhone ne izgledaju iznimno, ali nisu ni loše. To je sjajan način da započnete bez previše vremena na grafički izgled aplikacije.
Alati i resursi
Smjernice o ljudskom sučelju pružaju dobar pregled dostupnih komponenti i kako ih koristiti.
ikone: Razmislite o korištenju kompleta ikona poput Glyphish (komercijalne). Sastavili su stotine ikona, optimiziranih za iPhone aplikacije, uključujući ikone društvenih medija, gumbe za reprodukciju / zaustavljanje i simbole za zadatke povezane s aplikacijom, kao što su nove, uređivanje i slanje.
skice: Još jedan alat koji svakako morate koristiti je Balsamiq Mockups (besplatno probno, komercijalno). To je uređivač točaka i klikova za izradu modela aplikacija. Model je gruba skica i prikazuje i objašnjava kako vaša aplikacija funkcionira i što radi. Nikada nemojte samo početi programirati: napravite korak unatrag i ponovno razmislite o korisničkom sučelju i izgledu aplikacija tako da napravite maketu.
Jeste li napravili skicirani model, ali ne možete osjetiti kako će aplikacija zapravo izgledati? Radite s dizajnerskim PSD-ovima iz Teehan + Lax (besplatno). Izvukli su sve GUI komponente iz iOS-a i učinili ih dostupnima kao vektorska grafika. Savršeno za izradu grafičkog modela!
6. Kako omogućiti aplikaciju za internet
Je li vaša aplikacija povezana s internetom? Stvaranje prilagođenog pozadinskog jezika s jezicima na strani poslužitelja kao što su NodeJS, Ruby ili PHP može zauzeti puno vremena, novca i truda. Lakše je upotrebljavati alat Platform-as-a-Service, kao što je Parse.
Analiza je rješenje temeljeno na oblaku za pohranjivanje podataka izvanmrežno i online u vašoj aplikaciji. Recimo, stvarate društvenu aplikaciju s nizom slika i ažuriranjem statusa. Možete upotrijebiti Parse kako biste pohranili te podatke u oblaku i upotrijebite njihov SDK da biste dobili od korisnika i korisnika.
Koristeći alat kao što je Parse potpuno uklanja potrebu za izradom prilagođenog pozadinskog dijela. Parseova osnovna razina upotrebe je besplatna, a sljedeće razine počinju od 100 USD / mjesečno.
Alternative za analizu su Appcelerator (middleware + PaaS, komercijalni) i App42 (PaaS + analitika, slobodna razina).
7. Odlazak s beta na život
Prije nego što se aplikacija objavi u trgovini App Store, trebate je prenijeti pomoću aplikacije iTunes Connect. Osnovne podatke svoje aplikacije unosite kao opis, kategorije aplikacija i ikona aplikacije koju ćete koristiti.
Vaša aplikacija tada ulazi u postupak pregleda, što je zahtjev tvrtke Apple. Recenzent iz Applea provjerava je li vaša aplikacija u skladu s Smjernicama za pregled i ima li bugova. To je provjera kvalitete kako biste osigurali da samo dobre aplikacije uđu u trgovinu App Store i od mjesta učitavanja traje oko 2 tjedna da biste pregledali svoju aplikaciju.
Više o Hongkiatu:
- Jednostavno generirajte ikone aplikacija za iOS pomoću značajke MakeAppIcon
- Promovirajte svoju iOS aplikaciju s meta oznakom aplikacije iTunes
- 8 savjeta za povećanje preuzimanja aplikacije
- 20 Oglašivačke mreže za unovčavanje mobilne aplikacije
10 Često postavljana pitanja za stvaranje svoje prve aplikacije
Naravno, u ovom trenutku možda ćete još uvijek imati goruća pitanja vezana uz stvaranje prvih aplikacija za iOS. Pogledat ćemo prvih 10 pitanja koja su novi razvojni programeri zabrinuti.
1. Koliko košta aplikacija?
Trošak razvoja aplikacije može se doista razlikovati od jedne ugovorne tvrtke do druge. Outsourcing freelancers može stvoriti jednostavnu aplikaciju za oko USD3000. Veća poduzeća mogu zatražiti od 25.000 USD do 100.000 USD za složenu aplikaciju, uključujući grafički dizajn i back-end programiranje. Tvrtke kao što su Tinder, Pinterest, Facebook, itd. Mogu potrošiti stotine tisuća na milijune na razvoj i marketing jedan app. Kao i bilo gdje drugdje: koliko platiš, toliko dobiješ.
2. Zaglavio sam s programskom greškom. Kako mogu dobiti pomoć?
Mnogo pitanja za programiranje početnika postavljeno je već na stranicama kao što je StackOverflow. Potražite poruku o pogrešci ili bug koji ste pronašli i najvjerojatnije ćete pronaći rješenje. Kada sami postavljate pitanje, uvijek prvo pretražujte, i pobrinite se da temeljito objasnite svoj problem i reći korake koje ste već poduzeli da biste ga riješili. Quora je dobar medij za postavljanje ne-tehničkih pitanja, kao što su poslovne i UX / UI teme.
3. Imam sjajnu ideju za aplikaciju. Gdje ću početi?
Ako ste ozbiljni u stvaranju tvrtke koja se temelji na aplikaciji, nemojte odmah početi s programiranjem. Prvi, potvrdite svoju poslovnu ideju po bacanje na ciljanu publiku.
Stupite u kontakt s potencijalnim klijentima i pregledajte ih, tražeći povratne informacije.
Imajte na umu to najuspješnije aplikacije rješavaju trenutni problem na takav način da ga klijenti žele platiti. Kada potvrdite svoju ideju i stvorite vezu s prvim klijentima, nastavite s dizajnom i razvojem stvarne aplikacije.
4. Trebam li iPhone za izradu aplikacija?
Ne, ali preporučeno je. Xcode ima iPhone Simulator, koji pokreće vaše aplikacije baš kao i fizički iPhone. Držanje pravog iPhonea s aplikacijom u vašim rukama razlikuje se od gledanja na monitoru računala, pa se preporučuje testiranje aplikacije na stvarnom uređaju..
Imajte na umu da Xcode radi samo na Mac OS X.
5. Nisam dobar u matematici, trebam li ga za programiranje?
Da i ne. To je urbani mit da biti sposoban za kodiranje mora biti dobar u matematici. Mnogi principi programiranja pronalaze svoje korijene u matematici, ali nisu potrebni za osnovno razumijevanje kako izradite aplikacije. Kada zaronite dublje i postanete vještiji u programiranju, otkrit ćete da ste uzeli neke vještine matematike.
6. Radim za tvrtku. Da li slijedim ideju o aplikaciji s tvrtkom ili u svoje slobodno vrijeme?
To ovisi o tvrtki i vašem položaju. Jeste li inženjer i osnovna djelatnost vaše tvrtke na mreži, digitalna ili usko povezana s aplikacijama? Tada ćete možda poželjeti izgraditi prototip i uvjeriti svog nadzornika ili poslodavca da nastavi s tom idejom.
Ako mislite da vaš poslodavac neće vidjeti vrijednost, možete nastaviti s idejom aplikacije u svoje slobodno vrijeme. Budite svjesni svog ugovora s poslodavcem. Izumi napravljeni tijekom vašeg boravka s tvrtkom mogli bi se smatrati intelektualnim vlasništvom tvrtke, a ne vašim.
7. Ideja moje aplikacije već postoji u trgovini App Store. Što da radim sada?
Činjenica da postoji ne znači da je dobra aplikacija. Uvijek možete stvoriti konkurentsku aplikaciju i učiniti ga boljim nego što je već tamo.
Isto tako, činjenica da je jedna aplikacija ne postoji, ali ne čini ga dobrom idejom da ga napravite. Moglo bi se dogoditi da je aplikacija objavljena više puta, ali je izvučena iz App Storea jer nije bilo potrebe za tim.
Uvijek potvrdite ideju svoje aplikacije problem koji rješava i vrijednost koju ima za svoje korisnike.
8. Zašto se iPhone ponekad naziva iOS?
Postoji mala razlika: iPhone je naziv za stvarni hardverski smartphone, a iOS znači “i Operativni sustav”. Vraćajući se u Appleovu povijest, iMac računalo je prvi proizvod koji ima prefiks “ja”. Kasnije su slijedili ovaj stil i stvorili više proizvoda: iTunes, iPod, iPad i iPhone. Prirodno je nazvati operativni sustav koji radi na iPhoneu, iOS-u.
9. Kako učinkovito prodati iPhone app?
O ovom pitanju su napisane čitave knjige! To je teško, ali nije nemoguće odgovoriti. Sve uspješne aplikacije rješavaju jedan problem na takav način da ga ljudi žele platiti.
Možete i vi smislite problem i pronaći ljude koji trebaju vaše rješenje, ili pronaći publiku i anketirajte ih za probleme za koje možete napraviti rješenje. Ostanite u kontaktu s ovom skupinom korisnika i dajte im način da drugima kažu o vašem proizvodu. Preporuke i riječ-od-usta je učinkovit i jeftin marketinški stroj.
10. Koji je najgori način učenja programiranja?
Odustajanje je jedan od najgorih načina učenja programiranja. Učenje nove vještine ima uspone i padove, a možete nastaviti samo slaviti uspone i gledati kroz padove. Odustajanje nije dio jednadžbe.
Također, saznajte koji je vaš stil učenja. Nema smisla gledati videozapise, kada vam je bolje pisati kodove i pokušaje pokušaja i pogrešaka.
Konačno, nemojte nasumice birati knjigu o programiranju iz knjižnice, ali pronaći dokazanu metodu učenja ili put. Kada učite španjolski, ne počinjete s čitanjem rječnika?
Učenje resursa za početak
Ako i dalje želite proći s izradom svoje prve aplikacije za iOS, u ovom odjeljku možete pronaći sve resurse za učenje kako biste započeli.
Razvoj aplikacija uključuje mnogo komponenti, a kada ste novi, može biti veliki izazov upoznati se sa svim alatima. Ne boj se! Možete napraviti svoj prvi app u dan na max, bez prethodnog iskustva programiranja. Jedina stvar koja vam je potrebna je dobar resurs koji vam pokazuje užad i fokusira se na jedan skup alata odjednom. Postoji mnogo početničkih tutorijala na internetu, kao i premium tečajevi.
Proces učenja: Ukratko
Koji je vaš stil učenja? Razmislite o tome prije nego što odaberete resurs.
- Gledanje videozapisa: Razvoj aplikacija za iPhone 193 na Sveučilištu Stanford, dostupan za iTunes U (besplatno).
- Čitanje knjiga: Sams se podučava Swift u 24 sata ($ 25 - $ 35) i Swift Programming Language Book od Applea (besplatno)
- Kodiranje: programski vodiči We Heart Swift, JamesonQuave i AppCoda (sve besplatno).
Kada izradite svoju prvu aplikaciju, to je sjajan plan za kratko uronite u brojne komponente jedno za drugim. Upoznavanje:
- koristeći navigacijski kontroleri, kao što su pločice s pločicama i izbornici hamburgera
- koristeći hardver, kao što su kamera i akcelerometar
- koristeći izgleda, kao što je kontroler prikaza tablice i kontroler prikaza stranice
- Raditi sa animacije i prikaz prijelaza
- životni ciklus aplikacije
- Kompajleri i alati za izgradnju
Većina tih tema zahtijeva nekoliko dana (24 do 32 sata) tinkeringa, pokušaja i pogrešaka i traženja resursa.
Nakon što ste shvatili osnove, uđite ravno rad s internetskim izvorima i rješenjima temeljenim na oblaku kao što je Parse. Sve su aplikacije na ovaj ili onaj način povezane s internetom.
Bez obzira na to, oni koji su navikli učiti nove stvari često mogu opisati svoj vlastiti plan učenja i ne moraju nužno slijediti program kao što su tečaj ili knjiga.
Zamotati
Ne bi li bilo sjajno imati vlastitu aplikaciju u App Storeu? Sada imate osnovni pregled alata koji su uključeni u izradu aplikacija i što je potrebno da naučite kako izraditi vlastite aplikacije. Započnite sa Swiftom čitanjem knjige ili slijedom tutoriala, izradite lijepo sučelje s Balsamiqom, nabavite račun razvojnog programera i objavite tu aplikaciju!
Cijeli popis referenci:
- Xcode
- Izrađivač sučelja
- Program za razvojne programere tvrtke Apple
- iTunes Connect
- TestFlight
- Brz
- Apache Cordova
- PhoneGap
- Sencha Touch
- Suite RhoMobile
- Elance
- oDesk
- Smjernice za ljudsko sučelje
- Glyphish
- Balsamiq makete
- Teehan + Lax iPhone PSDs
- raščlaniti
- Appcelerator
- App42
- Stanford CS 193P razvoj aplikacija za iPhone
- Sams uči sebe brzo u 24 sata
- Mi Srce Swift
- JamesonQuave
- AppCoda
- Knjiga brzog programskog jezika
Napomena urednika: Ovo je napisao / la Reinder de Vries za Hongkiat.com. Reinder je poduzetnik i programer aplikacija koji vjeruje da na svijetu nema dovoljno proizvođača aplikacija. On je razvio 50+ aplikacija i njegov kôd koriste stotine tisuća korisnika diljem svijeta. Kada nije kodirao, on uči aspirantima kako napraviti vlastite aplikacije na LearnAppMaking.com.
Sada pročitajte: Kako integrirati jQuery Mobile u Phonegap / Cordova