Poštovani, ovim člankom otvaram novu rubriku posvećenu programiranju za iPhone, gdje ćemo se dotaknuti tema koje su zanimljive kako početnicima i neupućenima, tako i ObjC guruima, koji, nadamo se, neće iznevjeriti da ispravimo naše greške svojim komentarima. Današnja lekcija je samo u informativne svrhe.

Ciljevi lekcije

1. Gdje započeti programiranje za iPhone.
2. Gentleman's developer kit.
3.Domaći.

Uvod

Svi vidimo divlji uspjeh AppStorea, dijelovi aplikacija rastu kao gljive nakon kiše. Urednici svih informativni portali Oborili su ih s nogu oko iPhonea i, ne zatvarajući oči, pišu, pišu i pišu kritike. A programi se stalno pojavljuju i pojavljuju i pojavljuju. Vrijeme je da se uključimo u ovaj proces i uzmemo svoj dio svečane pite.

Gdje početi? Pitanje je prilično retoričko. Naravno, ako ste, dragi čitaoče, pravnik ili, recimo, građevinar, biće vam veoma teško da počnete i najverovatnije ne biste to trebali da radite ozbiljno, jer je, kako mi se čini, bolje uradite jednu stvar dobro nego nekoliko stvari uradite loše. Ipak, nećemo isključiti ni trenutak da poželite da programirate za dušu, da je to vaš novi hobi. Dobar dan onda. Međutim, ako ti, dragi moj prijatelju, već imaš iskustva u razvoju aplikacija, bez obzira na jeziku - C, Pascal, Assembly, Delphi ili konačno BASIC ili čak Logo (postojao je jedan u mom udžbeniku informatike početkom 90-ih), onda definitivno bi trebalo da se okušam u iPhone aplikacijama.

Ovdje dolazimo do odgovora na glavno pitanje, odakle početi. Počnite s osnovama, ne morate ići daleko, dat ću vam samo nekoliko linkova koji će vas na kraju odvesti "u Kijev":

1. Za ljude koji općenito nisu upoznati sa jezikom C - počnite s ovim

2. Prilikom programiranja za iPhone, trebat će vam znanje OOP-a (cilj orijentirano programiranje). Nije tako komplikovano kao što bi ime moglo sugerisati, u stvari, OOP se zasniva na nekoliko osnovnih principa, koje, kada ih razumete, možete lako da kreirate remek-dela. Pročitajte o OOP-u.

3. Ako poznajete osnove C, a OOP vam ne stvara nikakve poteškoće, ipak vam se preporučuje da pročitate razliku između Objective-C koji se koristi u MacOS-u (i iPhone-u) od tradicionalnog C i C++. Ovo je vrlo dobro opisano.

4.Također ćete naći odgovore na mnoga pitanja na našem forumu u.

Džentlmenski iPhone programerski komplet, poput putničke toaletne torbe, prilično je rijedak i, u principu, u početnoj fazi ne zahtijeva ništa više od prirodnog i skupog. Evo svega što nam je potrebno za početak:

b) Operativni sistem MacOS Leopard verzija 10.5.5.

c) Toolkit sa Apple web stranice, takozvani SDK, razvojni komplet. Ovaj paket sadrži sve što je potrebno za razvoj. Možete ga preuzeti ovdje: http://developer.apple.com/iphone, nakon registracije.
d) Takođe nam je potrebno strpljenje i upornost. Bez ovoga, nažalost, nema šanse.

Mnogi ljudi mogu odmah odustati nakon tačke A. Iskreno ću vam reći, prije nego što sam upoznao iPhone, nikada nisam bio u interakciji s Appleom, i napisao sam svoj prvi program za iPhone čak i bez MacBook-a. Ja sam strastveni korisnik Windows-a koji je svoj odrasli život započeo sa Windowsom 3.1 i doživio sam Windows Vista, oduševila me pogodnost MacOS-a i nimalo ne žalim zbog ove kupovine, iako još uvijek provodim lavovski dio svog vremena na računarima sa OS-om od Billa Gatesa.

Za one koje ove riječi ne uvjeravaju, još uvijek postoji izlaz. Od prelaska Apple računara na platformu sa Intel procesor- pojavila se prilika (naravno, ne bez plesa i tambura) da instaliram MacOS na običan PC računar, priznajem - to sam uradio sam. U svijetu je takav OS poznat pod različitim nazivima: Kaliway, Hackint0sh itd. Na svim uslugama hostinga datoteka možete lako pronaći sliku koja vam je potrebna, a preuzimanjem možete instalirati Makos na svoj računar. Čak i ako želite, pokrenite ga u prozoru VMWare. Neću opisivati ​​kako se sve ovo radi, nije prikladno promovirati metode zaobilaženja licence na Mac-ovima, ali ću se potruditi da vas upozorim na neke greške, izbjegavajući koje možda nećete izgubiti interes za programiranje čak i na početku faza pripreme alata:

1. Prilikom instaliranja UVIJEK koristite poseban čvrsti disk povezan kao glavni na IDE ili SATA nultu magistralu.
2. Ne pokušavajte da instalirate Leopard ispod VMWare-a - proveravao sam mnogo puta - nemoguće je, iako ima ljudi na mreži koji tvrde da su to uradili.

3. Nakon što instalirate Makos, možete pokušati da ga pokrenete iz Windows-a na WWW-u, ako imate dovoljno resursa. Takođe, poseban problem su drajveri. Mrežni će vas najvjerovatnije sam sustići, video će biti 800x600 - glupo VGA. Ali šta da radite sa svojom 8800GTX karticom, Wi-Fi adapterom i plavim zubom, onda zavisi od vaše sreće (češće nego ne).

4. Bez obzira na to na koliko slika sam naišao - sve su imale verziju 10.5.1 ili 10.5.2, ali će nam trebati barem 10.5.5 za rad. Ja ažuriram svoj Mac preko interneta, ali sa Hackintosh-om, prilikom ažuriranja na 10.5.5, ovaj trik neće raditi - uhvati jabuku, također je testiran mnogo puta. Na mreži postoji algoritam kako ažurirati hackin na 10.5.5 uz održavanje funkcionalnosti sistema - potražite ga, naći ćete ga.

I tako, alati su opisani, idemo na domaći zadatak.

Naša domaća zadaća će biti jednostavna, ali vrlo važna, ako je ne završite, sve druge lekcije će vam postati beskorisne. HTML tekst, a moj rad neće vrijediti ni prokletog novca. I tako, dragi iPhone programeri, dok pišem lekciju br. 2, trebali biste:

A) Uzmite Mac ili instalirajte Hackintosh (samo u informativne svrhe)

B) Ažurirajte ga na verziju 10.5.5.

C) Preuzmite i instalirajte SDK od Apple-a. Preuzmite gomilu primjera s mreže, pokušajte ih sve kompajlirati. Općenito, počnite nasumično učiti (najčešća metoda u našoj zemlji, zadivljujuća po svojoj djelotvornosti).

Pišite recenzije.
Rashid (aka rashn).

Molimo ocijenite.

Pogledajmo prvo važnost razvoja Apple uređaja općenito. Zaista, danas u App Store Postoji više od 2 miliona aplikacija.

Svaka aplikacija i njeno ažuriranje moraju proći strogu moderaciju. Sve aplikacije u trgovini se ažuriraju svakih 1 mjesec.

Svaki programer koji poštuje sebe želi da napravi najkvalitetniju aplikaciju sa prelepim animacijama, dobro dizajniranim korisničkim interfejsom i maksimalnim performansama.

Razvoj aplikacija za iOS ili kako još više voljeti Apple

Plata iOS programera varira od 60.000 do 250.000 rubalja. Relevantnost razvoja za iOS je neosporna.

U ovom članku ćemo kreirati aplikaciju u kojoj ćemo prikazati poruku “Halo World” na početnom ekranu i nećemo pisati ne linija koda.

Hajde da shvatimo šta nam je potrebno da bismo razvili najprimitivniju iOS aplikaciju:

  1. Uređaj sa ugrađenim MacOS-om
  2. Preuzet Xcode

Kao što vidite, glava nam ne treba. Da, Apple je uložio sve napore da pojednostavi proces što je više moguće i smanji vrijeme razvoja mobilnih aplikacija za svoje platforme, kao što su: iOS, tvOS, macOS, watchOS. Apple je 2014. godine predstavio i programski jezik Swift, koji je vrlo jednostavan za programere početnike i vrlo funkcionalan za profesionalce. Ako možete kreirati aplikaciju za jednu Apple platformu, na primjer, iOS, onda vam neće biti teško kreirati aplikaciju za druge platforme. Sve je objedinjeno do te mjere da možete koristiti gotovo isti kod, pokrenuvši ga različite vrste uređaja.

Idemo!

IZRADA PROJEKTA

I tako, kao što je ranije pomenuto, potreban nam je kompjuter Apple, And instaliranu aplikaciju Xcode, koji je u App Store slobodno dostupan.

Hajde da shvatimo šta je to Xcode i zašto nam treba.
Xcode je okruženje za razvoj softvera koje uključuje: uređivač koda, uređivač grafičkog interfejsa, sistem kontrole verzija i alate za otklanjanje grešaka i postavljanje aplikacija koje smo napisali. Ukratko, ovo je program u kojem se obavlja 90% svih interakcija u razvoju aplikacija za porodicu operativnih sistema Apple.

I tako, nakon pokretanja okruženja za razvoj softvera, vidimo prozor dobrodošlice u kojem možemo otvoriti, kreirati ili klonirati projekat. Moramo kreirati novu klikom na “Kreirajte novi Xcode projekat”. Da, cijeli interfejs Xcode na engleskom, pa vam savjetujem da nabavite englesko-ruski rječnik.


