Ako ste ikada želeli da probate svoju ruku u razvoju iPhone i iPad aplikacija, sada je najbolje vrijeme za početak. Ne samo da vas je odlaganje dodatno zaostalo u smislu konkurencije na tržištu i pravljenja sopstvene marke, ima puno odličnih alata i usluga koje vam pomažu da brzo brzo stignete.
Najbolja stvar u razvoju aplikacija za mobilne uređaje jeste kako se pojedinac ili par programera mogu takmičiti polu-ravnopravno sa velikim razvojnim prodavnicama. Iako možda ne možete dobiti toliko pomoći od Apple ovih dana, sa najboljom nekretninom u App Store-u obično ide u veće studije, prodaja aplikacija se pokreće toliko u ustima i dobrim pregledima u App Store-u, tako da bilo ko sa odlična ideja može biti uspješna prodaja njihove aplikacije.
Pa kako započeti razvoj iPhone i iPad aplikacija?
Prvo, isprobajte
Prvi korak je igranje sa razvojnim alatima. Zvanična razvojna platforma Apple-a zvana je Xcode i besplatna je download. Nećete moći da stavite svoje proizvode na prodaju bez programerske dozvole, ali možete se igrati sa okolinom i saznati koliko će dugo trajati da biste došli do brzine. Apple je predstavio Swift programski jezik kao zamenu za Objective-C, koji je ponekad bio bolan za korištenje za razvoj. Kao što to podrazumeva, Swift je brža platforma. Ne radi se samo o brzini aplikacije. Swift možda ne može biti brži razvoj aplikacija, ali mnogo je brže programirati pomoću Swift-a od starijih Objective-C.
Napomena: Potreban vam je Mac za razvoj iOS aplikacija, ali ne mora biti najmoćniji Mac na svijetu. Mac Mini je više nego dovoljan za kreiranje iPhone i iPad aplikacija.
Istražite razvojne alatke treće strane
Šta ako nikada ne programirate u "C"? Ili možda želite da razvijete i iOS i Android? Ili možda želite platformu dizajniranu za izgradnju igara? Dostupan je i veliki broj alternativnih opcija za Xcode.
Uvek je dobro držati sa izvornom platformom. Ako šifrujete iOS aplikacije koristeći Xcode, uvek imate pristup najnovijim funkcijama operativnog sistema. Ali ako planirate da oslobodite aplikaciju za više platformi, kodiranje će u svakom trenutku prouzrokovati puno vremena i resursa.
- Jedinstvo. Unity je 3D grafički motor koji uključuje fizički motor. Prvenstveno se koristi za razvoj 3D igara, iako je nedavno dodala 2D podršku. Unity se može koristiti za iOS, Android, Windows, BlackBerry, OS X, Linux, Playstation 3, Xbox 360 i Wii U razvoj. Ovo je odličan izbor ako planirate da pustite igru na više platformi, ali iako ima alate koji vam pomažu da izgrade svoju igru, to nije brži razvoj kao i neko od takmičenja.
- Corona SDK. Korona SDK koristi LUA kao razvojni jezik, a zatim ponovo kompajlira na Objective-C. I zato što LUA brže piše, aplikacije se mogu izgrađivati mnogo brže koristeći Corona SDK. Corona je specijalizirana za 2D grafiku i uključuje sopstveni motor fizike. Takođe možete kompajlirati i za iOS i Android iz jednog skupa koda. Corona takođe podržava izgradnju izvornih Windows i Mac OS aplikacija, ali ne podržava konzole kao PlayStation 4 ili XBOX ONE. Corona je odličan izbor za 2D igre i casual igre.
- Adobe Air. Oni sa pozadinom u Flashu će biti zainteresovani za Adobe Air, koji koristi kombinaciju ActionScript, HTML, CSS i Javascript za izgradnju aplikacija. Adobe AIR omogućava primenu na iOS, Android i BlackBerry.
- Marmelada. Prethodno zvanično Airplay SDK, Marmalada uzima filozofiju pisanja jednom u pokretu, jedan korak naprijed podržavajući više jezika. Pre svega, Marmelada podržava C, ali dvije varijante obezbeđuju most do osnovnog SDK-a: Marmalade Quick, koji koristi LUA i Marmalade Web, koji koristi HTML 5, Javascript i CSS 3. Marmelada se prvenstveno koristi za razvoj 2D i 3D igara.
- PhoneGap. Web programeri će biti zainteresovani za PhoneGap, koji koristi JavaScript, HTML 5 i CSS3 za kreiranje web aplikacija sa mobilnim izgledom i osećanjem. PhoneGap takođe može napraviti izvorne aplikacije tako što će kodirati kod u web objektu unutar platforme. Može se koristiti za iOS, Android, webOS, Symbian, Blackberry, Ubuntu Touch, Windows Phone i Windows 8 razvoj.
Ova lista nikako nije potpuna. Postoje čak i razvojne platforme poput GameSalada koje vam omogućavaju da napravite aplikacije bez bilo kakvog kodiranja. Za kompletnu listu mobilnih razvojnih platformi, možete pogledati listu Wikipedia.
Precizirajte svoju ideju i prilagodite iOS najbolje prakse.
Dobra je ideja da preuzmete slične aplikacije iz prodavnice aplikacija kako biste dobili ideju o tome kako se konkurencija rukovodi aplikacijom, obraćajući pažnju na ono što radi (ne popravljaš ono što nije slomljeno) i šta ne radi. Ako ne pronađete precizan podudar za aplikaciju, preuzmite nešto slično.
Takođe bi trebalo da izvučete olovku i neki papir. Razvijanje grafičkog korisničkog interfejsa (GUI) za iPhone i iPad razlikuje se od razvoja za PC ili web. Moraćete da uzmete u obzir ograničeni ekran, nedostatak miša i fizičku tastaturu i postojanje ekrana osetljivog na dodir. Možda je dobra ideja da izvučete neke od vaših ekrana i rasporedite GUI na papiru kako biste videli kako aplikacija može raditi. Ovo takođe može pomoći u razdvojivanju aplikacije, što vam pomaže da se razbijete za logičan tok u razvoju.
Možete započeti GUI tako što ćete pregledati iOS Smernice za ljudski interfejs na developer.apple.com.
Apple Developer Program
Sada kada imate prefinjenu ideju i znate svoj put oko razvojne platforme, vreme je da se pridružite Appleovom programeru. Morate to uraditi kako biste svoje aplikacije poslali u Apple App Store. Program košta 99 dolara godišnje i nudi vam dva poziva za podršku tokom tog perioda, tako da ako se zaglavite zbog problema sa programiranjem, postoji neka opcija.
Napomena : Moraćete odabrati između upisa kao pojedinca ili kao preduzeća. Upis u kompaniju zahteva pravno preduzeće i dokumentaciju kao što su članovi osnivanja ili poslovna licenca. Doing Business As (DBA) ne ispunjava ovaj zahtev.
Push Hello, World na svoj iPhone ili iPad
Umesto da preskačete direktno u razvoj aplikacija, dobra je ideja da napravite standardnu aplikaciju "Hello, World" i stavite je na vaš iPhone ili iPad. To zahtijeva dobijanje sertifikata programera i podešavanje profila rezervisanja na vašem uređaju. To je najbolje uraditi sada, tako da nećete morati da se zaustavite i shvatite kako to učiniti kada dođete do faze osiguranja kvaliteta.
Da li razvijate igru? Pročitajte više o specifičnostima razvoja igre.
Započnite malu i idite odatle
Ne morate direktno skakati u svoju veliku ideju. Ako znate da aplikacija koju imate na umu može trajati mesecima i mesecima za kodiranje, možete započeti malu. Ovo je posebno efikasno ako ste novi u izgradnji aplikacija. Izolirajte neke od funkcija koje želite da uključite u aplikaciju i napravite sličnu, manju aplikaciju koja uključuje tu funkciju. Na primjer, ako znate da će vam trebati list sa listanjem uz mogućnost da korisnik dodijeli stavke na tu listu, možete napraviti aplikaciju s listom prehrambenih proizvoda. Ovo bi vam omogućilo da eksperimentišete sa kodiranjem specifičnih funkcija pre nego što počnete sa vašom velikom idejom.
Naći ćete da drugi put kada programirate funkciju, uvijek je brži i bolji od prvog. Dakle, umesto da pravite greške unutar svoje velike ideje, to vam omogućava da eksperimentišete izvan projekta. A ako razvijete malu aplikaciju koja se može prodavati, možete napraviti nešto novca dok naučite kako kodirati svoj veći projekat. Čak i ako ne možete da razmišljate o tržišnoj aplikaciji, jednostavno igranje sa funkcijom u izolovanom projektu može biti dobar način da naučite kako da ga implementirate u svom glavnom projektu.