Sledeći korak vidimo ovaj prozor:

gdje se od nas traži da izaberemo platformu i tip aplikacije. Potreban nam je iOS softver (na vrhu dijaloga) i aplikacija Single View. Svaka aplikacija počinje sa jednim pogledom, a zatim raste do 50 aplikacija za pregled.

Sljedeći korak je unos naziva projekta, organizacije u kojoj ga razvijamo, odabir jezika i uključivanje/isključivanje dodatnih funkcija.


Idemo redom:


Nakon što unesete podatke, kliknite Sledeći, i odaberite lokaciju projekta na našem računalu i kliknite Kreiraj

PREGLED RAZVOJNOG OKRUŽENJA

Naš glavni radni prostor se otvara i hajde da shvatimo šta imamo ovde. Podijelimo cijelu aplikaciju na nekoliko dijelova: gore, lijevo, desno, dolje i srednje.



Na vrhu radnog prostora vidite dugmad lansirati ili zaustavlja aplikacije, polje postavki pokretanja, koje se sastoji od dva dijela: šta pokrećemo, na čemu pokrećemo.

Vidimo i statusnu traku, u kojoj možemo vidjeti trenutni zadatak koji izvršava razvojno okruženje, desno možemo vidjeti postavke prikaza uređivača: standardni editor, urednik sa asistentom I pogledajte promjene u sistemu kontrole verzija, a tu su i dugmad za prikaz/sakrivanje dijelova okruženja, koje ćemo pogledati u nastavku: ispod (informacije o otklanjanju grešaka), tačno (navigacija) i otišao (komunalne usluge)

lijevo vidimo nekoliko dugmadi koja će prebaciti funkcionalnost lijevog panela, i to:

  1. Kretanje kroz fajlove i foldere
  2. Sistem kontrole verzija
  3. Hijerarhija klasa u projektu
  4. Traži po projektu
  5. Obavještenja o upozorenjima i greškama izgradnje
  6. Automatizovani testovi
  7. Otklanjanje grešaka
  8. Prelomne tačke
  9. Build logs

U redu imamo dva dela: gornji i donji dio. Cijeli desni panel se zove uslužni programi. Na vrhu ćemo vidjeti postavke za odabranu datoteku i/ili UI element. Na dnu uslužnih programa vidimo elemente korisničkog sučelja koje možemo koristiti.

IN donji dio okruženje za razvoj softvera, možemo vidjeti informacije o otklanjanju grešaka, dnevnike aplikacija i drugo korisne informacije provjeriti korektan rad aplikacije. Donji dio možete otvoriti pomoću pretposljednjeg dugmeta na vrhu aplikacije, a ovaj panel se otvara automatski nakon pokretanja.

I unutra glavni (centralni) dio okruženju možemo posmatrati uređivač u kojem se piše kod i radi na korisničkom interfejsu aplikacije.

A u glavnom (centralnom) dijelu okruženja možemo vidjeti editor u kojem se piše kod i radi na korisničkom interfejsu aplikacije.

  1. Identitet
    1. Ime za prikaz— naziv aplikacije koja će biti prikazana na početnom ekranu uređaja
    2. Bundle ID— Jedinstveni identifikator koji će se koristiti u App Store-u
    3. Verzija -trenutna verzija projekta, koji se provodi korištenjem semantičke verzije
    4. Build— Broj gradnje, koji treba povećati za jedan sa svakom instalacijom aplikacije na uređaju
  2. Potpisivanje
    1. Automatski upravljajte potpisivanjemautomatska kontrola potpis aplikacije
    2. Tim- ime vašeg tima
    3. Profil provizije— profil za potpisivanje aplikacije
    4. Potpisivanje certifikata- sertifikat koji vam omogućava da potpišete aplikaciju sa Apple-om
  3. Informacije o implementaciji
    1. Deployment Target— minimalna verzija iOS-a na kojoj se aplikacija može instalirati
    2. Uređaji— Vrste uređaja
      • iPhone
      • Universal
    3. Glavni interfejs— Storyboard fajl iz kojeg će aplikacija početi nakon toga
    4. Orijentacija uređaja— Moguće orijentacije uređaja pri radu sa aplikacijom
      • Portret
      • Naopako
      • Pejzaž u smjeru suprotnom od kazaljke na satu
      • Pejzaž u smjeru kazaljke na satu
    5. Stil trake statusa— Statusna traka u boji (gornja informativna tabla sa vremenom, operaterom i baterijom)
      • Light
      • Dark
      • Sakrij se
  4. Ikone aplikacija i slike pokretanja
    1. Izvor ikona aplikacija— ikona aplikacije
    2. Pokrenite datoteku ekrana— ekran koji se prikazuje dok je aplikacija pokrenuta

Ostatak nam za sada neće trebati.

Sada kada smo shvatili od čega se sastoji naše razvojno okruženje, možemo početi kreirati našu aplikaciju “Hello World”.

Ako ste zainteresovani gotovi šabloni, onda obratite pažnju na našu recenziju onlajn dizajnera, uz pomoć kojih možete sami razviti aplikaciju za svoj telefon ili tablet.

KREIRAJTE APLIKACIJU

Prije svega, trebamo pronaći datoteku interfejsa, koja se zove Main.storyboard. Može se naći na lijevoj strani u navigacijskoj traci.

Nakon otvaranja datoteke, vidimo ekran aplikacije. Sada treba da prevučemo element koji se zove Label na ovaj ekran. Ovaj element se nalazi dolje lijevo.
Prevucite ga bilo gde na ekranu. Zatim na panelu uslužnih programa potražite polje koje kaže "oznaka".
I mi se menjamo Label on Hello World. Nakon toga ćemo vidjeti da naš element na ekranu ne prikazuje u potpunosti naš tekst koji smo unijeli, budući da je u početku imao manji tekst, a poprimio je svoje dimenzije.

Prisilimo da ovaj element bude fiksiran u sredini ekrana i poprimi ispravan oblik tako da se naš tekst u potpunosti prikaže. Da bismo to uradili, moramo pronaći drugo dugme u donjem levom uglu, koje se zove Poravnajte i kliknite na njega.


Ovdje vidimo neke opcije za lokaciju našeg elementa. Potrebna su nam zadnja dva parametra. Aktivirajte ih i pritisnite “Dodaj 2 ograničenja.” Nakon toga možemo vidjeti kako je naš element fiksiran na sredini ekrana i poprima oblik u kojem je naš tekst prikazan u cijelosti.

MONTAŽA I LANSANJE

Sada trebamo pokrenuti našu aplikaciju na uređaju i vidjeti da li je sve ispravno prikazano. Da bismo to učinili, kliknemo na izbor odredišta za pokretanje aplikacije na vrhu i vidimo padajuću listu:
Na ovoj listi vidimo uređaje i simulatore uređaja na kojima možemo pokrenuti našu aplikaciju. Odaberite bilo koji i kliknite Trči. Aplikacija će se početi graditi i Xcode će nam pokazati zadatke u kojima obavlja trenutno vrijeme:
Nakon uspješne izgradnje projekta, vidjet ćemo da će Xcode preći u stanje pripravnosti da bi se aplikacija pokrenula i prozor simulatora će se pojaviti i učitati. Kada se simulator učita, moći ćemo da posmatramo našu aplikaciju na uređaju

  1. Programski jezik. Šta trebate znati za pisanje aplikacija za iOS.
  2. Trebate li dizajnera, programera interfejsa ili nekog drugog?
  3. Službeni dio: certifikat programera.
  4. Potrebna oprema za ugodan razvoj.
  5. Vječno pitanje: AndroidOS ili iOS?
  6. Šta treba učiniti danas?
  7. Kreiranje novog projekta.
  8. Kompilacija. Šta je to i zašto je potrebno?
  9. Trčite na simulatoru.
  10. Štampamo “Zdravo, svijete!”
  11. Koji standardni prikazi postoje u iOS-u?

Programski jezik. Šta trebate znati za pisanje aplikacija za iOS

Programski jezik(wikipedia.org) - formalni sistem znakova dizajniran za snimanje kompjuterski programi. Programski jezik definira skup leksičkih, sintaksičkih i semantičkih pravila koja definiraju izgled programe i radnje koje će izvođač (računar) izvoditi pod svojom kontrolom.

Možda je pitanje koje sam postavio u naslovu ovog dijela prilično složeno. Mogu jednostavno odgovoriti - Objective-C. Da sam tu stao, pogrešio bih. Rekao bih da je Objective-C minimum. Nedavno je bila konferencija Yandex-a - YET, na kojoj je jedan od izvještaja bio posvećen programskim jezicima koje programer treba znati. Odgovor je bio otprilike ovako: “Mora stalno učiti nove i nove programske jezike, ne zaustavljajući se ni na jednom posebno.”. U potpunosti se slazem sa ovim. Učeći nove programske jezike, naučite nove pristupe i metode programiranja. Stoga, da biste pisali aplikacije za iOS, morate znati Objective-C, ali je preporučljivo znati i druge programske jezike kako bi vaš kod bio dobar, efikasan i fleksibilan.

Ako još niste programer, savjetujem vam da počnete s jezikom C. Preuzmite knjigu Kernighan i Ritchie ( ili bolje kupiti) o C jeziku, pročitajte, uradite sve što vam se predloži, a nakon toga bih vam savjetovao da pređete na Objective-C. Ako već znate kako pisati programe, spremni ste lako odgovoriti na pitanja - „Šta su tipovi podataka? Šta je varijabla? Što je funkcija ili metoda? Šta je veza i pokazivač? šta se desilo"uključiti”?” , znate C ili C++ ili Javu ili C#, onda ste spremni da napišete svoju prvu aplikaciju za iOS.

Također morate znati osnove OOP-a i obrazaca dizajna. Lista bi se vjerovatno mogla nastaviti u nedogled, ali jedva da sam spreman tražiti kvalitativno objašnjenje ovih koncepata. Da, nažalost, Objective-C nije jezik s kojim možete započeti svoje programsko putovanje. Ali ako volite i želite da stvarate, onda je vrijeme da otrčite u prodavnicu, kupite knjige i započnete svoj razvojni put.

Trebate li dizajnera, programera interfejsa ili nekog drugog?

Još jedno, ništa manje jednostavno pitanje. Ako ste programer i znate pisati konzolni programi i želite početi pisati aplikacije za iOS, tada vam u početnoj fazi takva osoba ne treba. Ako imate iPhone || iPad || iPod Touch, upoznati ste sa iOS-om, onda vam ne treba front-end programer. Općenito, Apple ima takav dokument - LjudskiInterfaceSmjernice. IN ovaj dokument opisuje gdje i koji element interfejsa treba koristiti. Stoga, u početnoj fazi možete bez trećih strana. Općenito, iOS SDK pruža dovoljno mogućnosti za slikanje sučelja aplikacije, tako da ne morate crtati nikakve gumbe ili višebojne tekstove, gradijentne ispune itd. u PS-u. Kasnije ćemo kreirati prvi projekat u kojem ćemo se upoznati sa svim fazama kreiranja aplikacije “Zdravo, svijete!”

Međutim, morate shvatiti da kada počnu ozbiljni projekti, aplikacije koje želite da objavite u AppStoru, biće vam teže bez dizajnera i programera. Poteškoća se može manifestirati u različitim fazama - bilo tokom razvoja aplikacije, kada provodite sate tražeći potrebnu sliku ili sjedite i kreirate u PS-u, ili nakon što objavite aplikaciju i počnete primati komentare od naših voljenih korisnika koji će se žaliti na vaše loše dizajn besplatna aplikacija. Naišao sam na slične probleme u obje faze. Nakon što sam dobio užasne komentare na AppStore-u, htio sam napustiti svoju aplikaciju, koja je inače besplatna, i zaboraviti na nezahvalne korisnike. Međutim, korisnost same aplikacije za mene, kao i mnoge druge korisnike, natjerala me da progutam te ljutite komentare i nastavim razvijati aplikaciju. Prije otprilike tri mjeseca počeo sam razvijati aplikaciju zajedno sa dizajnerom koji mi govori šta da ubacim i gdje, koju boju da odaberem, gdje i koju sliku da nacrtam, a ovo je, želim reći, prilično zgodno. Stoga vam ipak savjetujem da u nekom trenutku počnete koristiti usluge dizajnera kako biste dobili dobre povratne informacije od korisnika. I zapamtite - korisnici iOS uređaja žele vidjeti dobro dizajn aplikacije, čak i ako trpi njena funkcionalnost.

Službeni dio: certifikat programera

Vjerovatno ste već čuli mnogo o nekakvim programerskim certifikatima. Sada ću pokušati da vas obavestim o tome zašto je to tako i da li vam je to potrebno upravo sada. Programerski certifikat je datoteka, baš kao i svaki drugi certifikat. Ovu datoteku vam daje Apple nakon što prođete sve faze registracije u sistemu. iOS (MacOS) Developer (Enterprise) Program.

Šta će vam to dati? ovaj fajl i registracija u nekom od gore navedenih programa? Odgovori na ovo pitanje su neodoljivi mrak. Stoga ću reći samo o najvažnijim stvarima (sve dolje opisano vam je dato za tačno godinu dana):

  • testiranje vaših aplikacija na vašim uređajima (iako se čini da se ovo može hakovati i može se obaviti bez certifikata)
  • pristup forumu za programere na Apple portalu (iako postoji zajednica na StackOverflow.com, gdje možete mnogo brže pronaći odgovor na svoje pitanje)
  • mogućnost preuzimanja beta verzija (i naravno trenutnih) iOS-a i Xcode-a
  • mogućnost instaliranja beta verzije iOS verzije na svoj uređaj
  • mogućnost objavljivanja aplikacije u AppStore-u
  • mogućnost povezivanja do 100 uređaja s vašim računom, čime se omogućava ovim uređajima da instaliraju beta verzije iOS-a, testiraju vaše aplikacije (još nisu objavljene u AppStoreu) i još mnogo toga nezakonitog
  • prilika da pokažete svojim prijateljima da ste službeni programer iOS aplikacija

Ako odlučite da vam je potreban takav certifikat, budite spremni odvojiti se od 100 USD (300 USD za Enterprise), pošaljite faks u SAD, unesite svoj bankovnu karticu(pažnja! Vaše, upravo vaše), pa, završite čitanje ovog poglavlja.

Pa, idemo.

  1. Pratite ovaj link http://developer.apple.com/programs/ios/
  2. Kliknite na Upiši se sada
  3. Pažljivo čitamo poplavu i idemo dalje – Nastavi
  4. Ovdje imamo 4 boda:?a. Da li želite da kreirate nova jabuka ID za Apple Developer Program? b. Želite li koristiti postojeći Apple ID?c. Da li ste već registrovani kao jednostavan programer, a sada želite da postanete zvanični programer sa svim gore opisanim pogodnostima? Već ste član iOS ili Mac Developer Programa i želite da povežete drugi program sa svojim nalogom
  5. Prijatelji, zatim morate proći kroz nekoliko koraka kako biste popunili svoje lične podatke. Ne sjećam se više tačno šta je tamo. Ako imate pitanja, pitajte u ovoj temi, odgovorit ću na sve što mogu.
  6. Dobili ste vezu do .pdf datoteke koju trebate popuniti i poslati faksom Appleu.
  7. Ispisujemo ga i popunjavamo (vrlo pažljivo i pažljivo).
  8. Šaljemo faks u Apple ured u SAD-u. (Pazite da vam faks ne padne u pogrešne ruke, jer tamo navedete broj bankovne kartice i CVV).
  9. Čekamo N broj dana (sedmica) da Apple obradi vaš zahtjev.
  10. Primili smo pismo u kojem vam čestitamo što ste se prijavili za program i izgubili sto dolara. Ura!

Nakon uspješnog završetka misije, imat ćete pristup http://developer.apple.com/membercenter/. Možda pregled te stranice ili zahtijeva poseban članak ili zahtijeva Google/Yandex pretragu.

Pa, prijatelji, pređimo na preostala pitanja na dnevnom redu.

Potrebna oprema za ugodan razvoj

Ako ste ozbiljno odlučili da počnete da razvijate aplikacije za iOS, onda toplo preporučujem da odmah kupite računar/laptop sa MacO. Najjeftinija opcija je Mac Mini, ili bilo šta korišteno. Ako ste student i nosite opremu sa sobom - Macbook Air. Ako imate puno novca i želite moćan laptop za sve namjene - za igranje igara, složene računarske zadatke i programiranje - Macbook Pro. Ako želite da uzmete desktop računar– iMac ili Mac Mini. Za razvoj će vam odgovarati bilo koji računar u bilo kojoj postojećoj konfiguraciji. Veličina ekrana je po vašem nahođenju. Ja lično sada sedim ispred Macbooka 13” i Mac Mini 17”. Zadovoljan sam sa oba displeja. Ako ništa drugo, uvijek možete spojiti vanjski monitor na svoj laptop.

Ne zaboravite da će vam prije ili kasnije trebati iPhone, iPod ili iPad. Ne morate se oslanjati samo na iOS simulator, koji se distribuira u istom paketu sa Xcode-om. Uvijek testirajte verzije izdanja na uređajima. Ili - potražite testere (odgovorne i savjesne).

Ako niste spremni potrošiti toliko novca na novu opremu, onda možete pokušati instalirati Hackintosh na svoj računar.

Vječno pitanje: Android ili iOS?

Moguće je da je ovo pitanje trebalo postaviti na samom početku, ali se i dalje nalazi na kraju ovog članka. Jeste li sigurni da se želite okušati na terenu? mobilni razvoj, ali ne znate koju mobilnu platformu odabrati? Ne mogu vam odgovoriti na ovo pitanje. Ali znam jednu stvar - ako želite da razvijate aplikacije za iOS, onda morate voljeti Apple proizvode i operativni sistem iOS i MacO. Možete pitati - zašto je to? Odgovor je jednostavan – morate voljeti ono što radite, morate stvarati. Tek tada ćete moći razviti zaista cool i koristan proizvod. Samo u ovom slučaju ćete uživati ​​u učenju Objective-C i iOS-a. Mislim da je ovo veoma važno. Ako imate slična osećanja prema Apple proizvodi, onda slobodno uđite u područje razvoja iOS-a. Ako mislite - znam Javu, ali ne znam Objective-C, ali volim iOS više nego AndroidO - onda odaberite iOS. Ne, ali šta ste očekivali da počnem hvaliti Android OS?

Sviđa mi se i iOS sfera zbog prodavnice aplikacija. Tamo je sve lijepo, korektno i vrlo je stroga moderacija aplikacija. Deponija aplikacija koja je sada u Android OS-u je jednostavno užasna, kako za korisnike tako i za dostojne programere.

Šta treba učiniti danas?

Danas morate odlučiti: kada počnete da razvijate aplikacije, da li će vaše trenutno iskustvo biti dovoljno za učenjeCiljC, imate li neophodnu opremu, i što je najvažnije, želju?

Zdravo, svijete.

Provjera spremnosti

Pređimo s teorije na praksu. Za praktičnu lekciju trebat će vam Xcode 4.2 sa iOS SDK-om, po mogućnosti programerski certifikat, poznavanje C, C++, Jave ili Objective-C (pa, možda će poznavanje drugih jezika biti prikladno) i, na kraju, želja da počnete pisati aplikacije za iOS. Ako vam nešto nedostaje, na primjer, certifikat programera, onda će vam članak i dalje biti relevantan. U svakom slučaju, čini mi se da bi svaki korisnik iOS uređaja trebao biti zainteresiran da pogleda unutrašnje funkcionisanje razvoja aplikacija.

Kreiranje novog projekta

Idemo. Kliknite na ikonu Xcode. Otvoriće se prozor sličan ovome:

Odaberite stavku "Kreiraj novi Xcode projekt". U sljedećem prozoru odaberite tip projekta. Trebamo: “iOS – Aplikacija – Aplikacija sa jednim pogledom”.

Kliknite na Next. Videćemo prozor sa sledećim sadržajem:

Dozvolite mi da objasnim polja za unos:

  1. Naziv proizvoda – Naziv novog projekta – možete unijeti bilo šta, ali savjetujem vam da koristite nazive identične mojim, jer ću ih povremeno pozivati.
  2. Identifikator kompanije - Identifikator vaše kompanije - možete ga popuniti kako želite.
  3. Bundle Identifier – jedinstveni identifikator za vašu aplikaciju. Ovo polje se može naknadno uređivati.
  4. Prefiks klase – prefiks koji će biti dodijeljen imenima svih klasa koje kreirate u projektu. Ostavio sam polje prazno ( "XYZ"– ovo je samo nagoveštaj).
  5. Porodica uređaja – na koje tipove uređaja se projekat može instalirati. Možete odabrati jednu od tri opcije: iPad/ iPhone/ Universal. Njihova svrha je očigledna. Ako trenutno ne možete odlučiti da li trebate kreirati univerzalna primjena, tada možete odabrati bilo koju od drugih opcija. Ovo se može ispraviti u bilo kojoj fazi životnog ciklusa softvera.
  6. Koristi Storyboard – Ovo se odnosi na kreiranje modela korisničkog interfejsa. Dodato uz iOS5, tako da kada koristite ovaj horor, vaša aplikacija može biti instalirana samo na uređajima sa iOS5 ili novijim.
  7. Koristi automatsko brojanje referenci je nova funkcija Apple LLVM 3.0 kompajler – automatski (skoro) upravlja memorijom (prati curenje, zombije i druge užase). Rekao bih da je za početnika idealna opcija. ALI – 1) nije sve tako automatski, 2) da li više verujete kompajleru nego sebi?, 3) Preporučujem ručno upravljanje memorijom.
  8. Uključi jedinične testove – povežite jedinično testiranje sa projektom.

Vidjet ćete prozor za odabir kategorije u koju će se projekt postaviti. Samo želim da vas upozorim da će se u folderu koji ste odabrali automatski kreirati folder sa imenom vašeg projekta, odnosno nema potrebe za kreiranjem dodatne fascikle za određeni projekat.

Ne označavamo potvrdni okvir “Kreiraj lokalno git spremište za ovaj projekat”. Bolje je da povežemo naš projekat sa repozitorijumom koda kasnije, ako je potrebno.

Kliknite "Kreiraj" i vidite novi prozor, prozor našeg radnog prostora:

I tako, napravili smo projekat, neki fajlovi su generisani, neki prozori su otvoreni.

Hajde da pogledamo fajlove u navigacionom meniju:

  • datoteke sa sufiksom “.h” su zaglavlja, gdje ćemo dati opise klasa
  • fajlovi sa sufiksom “.m” su implementacioni fajlovi, gde ćemo implementirati prethodno opisane klase
  • datoteke sa sufiksom “.xib” su datoteke koje opisuju interfejs jednog prozora aplikacije

Sastavljanje projekta

kompilacija -

  1. prevod programa na jezik blizak mašinskom jeziku i njegovo naknadno sklapanje.
  2. prevođenje programa napisanog na izvornom jeziku u objektni modul (koje izvodi kompajler) i njegovo naknadno sklapanje u programski modul spreman za upotrebu.
  3. prevod programa napisanog na izvornom jeziku i njegovo naknadno sklapanje u program u nekom mašinski nezavisnom interpretiranom kodu niskog nivoa (kao, na primer, u slučaju jezika Java).

Proces kompilacije sastoji se od sljedećih faza:

  1. Leksička analiza. U ovoj fazi, niz znakova u izvornoj datoteci se pretvara u niz tokena.
  2. Sintaktička (gramatička) analiza. Niz tokena se pretvara u stablo raščlanjivanja.
  3. Semantička analiza. Stablo raščlanjivanja se obrađuje kako bi se uspostavila njegova semantika (značenje) - na primjer, vezivanje identifikatora za njihove definicije, tipovi podataka, provjera kompatibilnosti tipova podataka, određivanje rezultirajućih tipova podataka izraza, itd. Rezultat se obično naziva "srednja reprezentacija/kod ", a može se dopuniti stablom za raščlanjivanje, novim stablom, apstraktnim skupom naredbi ili nečim drugim pogodnim za dalju obradu.
  4. Optimizacija. Suvišne naredbe se uklanjaju i kod se pojednostavljuje (gdje je to moguće) uz očuvanje njegovog značenja, odnosno algoritma koji implementira (uključujući unaprijed izračunate (tj. izračunate u fazi prevođenja) izraze, čiji su rezultati praktično konstanti) . Optimizacija može biti na različitim nivoima i fazama - na primjer, na međukodu ili na konačnom mašinskom kodu.
  5. Generisanje koda. Iz srednjeg prikaza generiše se kod na ciljnom jeziku (uključujući povezivanje programa).

Više jednostavnim jezikom od mene. Faza leksičke analize provjerava da li su svi znakovi u vašem izvorni kod idite pravim redoslijedom i pridruženi simboli u sljedećim fazama će se smatrati kao jedinstvena cjelina - leksema. U fazi raščlanjivanja provjerava se da li se sve lekseme nalaze u ispravnom redoslijedu, na pravim mjestima, u ispravnom redoslijedu. Konačno, u fazi semantičke analize, provjerava se podudaranje tipova podataka.

I tako, kada kliknete na “Build project”, tada se prvo vrši leksička analiza vašeg koda, ako je uspješna, zatim raščlanjivanje, a zatim semantička analiza. U Xcode-u je uvijek pokrenut određeni lagani proces koji obavlja ovu funkciju, čime se traži od programera "u hodu". Na primjer, ako niste stavili ";" ili odjednom izjednačite int sa određenim nizom znakova, tada će Xcode podvući niz crvenom valovitom linijom.

Trčanje na simulatoru

I zato, hajde da pokušamo da pokrenemo naš projekat, za koji još nismo lično napisali ni jednu liniju koda.

Da biste to učinili, pogledajmo meni: Shema kompilacije(na mom snimku ekrana je dodijeljena zelena boja). Dijagram je određena konfiguracija projekta. Xcode ga automatski generiše. Kliknite na liniju desno od naziva projekta (naziv uređaja ako uređaj nije povezan, pisat će “iOS uređaj”. Vidjet ćete padajuću listu sa sljedećim sadržajem:

Na ovoj listi biramo gdje će naš projekt biti instaliran: to može biti vaš uređaj ili simulator. Ako ste odabrali univerzalni tip aplikacije, moći ćete odabrati tip simulatora: iPhone ili iPad. Također možete odabrati verziju operativnog sistema za simulatore (važno je testirati projekat na svim verzijama iOS-a na kojima se aplikacija može instalirati). Pošto je riječ o minimalnoj verziji iOS-a, treba spomenuti i kako odrediti njegovu minimalnu verziju? Jednostavno je - ako koristite metode (funkcije) koje su dodane u iOS verziji, npr. 4.0 , tada se traka za minimalno potreban operativni sistem podiže na 4.0 . Spustimo letvicu na 4.0 With 5.0 . Da biste to učinili, okrenite se na izbornik: “Cilj raspoređivanja” (na mojoj slici označeno plavom bojom). Odaberite sa padajuće liste 4.0 . Sada se vratimo na meni: Shema kompilacije. Naša lista sada izgleda ovako:

Odaberite “iPhone 4.0 Simulator”. I na kraju, kliknite na strelicu ispod koje piše “Run”. IN “Informativna tabla” videćemo proces kompilacije. Nakon što se sve uspješno poveže, otvorit će se prozor iPhone simulatora:

Sada ćemo brzo proći kroz mogućnosti simulatora.

  • Možete simulirati iPhone, iPhone Retina, iPad.
  • Simulirajte različite verzije iOS-a.
  • Napravite snimke ekrana.
  • Rotirajte ekrane (portretni i pejzažni načini rada)
  • Shake
  • Simulirajte malo memorije.
  • Simulirajte server za štampanje
  • Geolokacija lokacija
  • Multi-touch pokreti (maksimalno 2 prsta)
  • Ostalo

Svemu se može pristupiti iz menija programa simulatora:

Nekoliko riječi o simulatoru. Simulator može instalirati aplikacije samo putem Xcode-a, mogu se deinstalirati direktno sa simulatora (baš kao na pravom uređaju), a podržava multitasking. Ali ima i mnoga ograničenja, na primjer, ne možete instalirati certifikat u spremište certifikata lokalne aplikacije. Ali glavni nedostatak je to što je SIMULATOR, ne EMULATOR. Odnosno, samo se pretvara da je iOS uređaj, jednostavno crtanjem sličnog interfejsa (softverski nivo). Ali emulator radi upravo ono što će uređaj raditi (na fizičkom nivou). Kakav zaključak treba izvući? Obavezno testirajte na pravom uređaju. Imao sam slučajeva da radi na uređaju, ali ne i na simulatoru, i obrnuto.

Štampamo “Zdravo, svijete!”

Nadam se da je sve manje-više jasno do ove faze. Ako ne, onda ćete tokom procesa razvoja početi dublje razumjeti.

Ovo poglavlje je napisano u znak sjećanja na Dennis Ritchie tvorac programskog jezikaCi ključni programer operativnog sistemaUNIX, a takođe i kao koautor knjige „Programski jezikC» .

Svrha poglavlja je ukrasiti naš prazan sivi ekran. Odlično, idemo. Vraćamo se na Xcode, odabiremo “ViewController_iPhone.xib” u navigacijskom meniju. Zatim odaberite "Prikaz" na listi koja se pojavi. Na desnoj strani odaberite “Attributes Inspector”. Evo kako meni izgleda prozor plus dodatni komentari:

Sada dodajmo UILabel. UILabel je naziv klase u iOS SDK-u koji vam omogućava da prikažete tekst koji se ne može uređivati ​​na ekranu. Općenito, sve klase koje vam omogućavaju da prikažete nešto imaju prefiks UI: UIView, UITableView, UITextView, UIButton,…. U prozoru “Dostupni objekti za prikaz” potražite liniju pod nazivom Label. Kada ga pronađemo, kliknemo na njega i prevučemo ga na naš trenutni prikaz ekrana.

Plave isprekidane linije pomoći će vam da centrirate/kalibrirate relativni položaj oznake. I tako, odaberite Oznaka na listi prikazanih objekata, ako već nisu odabrani, i pogledajte stavku u svojstvima: Tekst. Hajde da napišemo "Halo, World!" i pritisnite Enter. Ovdje imamo promijenjen i smanjen tekst etikete. Hajde da popravimo ovo. IN kategorije imovine birajmo "vladar""Inspektor veličine". Postoje polja:

  • x i y su koordinate gornjeg lijevog ugla oznake u odnosu na roditeljski pogled, odnosno pogled na koji smo postavili oznaku - to je u našem slučaju Pogled.
  • širina i visina – odnosno širina i visina uređenog objekta.

Možete pokušati urediti ove vrijednosti i promatrati promjene. Također možete urediti poziciju i veličinu direktno pomicanjem naljepnice (teksta) i povlačenjem njenog okvira za različite načine "tačke".

Provedite još 15-25 minuta igrajući se sa različitim nekretninama u različitim kategorijama:

  1. Poravnanje teksta
  2. Veličina fonta
  3. Boja, sjena teksta
  4. itd.

Kasnije ćemo se vratiti na njih i objasnit ću svrhu pojedinih polja.

Koji standardni prikazi postoje u iOS-u?

U prethodnom pasusu dotakao sam se imena nekih klasa odgovornih za interfejs. Sama konzola UI i označava korisnički interfejs. Ovdje ću dati, možda ne potpunu, listu dostupnih tipova prikaza. Prvo, sve dole opisane klase nasljeđuju od UIView-a, tj. imaju ista svojstva i metode. Drugo, uvijek možete kreirati vlastiti prilagođeni prikaz. Lista ispod:

1) UILabel – oznaka – glavna svrha: prikaz jednog ili više redova teksta koji se ne mogu uređivati.

2) UIButton – dugme – glavna namjena: obično dugme, šalje signale objektima, obavještavajući da je pritisnut

3) UISegmentedControl – dugme sa segmentima – glavna namena: dugme sa nekoliko aktivnih delova, možete odrediti na koji ste kliknuli

4) UITextField – polje za unos teksta – glavna namjena: polje za unos teksta od strane korisnika

5) UISlider – klizač – glavna namjena: običan klizač, pomaže u intuitivnijoj promjeni postavki

6) UISwitch – prekidač za uključivanje/isključivanje – glavna namjena: ima dva stanja – uključeno ili isključeno, svrha je očigledna

7) UIActivityIndicatorView - indikator aktivnosti - glavna namjena: obično se koristi za informiranje korisnika da aplikacija ili preuzima podatke ili jednostavno izvodi neke proračune

8) UIProgressView – indikator statusa (progresa) – glavna svrha: prikazati stanje završetka nečega

9) UIPageControl – prebacivanje između stranica – glavna svrha: prikaz broja stranica, prikaz trenutne stranice

10) UIStepper (>= iOS 5) - +/- kontroler koraka - glavna namjena: također očigledna

11) UITableView – tabela – glavna svrha: prikazivanje tabele je možda najpopularniji element

12) UITableViewCell – ćelija tabele – glavna svrha: prikaz reda u tabeli, obično prilagodljiv

13) UIImageView – slika – glavna svrha: prikazivanje slike ili slike

14) UITextView – tekstualno polje (scrollable) – glavna svrha: prikazivanje velike količine teksta koji se može pomicati.

15) UIWebView – web – glavna svrha: prikazivanje web stranice

16) UIMapView – karte – glavna svrha: prikaz karte

17) UIScrollView – prikaz koji se može pomicati – glavna svrha: prikazivanje nekoliko pogleda koji se ne uklapaju na jedan ekran

18) UIDatePicker – tip birača datuma – glavna svrha: idealno za unos datuma

19) UIPickerView – tip odabira bubnja – glavna svrha: alternativa tabeli pri odabiru opcije

20) UIView – samo pogled – glavna svrha: očigledna

21) UINavigationBar – navigacijska traka – glavna namjena: panel na kojem se prikazuje naslov ekrana i dodatna kontrolna dugmad

22) UINavigationItem – UINavigationBar elementi – glavna svrha: očigledna

23) UIToolbar – traka sa alatkama – glavna namjena: prikaz panela na kojem su postavljeni gumbi za kontrolu aplikacije

24) UIBarButtonItem – elementi trake sa alatkama – glavna svrha: očigledna

25) UIBarButtonItem (fiksni i fleksibilni prostor) – posebni elementi alatne trake – glavna namjena: promjena udaljenosti između dugmadi na traci s alatima

26) UITabBar – tabbar – glavna namjena: pomaže pri prebacivanju između različitih nepovezanih ekrana

27) UITabBarItem – element tabbara – glavna svrha: očigledna

Profesija programera jedna je od najprestižnijih i najtraženijih, to je činjenica. U razvojnoj industriji softver imaju svoje niše. Od njih, najbrže rastući, a ujedno i najplaćeniji, je razvoj softvera za mobilnih uređaja. Kao što znate, desilo se da su, ostavljajući svoje konkurente daleko iza sebe, tri konstantna rivala preuzela vodstvo. Trik je u tome što je jedan od ove trojice neprikosnoveni vođa, uvijek neko stigne.

U segmentu mobilne tehnologije, bez sumnje, Apple prednjači sa svojim iPhone pametni telefon. Na prezentaciji održanoj u septembru, kompanija iz Cupertina je demonstrirala 7. verziju mobilnog uređaja. Zajedno s njim, Apple je predstavio nova verzija mobilna operaciona sala iOS sistemi 10. Sada je to najznačajniji operativni sistem na svijetu, kao i njegovi prethodnici. Iz toga slijedi da je učenje razvoja iOS-a najbolja investicija vremena i novca.

Ekosistem jabuke

Danas ćemo razviti jednostavnu mobilna aplikacija za iOS. Naravno, izvorni Mac je najprikladniji za ovo. Ali ako podržavate Windows ili jednostavno nemate Mac, možete instalirati operativni sistem macOS pod virtuelna mašina na Windows-u. Na internetu vam neće biti teško pronaći verziju macOS-a posebno prilagođenu za PC, popularno nazvanu Hackintosh. Slobodno ga instalirajte na VMware virtuelnu mašinu, VirtualBox - vaš izbor. Odmah da vas upozorim da PC tastatura nema neke od tastera koji se nalaze na Mac tastaturi, a mnoge njihove kombinacije se ne mogu pritisnuti u Hackintosh-u. Ovo prilično kvari raspoloženje. Inače, sve dolje opisane operacije mogu se uspješno izvesti na Hackintosh-u.

Obavezno znanje

Da biste programirali općenito, a posebno za iOS, morate znati dosta toga. Matematika i logika možda neće biti potrebni u početku, ali će kasnije biti traženi. Moderne tehnologije Programera je oslobodio potrebe za temeljnim poznavanjem arhitekture računara, ali je neophodno razumjeti osnovne mehanizme kao što su brojni sistemi, njihova konverzija, brzina potprograma ili efikasnost algoritama (veliko O).

Na višem nivou, iOS programer treba da ima duboko znanje o macOS operativnom sistemu i samom iOS-u. Takođe morate savladati Apple programski jezik. Poznavanje Delphija, C++, C# ili VB.NET neće vam puno pomoći. Apple ima svoj ekosistem sa svojim jezicima: Objective-C i Swift. Naravno, poznavanje C++ nikada nikome nije naštetilo programima i umetcima koji se zasnivaju na njemu nalaze se svuda, čak i u Appleu. No, po definiciji se najviše koristi Objective-C, jednostavno zato što se pojavio mnogo ranije (sredinom osamdesetih godina prošlog stoljeća), dok je Swift prije samo dvije godine (2014.). Apple polaže velike nade u novi jezik i mnogo ulaže u njega. Objective-C se koristi za podršku starog softvera, a novi je napisan u Swiftu. Zato je dobro da znate oboje.

Kako ne bi gubili vrijeme, svi ovi programski jezici se mogu naučiti pod strogim nadzorom nastavnika na web stranici.

Razvojni alati

Kao što znate, glavni programski alat za macOS i s njim iOS je programsko okruženje Xcode. Uključuje alate za kreiranje aplikacija za Mac, iPhone, iPad, Apple TV, Apple Watch. Sve Apple platforme. Xcode sadrži Interface Builder, uređivač koda koji podržava sve moderne alate za kod. Osim toga, bez napuštanja Xcodea, možete testirati aplikaciju; ako je razvijen za eksterni uređaj, onda ga možete pokrenuti u emulatoru.

Sistem uključuje emulatore svih uređaja čije se nove verzije mogu preuzeti. Osim toga, Xcode sadrži grafičke alate za analizu performansi aplikacije, uključujući alate za dijagnosticiranje opterećenja CPU-a, korištenja pohrane (HDD, SDD i drugi), opterećenja na grafičkom adapteru (sa OpenGL strane).

Dana 13. septembra objavljena je nova, dugo očekivana verzija razvojnog okruženja 8.0. Stabilne verzije mogu se besplatno preuzeti sa App Store-a. Alfa i beta verzije se distribuiraju putem pretplate programera. Osma verzija uključuje: novu verziju jezika Swift 3, alat za učenje za Swift Playground za iPad, novu verziju Interface Builder-a, koja je postala brža i koja vam omogućava da vidite izgled aplikacije na različitim platformama, bez potrebe za implementirati samu aplikaciju na simulatoru.

Sa Xcode 8 možete razvijati aplikacije za macOS Sierra, iOS 10, watchOS 3 i tvOS 10. Svi SDK-ovi su dostupni. Nove verzije operativnih sistema počele su se stalno pojavljivati ​​odmah nakon toga Apple prezentacije, održan početkom septembra.

Objective-C jezik

Prisjetimo se ukratko osnovnih podataka o jeziku. Objective-C je kompajlirani objektno orijentisani programski jezik koji se koristi za pisanje aplikacija za Apple sisteme. To je nadskup ili, drugim riječima, dodatak za C, koji nasljeđuje od potonjeg sintaksu, tipove podataka, metode praćenja napretka izvršavanja programa i dodaje mu mogućnosti objektno orijentiranog programiranja - opis klasa i metode.

Kao iu C++, u Objective-C centralnu ulogu imaju objekti, koji su povezani sa četiri paradigme: apstrakcija, enkapsulacija, nasljeđivanje, polimorfizam. C++ je jezik sa jakom tipizacijom, dok je Objective-C slabo kucan ili ima sistem dinamičkih tipova podataka. Kao i Smalltalk, Objective-C šalje poruke objektima. Ovo je izuzetna karakteristika dinamičkih jezika jer se tip objekata provjerava u vrijeme izvođenja, a ne u vrijeme kompajliranja.

Opis jezika Objective-C zauzima više od jednog obimnog toma. Stoga je u cilju sticanja objektivnog znanja zgodno pohađati kurs “”. Čitav dio kursa posvećen je ovom jeziku.

Razvoj iOS aplikacija

Kao primjer ćemo razviti vrlo jednostavnu aplikaciju. Ne odstupajmo od svete tradicije, pozdravimo svijet. Međutim, uzimajući u obzir činjenicu da imamo grafičku aplikaciju, malo ćemo je diverzificirati: dodaćemo dugme, kada kliknemo, prikazat ćemo ili sakriti natpis „Zdravo, svijete“.

Pokrenite Xcode, u prozoru koji se pojavi izaberite Kreiraj novi projekat ili u glavnom meniju File -> New -> Project. Sljedeći prozor će od vas tražiti da odaberete ciljnu platformu i tip aplikacije.


U ovom slučaju nas zanima iOS platforma. Postoji sedam vrsta aplikacija koje možete izabrati. Šest od njih su šabloni za tipične aplikacije iOS operativnog sistema, koji podrazumevano sadrže drugačiji skup komponenti. Sedma vrsta je igra.

Vrste aplikacija

  • Predložak aplikacije Single View je namijenjen za jednostavna aplikacija sa jednim ekranom. Preset uključuje komponentu View Controller, koja vam omogućava da prilagodite izgled aplikacije pomoću dizajnera obrazaca Interface Builder.
  • Master Detail Application kreira aplikaciju koja prikazuje kolekciju objekata u prikazu tabele. Nakon odabira jednog od njih, prikazuju se detaljne informacije o tom objektu. Prvi pogled je glavni, drugi je detalj.
  • Koristeći aplikaciju zasnovanu na stranicama, možete kreirati aplikacije koje imaju više ekrana, kao što su stranice u knjizi. Shodno tome, e-čitači se kreiraju iz ovog praznina.
  • Aplikacija sa karticama omogućava kreiranje aplikacija na koje se svaki ekran može prebaciti u bilo koje vrijeme, odnosno svaki ekran ima svoje dugme za njegovo aktiviranje, na kojem se prikazuje naslov. Primjer je iTunes.
  • Igra se koristi za kreiranje šablona igre. Postoje četiri okvira za odabir za kreiranje igre: SpriteKit, SceneKit, OpenGL ES, Metal. Pogledajmo ih ukratko.
    SpriteKit je sistem za 2D renderovanje i animaciju teksturiranih pravougaonika - sprite-ova. Prilikom prikaza okvira koristi se standardna petlja, okvir se prikazuje nakon što se obradi sav sadržaj scene.
    SceneKit je okvir visokog nivoa za renderovanje 3D grafike bez OpenGL-a. Podržava učitavanje, manipulaciju 3D objektima. Uključuje: fizički motor, generator čestica i lak način skriptiranje.
    OpenGL ES je industrijski standard kompjuterska grafika. Omogućava vam da vizualizirate 2D i 3D scene. Omogućava vam da opišete cjevovod za video karticu: vrhovi prolaze transformaciju, sastavljaju se u primitive, koji se rasteriziraju u dvodimenzionalnu sliku i prikazuju na ekranu. Programabilni shaderi mogu biti uključeni u cevovod.
    Metal je API niskog nivoa koji će vam omogućiti da izvučete maksimum iz vašeg video adaptera. Pojednostavljeni API-ji zajedno s unaprijed kompajliranim shaderima i multi-threading podižu vašu igru ​​na novi nivo performansi i kvaliteta.
  • Sticker Pack Application je novi tip aplikacije predstavljen u iOS 10 i Xcode 8. To je skup jednostavnih ili animiranih slika koje se koriste u novom iMessageu. Za kreiranje nije potrebno kodiranje.
  • iMessage aplikacija je nova vrsta aplikacije koja se pojavila u iOS 10 i Xcode 8. Omogućava vam da kreirate dodatke za iMessage, na primjer da kupite i preuzmete svoj paket naljepnica. Također možete koristiti iMessage API za kreiranje vlastitog analognog ovu aplikaciju, uključujući reprodukciju zvuka, videa, korištenje naljepnica i još mnogo toga.

Kreiranje prvog projekta

Kao predložak za našu aplikaciju, izabrat ćemo aplikaciju Single View. Budući da nećemo razvijati veliki program, sredstva predviđena ovom odredbom biće nam dovoljna. Kliknite na Next. Na sljedećoj stranici čarobnjaka trebate unijeti naziv projekta, na primjer ShowLab. U padajućoj listi Jezik ostavite odabrani podrazumevani jezik - Objective-C. Zatim na padajućoj listi Uređaji ostavite Univerzalni izbor. Ovdje određujete za koji uređaj (iPhone ili iPad) se aplikacija kreira. Univerzalna klauzula znači za oboje. Poništimo okvire Uključi jedinične testove i Uključi UI testove; Sledeći. Odaberite folder za spremanje projekta. Sada kliknite na dugme Kreiraj.

Kao rezultat, otvoriće se prozor sa listom svih parametara primenjenih na projekat. U ovom prozoru možete promijeniti parametre koje ste prethodno postavili u čarobnjaku: orijentaciju, ciljni uređaj itd.


Prvo treba da kreiramo interfejs aplikacije. Da biste to učinili, jednim klikom odaberite datoteku Main.storyboard na listi s lijeve strane (ako ova datoteka nije vidljiva, proširite sadržaj foldera ShowLab). Sa desne strane liste, ceo prozor će zauzeti Interface Builder. Izgled uređaja će biti prikazan u sredini. U donjem desnom uglu prozora nalazi se panel komponenti. Prevucite komponente Label i Button odatle na izgled. Iznad panela komponenti nalazi se lista svojstava. Ako ga nemate, kliknite na dugme Prikaži inspektor atributa koje se nalazi ispod naslova prozora na desnoj strani interfejsa.

Odaberite komponentu Label u izgledu i konfigurirajte njeno svojstvo Text: ostavite odabir Plain na padajućoj listi, unesite željeni natpis u liniju ispod, u našem slučaju "Hello, World". Ako se tekst ne uklapa u granice naljepnice, promijenite ih povlačenjem ručki na rubovima komponente. Da biste ga horizontalno centralizirali, idite na stranicu Inspektor veličine tako što ćete kliknuti na dugme Prikaži inspektor veličine (desno od Prikaži inspektora atributa). Na ovoj stranici, sa padajuće liste Rasporedi, izaberite Centriraj horizontalno u kontejneru.

Sada odaberite komponentu Button, promijenite njeno svojstvo Text u željenu oznaku - Switch. Možete ga centrirati na isti način kao što je gore opisano.

Stvaranje veze između grafičkih elemenata i koda

IN Visual Studio(ili Delphi) objekat u kodu se kreira automatski u trenutku kada postavite vizuelnu komponentu na obrazac. Ovo se ne dešava u Xcode-u, ali ne uzrokuje probleme.

Otvorite sadržaj zaglavlja ViewController.h u zasebnom prozoru dvostrukim klikom na njega. Ova datoteka sadrži deklaraciju ekstenzije klase UIViewController, označenu ključnom riječi @interface. Ova funkcija je dodana drugoj verziji Objective-C. Sada izvedite ovaj trik: pomaknite kursor miša na komponentu - tekstualnu oznaku, držite pritisnutu tipku Ctrl i lijevu tipku miša. Pomerite kursor na prozor sa kodom (datoteka ViewController.h), plava linija će pratiti kursor. Otpustite miš i taster unutar opisa interfejsa ViewController.

Pojavit će se prozor za kreiranje utičnice.


Ovo je svojstvo objekta koje se odnosi na drugi objekt (u ovom slučaju vizualna komponenta). Potrebno je da unesete naziv Outlet objekta, preko kojeg ćete pristupiti vizuelnoj komponenti, neka to bude lab. Zatim se odabire tip objekta, odabran je ispravno: UILabel.

Još niže na listi Storage izaberite tip reference objekta: slab ili jak. Ako odaberete jak, tada će objekt na koji ukazuje svojstvo postojati sve dok svojstvo ukazuje na njega, u kom slučaju neće biti automatski obrisan kada se više ne koristi. S druge strane, kada je slaba referenca na snazi, objekt se može samouništeti. Dakle, odaberite vrstu slabe veze i kliknite na dugme Poveži. Kao rezultat, sljedeći red će biti dodan u kod:

@property (slabo, nenatomsko) IBOutlet UILabel *lab;

Uvjerimo se da je Outlet vlasništvo.

Sada kreirajmo izlaz za dugme. Algoritam ostaje isti. Samo za svojstvo Name morate unijeti drugo ime, na primjer ali. Linija će biti dodata kodu:

@property (slabo, nenatomsko) IBOutlet UIButton *ali;

Kao rezultat, imamo dva pokazivača na vizuelne komponente: laboratoriju i ali - respektivno, natpis i dugme. Sada, koristeći pokazivače, možemo manipulirati komponentama u kodu.

Zatim morate kreirati rukovao događajima klikom na dugme. Da biste to učinili, otvorite implementacioni fajl ViewController.m u zasebnom prozoru. Na potpuno isti način kao što ste povukli liniju u datoteku zaglavlja da biste kreirali izlaz, iz dugmeta prevucite liniju u datoteku implementacije i ispustite je u zagradu komande za zatvaranje - @end. Pojavit će se prozor za kreiranje događaja, sličan prozoru za kreiranje utičnice. Vidite razliku: veza do objekta je kreirana u datoteci zaglavlja, metoda je kreirana u datoteci implementacije.


Popunite polje Ime, njegova vrijednost predstavlja naziv svojstva - metode. Neka bude onClick. Ostavite vrijednost polja Vrsta kao zadanu vrijednost - id. U Objective-C ovaj tip je predak svih ostalih. U padajućoj listi Događaj podrazumevano je izabran događaj Touch Up Inside, koji se javlja kada se pokazivač (miš, prst...) pusti preko dugmeta, odnosno poslednja faza pritiska na dugme. Ovo nam treba. Na listi Argumenti ostavite zadanu vrijednost: Pošiljalac je objekt koji je poslao ovaj signal, u našem slučaju to će uvijek biti dugme. Kliknite na dugme Poveži. Kao rezultat, bit će dodan sljedeći kod:

- (IBAction)onClick:(id)sender ( )

Minus na početku znači zatvorenu metodu (privatno). Ključna riječ IBAction označava događaje (metode) vizuelnih komponenti iz Interface Builder-a.

Između komandnih zagrada upisaćemo kod koji se izvršava kada se pritisne dugme:

Lab.hidden = !_lab.hidden;

U ovom redu koda invertujemo vrijednost skrivenog svojstva. Ona je tipa BOOL, koja ima dvije vrijednosti: DA - tačno i NE - netačno (malo neobično za Windows programere, gdje je istina i netačno).

Obratite pažnju na donju crtu ispred naziva objekta - oznake (_lab). Bez toga, kompilacija neće uspjeti s greškom. Donja crta se automatski dodaje za objekte sadržane u drugim objektima; to jest, u ovom slučaju, laboratorijski objekat je sadržan u ViewController objektu. Ranije je ovo bila konvencija koja se koristila za razlikovanje između objekata deklariranih kao članovi klase i lokalnih objekata. A sada je ovo striktno pravilo implementirano u kompajleru jezika.

Sada možete kompajlirati aplikaciju i pokrenuti je na simulatoru. Odabrali smo simulator za iPhone 7, uključen u Xcode 8. Dugme za kompajliranje i pokretanje je crni pravougaonik i nalazi se u traci na vrhu interfejsa.

Nakon kompajliranja aplikacije, pokretanja simulatora i učitavanja naše aplikacije, njeno sučelje će biti prikazano na ekranu simulatora: natpis „Zdravo, svijete“ i dugme za prebacivanje. Ako pritisnete zadnji, natpis će nestati; ako ga ponovo pritisnete, ponovo će se pojaviti.

Napravili smo vrlo jednostavnu aplikaciju za razumijevanje suštine iOS razvoja. Detaljnije informacije o kreiranju iOS aplikacija u Objective-C možete naučiti iz kursa naših prijatelja iz GeekBrains “. Kurs je posvećen učenju ovog jezika dva mjeseca. Tokom prvog mjeseca - uvodne teme, au drugom - pravo kodiranje profesionalnih aplikacija.

Swift language

Apple je 2014. godine predstavio novi programski jezik - Swift. Brzo je postao jezik o kojem se najviše priča i najbrže rastući jezik na svijetu. Ovo je pouzdan, siguran, intuitivan jezik za razvoj aplikacija za macOS, iOS, tvOS i watchOS operativne sisteme za cijelu flotu Apple uređaja. Swift je efikasan programski jezik. Lakše ga je naučiti nego njegov prethodnik, Objective-C, a Swift posuđuje neke od njegovih najboljih ideja. Istovremeno, programeri su jezike učinili kompatibilnim, odnosno jedan program može sadržavati kod i u Swiftu i u Objective-C. U svijetu postoje milijarde linija koda i stotine hiljada naslijeđenih programa napisanih u Objective-C, tako da njegova podrška definitivno neće biti napuštena.

Prilikom razvoja Swifta cilj je bio stvoriti najviše pogodan jezik Sistemsko programiranje je brzo, sigurno i izražajno.

Algoritam u Swiftu je 2,6 puta brži od istog algoritma u Objective-C i 8,4 puta brži nego u Pythonu. Upotreba Swifta čini proces razvoja programa fleksibilnijim i praktičnijim.

Zbog svog eksponencijalnog razvoja, Swift jezik je pušten zajednici otvorenog koda 3. decembra 2015. Istovremeno, Apple striktno prati njegov razvoj, organizirajući komitet za njegov razvoj. Swift je sada dostupan ne samo na Apple sistemima, već i na Linuxu. Svi dodatni alati za rad sa jezikom, uključujući debuger, standardna biblioteka, manager paket, također besplatan i otvoren.

Ovaj jezik je budućnost. Detaljnije informacije o tome možete saznati iz spomenutog kursa GeekBrains “, u kojem je cijeli mjesec posvećen učenju ovog programskog jezika.

App Store

Jednostavno rečeno, App Store je prodavnica sadržaja za čitav niz Apple uređaja. Ovdje možete kupiti igre i aplikacije od velikih kompanija i nezavisnih programera. Svaki programer, bez obzira u kojoj zemlji živi, ​​može besplatno prodavati ili distribuirati svoje programe na ovoj platformi za digitalnu distribuciju. Da biste to počeli, morate se registrovati kao programer i kupiti licencu za prodaju svojih aplikacija. Ovo je naknada za pruženu uslugu i razvoj App store Store.

Rezultati

Razvili smo jednostavnu aplikaciju za iOS mobilni operativni sistem koristeći programski sistem Xcode zajedno sa jezikom Objective-C. Testirali smo gotovu aplikaciju na iPhone 7 simulatoru. Naučili smo kako da napravimo korisnički interfejs koristeći Interface Builder, kako da se povežemo grafičkih elemenata sa kodom aplikacije, kako kreirati obrađivače događaja. Upoznali smo se sa osnovama Objective-C. Osim toga, skrenuli smo pažnju na obećavajući Swift jezik, koji se koristi za razvoj moćnih i sigurnih aplikacija za Apple ekosistem.

Međutim, proučeni materijal je samo početak. Kako biste se intenzivno nadograđivali u smjeru mobilnog kodiranja i razvoja stvarno prodajnih aplikacija, preporučujemo da pohađate kurs „“ na web stranici naših prijatelja.

Ovo je vrijedan kurs: ako ga uzmete, sigurno nećete gubiti vrijeme. Počinje sa dva detaljna kursa o jeziku Java, nakon čega slijedi učenje osnovnog programiranja za mobilni operativni sistem Android sistem. Sljedeći je kurs o bazama podataka općenito i SQL jeziku posebno. Zatim dubinski kurs o razvoju profesionalnih Android aplikacija. Nakon toga, vektor učenja će se kretati ka Apple sistemima: dva detaljna kursa o Objective-C jeziku i korisni kurs o Swiftu.


Predavanja na predmetu drže profesionalni nastavnici sa velikim iskustvom u razvoju softvera. Ako nešto nije jasno, možete postaviti pitanje bez odlaganja. Općenito, učenje na GeekBrains-u je proces uživo, možete komunicirati, postavljati pitanja i pomoći s odgovorima. Za provjeru stečenog znanja nastavnici zadaju domaći zadatak, koji se potom provjerava. Nakon završene obuke, imaćete zagarantovanu praksu u IT kompaniji. A onda sve zavisi od vas, ako se pokažete kao kompetentan specijalista, bićete pozvani na posao.

Poseban projekat sa kompanijom

Mnogi novi programeri ili ljudi koje samo zanima programiranje ne znaju kako brzo i jednostavno kreirati iOS aplikaciju.

Cijeli proces ćemo analizirati korak po korak kako bi svi mogli pročitati ovaj materijal i sami izvršiti razvoj.

Prvi korak. Smislite ideju i ime

Naravno, od samog početka morate smisliti dobra ideja, koji bi mogao biti popularan. Aplikacija treba da bude jednostavna, funkcionalna i korisna korisnicima. Evo nekoliko savjeta koji će vam pomoći da pronađete sjajnu ideju i oživi to:

1 Idite na AppStore i pogledajte programe koji su tamo predstavljeni. Možda će vam nešto pasti na pamet.

2 Također pogledajte svoju listu aplikacija(instaliran). Vjerovatno vam se ne sviđaju svi i da biste željeli dodati neke funkcionalnosti nekima od njih. Ovo će biti ideja za vašu kreaciju!

3 Pogledajte aplikacije svojih prijatelja u istu svrhu.

Važno! Na kraju svoje ideje, trebali biste imati jasno razumijevanje koju funkciju će vaša aplikacija obavljati.

Što se tiče imena, i ovo pitanje treba shvatiti vrlo ozbiljno. Prvo pogledajte većinu i njihova imena. Idite na apple.com/ru/itunes/ u tu svrhu. Obavezno provjerite besplatni i plaćeni odjeljak.

Stručnjaci ističu nekoliko savjeta o tome kakvo bi ime trebalo biti, a konkretno:

  • dužina oko 10 karaktera (ne mnogo više, možda manje, ali opet, ne previše);
  • po mogućnosti engleski (usput, interfejs bi ga takođe trebao imati kako bi proširio potrošačku publiku);
  • dvije riječi u naslovu;
  • jedna riječ mora u potpunosti odražavati svrhu;
  • druga riječ mora biti opis prve.

Četvrti korak. Razvoj koncepta

U prvom koraku već ste prihvatili ideju i naziv buduće aplikacije. Sada vrijedi učiniti nešto što će vam omogućiti da se direktno počnete razvijati. Radi se o konceptu. U ovome Koncept uključuje sljedeće:

  • Ciljna publika. Obavezno razmislite ko će biti vaš korisnik. Ovo bi mogao biti mlad, svrsishodan i upoznat sa modernim uređajima. S druge strane, to bi mogao biti stariji korisnik koji je daleko od tehnologije. Preostale dvije komponente koncepta će ovisiti o tome.

  • Funkcionalni. Jasno navedite sve funkcije koje će aplikacija obavljati.
  • Dizajn. Skicirajte, čak i na komadu papira, kako će aplikacija izgledati. Štaviše, morate jasno razumjeti kakav će biti početni ekran, koja će dugmad imati i šta će biti na dodatnim stranicama. Takođe, dodajte dugmad prema listi funkcija. Također dizajnirajte sva dugmad.

Kada imate sve skice, možete početi s kodiranjem!

Korak peti. Kodiranje

Sada otvorite Xcode i pokrenite sljedeće faze kreiranja softvera na iOS-u:

1 Na početnom ekranu, u meniju sa leve strane, tapnite na "Aplikacija"(otvorite ovaj odjeljak) i odaberite "Prazna aplikacija". Kliknite "Sljedeći". Zatim unesite svoje podatke i u polje ID programera (koji je dao Apple) unesite "primjer", a u polju prefiksa klase navedite "XYZ".

2 Zatim odaberite "File" i na padajućoj listi "novo". Zatim pritisnite uzastopno "Korisnički interfejs", "Storyboard" i dugme "Sljedeći". U meniju uređaja izaberite i unesite u polje za naziv "glavni". Sačuvajte ovu datoteku u istom folderu kao i vaš glavni projekat. Nakon toga, datoteka Main.storyboard će se pojaviti u stablu projekta (na lijevoj strani). Ovo je, kao što ste možda već shvatili, vizuelni prikaz svih ekrana vašeg programa. Ovo je ono što ćete uređivati ​​u budućnosti.

3 Sada morate biti sigurni da se kada pokrenete aplikaciju otvara upravo ekran koji kreirate u Storyboardu. Da biste to učinili, u stablu mapa s lijeve strane, uzastopno odaberite svoj projekat, "Mete", "general", "Informacije o implementaciji". Zatim blizu natpisa "Glavni interfejs" izabrati "glavni", kao na slici 8 - tako smo nazvali naš ekran u prethodnoj fazi.

Rice. 9. Dodjeljivanje kreiranog ekrana kao glavnog u Storyboardu

4 Sada, u stvari, morate kreirati upravo ovo početni ekran, koji će se prvi otvoriti pri pokretanju. Da biste to učinili, u stablu s lijeve strane Kliknite jednom na "storyboard". Otvoriće se u glavnom prozoru prazan prozor. U donjem desnom uglu kliknite na ikonu kocke ovo je biblioteka objekata koji se mogu dodati na ekran. Sada pronađite na desnoj strani "View Controller" i prevucite ga kursorom miša na prazno polje. Pojavit će se pravokutni objekt. Zapravo, tamo možete dodati sve elemente.

5 Sada možete dodati druge objekte iz biblioteke. To mogu biti tekstualna polja, polja za unos i drugi elementi. Ako dvaput kliknete na njih, moći ćete promijeniti njihove atribute i svojstva. Zapravo, na isti način možete napisati neki kod koji će reagirati na klik. Međutim, ako ste gledali video tutorijale na Objective-C, onda vrlo dobro znate koji elementi su vam potrebni i kako ih dodati.

6 Ako trebate dodati još jedan ekran, učinite to na isti način kao i prije - premjestite objekt na prazan prostor "View Controller". Zatim na njega možete premjestiti razne objekte.

7 Sada moramo biti sigurni da korisnik mogao se kretati između ovih ekrana prevlačenjem ili klikom na odgovarajući link. Za ovo postoji objekat pod nazivom "Kontroler navigacije". Premjestite ga na početni ekran. Zatim kliknite na "Urednik", onda "Ugrađeno u" i gore navedenom objektu. Siva traka će se pojaviti na vrhu početnog ekrana. To znači da mu je dodana takozvana navigacijska traka.

8 Da biste dodali dugme za navigaciju na ekranu, postoji objekat "Bar dugme". Ovo je dugme, jednostavno rečeno. Premjestite ga na navigacijsku ploču i postavite odgovarajuća svojstva.

Dodajte preostale objekte na isti način, a također postavite potrebna svojstva za njih. Nećemo ulaziti previše u to kako kodirati aplikaciju, jer je ovo vrlo široka tema. Štoviše, ako pročitate gornji materijal, znat ćete potrebne informacije o tome. Ali gore navedene faze kodiranja su početak vašeg daljnjeg razvoja.

Šesti korak. Testiranje

Xcode ima vlastiti alat za testiranje rezultirajućeg softverskog proizvoda. Da biste ga koristili, nakon što završite sa pisanjem koda i uređenjem interfejsa, potrebno je samo da kliknete na natpis "Simulator i otklanjanje grešaka".

Ona je na lijevoj strani vrh Xcode prozora. Nakon toga, pojavit će se padajući meni u kojem samo trebate preći mišem preko istog natpisa "Simulator i otklanjanje grešaka" i odaberite uređaj na kojem želite testirati aplikaciju. U stvari, ovaj uređaj će se pokrenuti.

Rice. 13. Pristup alatu za testiranje razvojnog okruženja i stavci “Simulator and Debug”.

U sledećem prozoru, jednostavno kliknite na dugme „Play” u gornjem levom uglu. Pritisnite sve tipke i pokušajte koristiti sve funkcije koje ste željeli staviti u svoju kreaciju.

Također možete povezati svoj ili na svoj računar koristeći . Zatim, kada kliknete na dugme “Play”, ono će se otvoriti na povezanom uređaju.

savjet: Ako nemate novca da unajmite profesionalne testere, pošaljite datoteku pokretanja vaše gotove aplikacije prijateljima. Također možete potražiti testere početnike na istim slobodnim berzama. Oni će moći pronaći greške i dati savjet kako poboljšati svoj proizvod.

Iako je najbolje, naravno, koristiti usluge profesionalnog tima testera. Ali postoji još jedan izlaz.

Ako su testovi uspješni, ostaje samo da prodate aplikaciju.

Korak sedam. Prodaja i promocija

Zatim morate učiniti svoj softverski proizvod dostupnim za kupovinu na . Međutim, možete ga distribuirati besplatno. Da biste to učinili, morate se registrirati kod Apple-a kao programer. Cijeli ovaj proces je prikazan korak po korak u sljedećem videu.

Kada je program već u prodavnici i može se kupiti, ostaje samo da se o njemu nekako ispriča masama. Evo nekoliko savjeta u vezi Oglašavanje iOS aplikacija:

  1. Kreirajte YouTube kanal posvećen vašoj kreaciji. Napravite nekoliko video zapisa o tome kako ga koristiti i koje su njegove prednosti.
  2. Ako vam financije dozvoljavaju, naručite oglašavanje od popularnih blogera. Obično ne košta mnogo, ali efekat je ogroman, posebno ako vaš bloger ima najmanje 200.000 pretplatnika.
  3. Kreirajte grupe u društvene mreže i na isti način naručiti oglašavanje u poznatim grupama i zajednicama.
  4. Iskoristite prednosti kontekstualnog oglašavanja od Googlea i Yandexa.
  5. Reci svojim prijateljima i neka o tome pričaju i svojim prijateljima.

Nakon ovoga čeka vas veliki uspjeh!