Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • OS
  • Aplikacija Swift Playgrounds čini programiranje lakim i zabavnim. Da li je moguće razvijati na iPad-u?

Aplikacija Swift Playgrounds čini programiranje lakim i zabavnim. Da li je moguće razvijati na iPad-u?

Submitted by AtH u Pon, 08/02/2016 - 04:17

Već nekoliko godina vodim listu najzanimljivijih aplikacija za iPhone i iPad, odnosno kalkulatore (uključujući emulatore sovjetskih i stranih PMC-a) i alate za programiranje - od uređivači teksta kompajlerima. Lista će također uključivati ​​dokumentaciju, alate za kreiranje web stranica i uređivanje web stranica, proračunske tablice, matematičke pakete i mnoge druge korisne alate.

Do 16. maja 2018. lista je imala 7.603 pregleda i sadrži 276 najbolje aplikacije. Ovo je 31 web stranica. Emulatori HP programabilnih kalkulatora počinju na stranici 6, a sovjetski PMK na stranici 11. Web programiranje sada počinje na 19. stranici, a ozbiljniji jezici počinju na sljedećoj i 23. stranici. Stranica 27 počinje sa aplikacijama koje se odnose na TeX paket. Na listu sam uvrstio samo najbolje, u najboljoj konfiguraciji. Na primjer, moćni (i relativno HP 50g kompatibilan) ND1 kalkulator od 2,99 USD ima besplatnu, skraćenu verziju ND0 istog autora koja nije navedena.

Od 8. februara 2016. 46 od ovih aplikacija je besplatno (mogu sadržavati kupovinu unutar aplikacije), a sve ostale koštaju 1083,67 USD - odnosno skuplje od samog iPhonea. Međutim, ne morate ih sve kupiti. Funkcionalno, mnoge aplikacije dupliraju ili preklapaju mogućnosti jedne druge, a za mnoge zadatke postoje jeftine ili čak besplatne aplikacije. Od plaćenih aplikacija, 75 košta 0,99 dolara, a još 33 koštaju 1,99 dolara. 18 aplikacija košta 9,99 dolara, a samo 15 aplikacija košta više od toga. Sljedeće četiri aplikacije koštaju više od 20 USD (cijene od 8. februara 2016.):

  • 39,99 dolara - MathStudio matematički paket (može se kupiti u pola cijene tokom popusta). Online verzija je besplatna na mathstud.io
  • 29,99 USD - TI-Nspire™ CAS brendirani kalkulator (u prodaji prije tri godine za 4,99 USD). „Gvozdeni“ TI-Nspire CAS (engleski) na Amazonu košta 118,88 dolara plus poštarina.
  • 29,99 dolara - AppCooker, alat za razvoj prototipa aplikacije na iPadu (postoje rasprodaje, čak i pokloni)
  • 24,99 dolara - i41CX+, verzija programabilnog RPN kalkulatora HP-41CX (engleski) sa trakom za štampač i CAS-om (nije bilo prodaje; na jesen je prodavac podigao cenu na 30,99 dolara). Postoji verzija i41CX za 7,99 USD plus IAP, a posebno iCAS za 14,99 USD

Za programiranje i drugi razvoj, ne može se ne primijetiti sljedeće impresivne aplikacije (puna lista, ponavljam, je 279 aplikacija):

  • Coda (9,99 USD) - Profesionalni razvoj i podrška web stranice. Editor sa isticanjem sintakse, FTP upload-om itd., SSH klijent, preview i gledanje “preko zraka” na kompjuteru... Coda čak radi i na iPhoneu.
  • Smart BASIC (6,99 USD; neka prodaja je pala na 0,99 USD) - nevjerovatno moćna verzija BASIC za programiranje na ploči; kompilacija i kreiranje su mogući na Macu punopravna aplikacija With koristeći X-kod. Napisala naša zemljakinja Elena Kolčina. Pročitajte recenziju na iPadStory za više detalja.
  • Codea (14,99 USD) je slično moćno razvojno okruženje, ali za jezik Lua. Radi samo na iPad-u. Za programiranje u Lua na iPhone-u postoje i druge aplikacije.
  • Pythonista (9,99 USD) - razvojno okruženje za Python. Njemačka web stranica aplikacije Pythonista ima englesku dokumentaciju i forum.
  • DraftCode PHP IDE ($6,99) - kompletno integrisano razvojno okruženje za PHP, sa ugrađenim web serverom. Omogućava vam da razvijate aplikacije u PHP-u van mreže.
  • Retro (0,99 USD) je sažeti programski jezik koji se aktivno razvija inspirisan Forthom. Retro je otišao mnogo dalje od Tvrđave nego moj. Autor je svoju web stranicu posvetio Retrou.
  • TeX Writer (9,99 USD) - Kompletno okruženje za TeX/LaTeX sa kompilacijom u PDF. Takođe radi i van mreže.
  • MyScript MathPad (besplatan, ali puna verzija 2,99 dolara kao IAP) - nacrtate formulu na ekranu, aplikacija je prevodi u TeX kod. Ponekad ga koristim dok radim

Vjerovatno čak i nakon kupovine prvog mobilni gadget iz Apple-a, pitate se kako da izvučete više od toga od slušanja muzike i čitanja knjiga. Da, postoji tona softvera za sve prilike, ali šta je sa provjerom vaše aplikacije sa GitHub-a, unošenjem izmjena u nju i zatim uploadom na server putem SSH-a? Ali to je sasvim moguće učiniti ako znate kako.

Ovaj članak predstavlja izbor alata za programere i administratore koji, iz ovog ili onog razloga, moraju da rade bez pristupa desktopu. Naravno, ovi programi nisu tako dobri kao njihovi “desktop” kolege, ali će njihove mogućnosti moći da pokriju značajan dio potreba ljudi koji kreiraju programe ili to tek počinju.

Urednici koda

Najjednostavniji alat za programera je uređivač koda. Postoje desetine takvih programa za mnoge platforme, a iOS nije izuzetak. Opšti zahtjevi za takav uslužni program su sažetost, podrška za veliki broj jezika, integracija sa usluge u oblaku. IN iOS važan postaje još jedan parametar - pošto tastatura nije pogodna za upisivanje koda, potrebna je ili druga tastatura, ili mogućnost integracije u postojeću dodatna dugmad sa najčešće korišćenim specijalnim znakovima. Razmotrimo najviše popularni urednici koda koji ispunjava ove zahtjeve i također ima svoje jedinstvene mogućnosti.

Kao što znate, Apple čini sve da spriječi mogućnost samostalnog rada mobilnih uređaja ah, aplikacije trećih strana. Programi za neispravne iPhone uređaje, iPod touch i iPad se može kupiti samo preko Apple prodavnica App Store, a programeri moraju platiti 99 dolara godišnje za pravo testiranja aplikacija na svojim uređajima. Nažalost, ova politika sprječava pojavljivanje alata za razvoj aplikacija na samim uređajima. Međutim, tvorac programa Codify, koji omogućava korištenje iPada za pisanje programa (prvenstveno igara) na Lua jezik, uspio dobiti odobrenje u App Store-u.

U junu 2011. Apple je malo revidirao pravila za objavljivanje aplikacija u App Store-u i sada dozvoljava programima da uključuju alate za tumačenje različitih skriptnih jezika. Prije svega, to je neophodno za programere igara, jer oni često koriste jezici visokog nivoa. Ono što vam Apple ne dozvoljava je preuzimanje proizvoljnog koda sa vanjski izvori. Da se takva prilika negdje pojavi, to bi ugrozilo rođenje alternativnog App Store-a, što Apple zaista ne želi.

Autor Codifyja morao je da napravi ozbiljna ograničenja kako bi softver bio odobren u App Store-u. Trenutno postoji samo jedan način za dodavanje koda u uređivač Codify - sve pisati ručno. Isti problemi su i sa izvozom. Da biste izvukli ono što ste napisali u Codifyju, morat ćete odabrati sav kod, kopirati ga i poslati e-poštom sebi. Međutim, ova metoda je prikladna samo za stvaranje rezervna kopija ili slanje izvornog koda nekom od vaših prijatelja. Prenesite aplikaciju na desktop računar u svakom slučaju, neće raditi bez dodatnog rada - autor ne nudi preuzimanje okruženja Codify, kao što su grafičke biblioteke uključene u razvojno okruženje. Steta. Ako je objavio predložak Xcode projekta sa svim bibliotekama, onda bi se izvori izvučeni iz Codifyja mogli odmah pretvoriti u nezavisnu aplikaciju.

Codify ima i druga ograničenja. Za sada, igre stvorene tamo mogu koristiti samo spriteove standardni set; Nećete moći da odaberete svoju sliku. Međutim, aplikacija ima i prednosti - na primjer, dodana je tastatura na ekranu dugmad koja vam omogućuju brzu navigaciju kroz tekst programa ili dijaloške okvire za odabir boja ili sprite-a koji zamjenjuju vrijednosti direktno u listu parametara za odgovarajuće funkcije. Codify također dolazi sa dobrom pomoći za sve dostupne funkcije (grafika, zvuk, matematičke funkcije, eksterni parametri, rad sa ekranom osetljivim na dodir i akcelerometrom).

Codify košta osam američkih dolara i dostupan je u ruskoj App Store. Nadajmo se da ova inicijativa neće zamrijeti i da neće postati još jedna žrtva promjenjivog raspoloženja App Store moderatora. Voleo bih da vidim ista razvojna okruženja za druge jezike i sa drugim bibliotekama Python primjer ili Obrada. Ako Codifyjev pristup korisničkim iPadima nije slučajnost, već početak glatka promena strategije, moguće je da Apple i sam razmišlja o tome kako iPad učiniti pogodnim za programiranje. A to bi bila jednostavno odlična vijest.

Ovaj članak započinje seriju namijenjenu početnicima. Usuđujem se da se nadam da će nivo prezentacije materijala omogućiti da ga razumeju čak i ljudi koji nisu upoznati sa programiranjem. Započnimo našu priču malom lirskom digresijom. Aplikacije za iPhone i iPad su napisane u Objective-C. Ovaj jezik je bio naširoko korišten u NeXT-u i došao je u Apple nakon povratka Stevea Jobsa. Trenutno je Objective-C glavni jezik za razvoj OS X i iOS aplikacija.

Da biste započeli programiranje za iOS, trebat će vam Mac računar na bazi Intel procesor i razvojno okruženje XCode. Ako nemate Mac, nema veze. Možda će vam odgovarati jedna od opisanih metoda za rješavanje ovog problema. Fokusiraćemo se na XCode 4 i iOS5.

Instaliranje XCodea

Prvo ćemo se morati registrovati na Apple-ovoj web lokaciji za razvojne programere. Pratite link i kliknite na registraciju. Kliknite na dugme Započni i dovršite proces registracije. Tu je sve prilično jednostavno, tako da se neću zadržavati na ovoj tački. Nakon registracije, bit će vam poslan e-mail sa vašim Apple ID-om. Vratite se na stranicu Apple Developers i koristite je za ulazak u sigurno područje. U odjeljku DevCenters kliknite na iOS vezu. Kao što vidite, Apple vam nudi gomilu dokumentacije, izvora i tutorijala. Ova stranica sadrži sve što vam je potrebno za početak razvoja iOS-a. Na samom dnu nalazi se dugme Download Xcode na koje morate kliknuti. Nakon preuzimanja, instalirajte Xcode na svoj Mac.

Upoznavanje sa XCode 4 interfejsom

Da pokrenete Xcode, idite na svoj glavni disk i kliknite na programer>Aplikacije.

Kada se Xcode pokrene, odaberite File>New Project, a zatim Single View Application i unesite HelloWorld kao naziv proizvoda. Kao rezultat, trebali biste vidjeti nešto poput ovoga

Sav vaš kod i resursi su organizirani u posebne mape koje se nalaze na lijevoj strani Xcode prozora. Panel se zove "Project Navigator" i sadrži sve elemente vašeg programa. Fajlovi sa izvorni kod imaju ekstenziju ".h" i ".m". Ako kliknete na takvu datoteku, na desnoj strani Xcode-a će se otvoriti uređivač s kodom.

Hajde da se za sada ne zadržavamo na kodu. Na ovo pitanje ćemo se vratiti malo kasnije. Ako pogledate gornji dio na ekranu, videćete nekoliko dugmadi povezanih sa vašim projektom. Proučimo ovaj panel detaljnije.

Dugme "Pokreni" pokreće vaš projekat. Možete testirati svoju aplikaciju i uvjeriti se da se zaista ponaša onako kako očekujete. Dugme "Zadaci" zaustavlja pokrenutu aplikaciju.

Pomoću dugmeta Schemr možete odabrati ciljnu platformu na kojoj će se pokrenuti vaša aplikacija. Ovdje možete odabrati simulator i otkloniti greške u programu na svom računalu ili ga pokrenuti na svom iPhoneu (iOS uređaju) ako ste platili naknadu od 99 USD. Jedina prednost koju ovo plaćanje pruža je mogućnost pokretanja programa na stvarnom uređaju i objavljivanja u App Store-u. Ne bih vam preporučio da trošite novac dok ne pripremite normalan program.

Prelomne tačke su veoma korisna stvar. Koristeći ovo dugme, možete označiti linije u izvornom kodu, a kada program dođe do označene linije tokom izvršavanja, program će pauzirati i možete pogledati stanje varijabli. Ovo je vrlo moćan i široko korišten alat.

Kliknite na dugme "Pokreni". Vidjet ćete prozor emulatora sa vašim projektom. Kao što vidite, iako ne blista funkcionalnošću, to je samo prazan prostor.

Programiranje za iPhone - prvi korak

Dosta je tucanja, hajde da kodiramo nešto. Prozor Project Navigator sadrži datoteke izvornog koda. Kliknite na neki .m fajl. Imajte na umu da su neke linije obojene zelene boje- ovo su komentari koji služe kao varalice. Kako se ne bi zabunili u kodu, programer može ostaviti savjete i objašnjenja za sebe. Za označavanje komentara u jeziku C koristi se kombinacija kosih crta //. Sve na liniji desno od ovih znakova smatra se komentarom. Ako želite da napišete višeredni komentar, možete koristiti kombinacije /* i */ da označite početak i kraj višerednog komentara.

Prije nego počnemo pisati kod aplikacije, moram vam prstima objasniti nekoliko koncepata: OOP (Object Oriented Programming), MVC (Modal View Controller), ".h" i ".m" datoteke. Dakle... objektno orijentirano programiranje uključuje podjelu cijelog koda na takozvane objekte, unutar kojih se pohranjuju podaci i komande koje ih obrađuju. Objekt u Objective-C se sastoji od dvije datoteke.h i .m. Datoteka.h se zove zaglavlje i sadrži "skicu" objekta - navedeni su svi podaci i imena komandnih blokova (metoda) sadržanih u objektu. Datoteka .m se zove implementacijski fajl i detaljno opisuje sve što je naznačeno u zaglavlju; tu je programirana sva programska logika.

MVC (Model View Controller) je nešto što razdvaja kod i interfejs koji korisnik vidi. Model su podaci korisnika i podaci koje pokazujete korisniku. Pogled je korisnički interfejs i kod koji obezbjeđuje komunikaciju između pogleda i modela. Koncept MVC-a vam sada može izgledati previše zamućen, ali s vremenom ćete vidjeti da ovaj pristup zaista pojednostavljuje život programera. Ovaj koncept podrazumijeva sljedeći redoslijed rada: programer zasebno kreira predložak za dizajn aplikacije, gdje postavlja sve dugmad, tekstualna polja i druge važne gluposti, i zasebno piše programe. Zatim XCode pokazuje koji metod (blok koda) treba pozvati kao odgovor na određenu radnju korisnika i koje ime ima ovaj ili onaj kontrolni element u tekstu programa.

Razvijamo dizajn programa za iPhone

Počnimo kreirati našu aplikaciju razvojem dizajna. U prozoru Navigator projekta kliknite na MainStoryboard_iPhone.storyboard. Kao rezultat toga, XCode će pokrenuti editor interfejsa.

U donjem desnom uglu vidite listu objekata (biblioteku) koji se mogu koristiti u vašem interfejsu; u centralnom delu je prikazan prozor View, koji predstavlja izgled interfejsa vašeg programa. Gornji desni prozor ima nekoliko režima koji se prebacuju pomoću ikona koje se nalaze iznad prozora. Slika prikazuje način rada inspektora atributa. Ovdje možete promijeniti različite atribute objekata koji čine vaš interfejs.

Hajde da povučemo Label objekat iz prozora biblioteke na izgled našeg prozora. Pomoću miša ćemo promijeniti veličinu objekta, kao što je prikazano na ekranu ispod. Inspektor prikazuje svojstva Label objekta. Centrirajmo tekst klikom na odgovarajuću ikonu u liniji Layout.

Izbrišemo tekst u polju Text (tamo je napisana riječ Label) i tamo unesite "Some String".

Slično tome, dodajte dugme u izgled (objekat dugmeta)

Dakle, razvili smo dizajn naše aplikacije. Ništa komplikovano, možete kliknuti na dugme Run i pogledati rad vašeg programa u prozoru emulatora.

Počnimo s kodiranjem

Dakle, imamo dvije vizualne komponente postavljene na izgled. Želimo da se tekst u retku promijeni kada se klikne na dugme. Da bismo implementirali ovu ideju, morat ćemo pristupiti redu (objekt oznake) iz programskog koda i pozvati metodu (blok koda) kada se pritisne dugme.

Kliknite na datoteku "ViewController.h" na lijevoj ploči. Opisat ćemo IBOutlet. IBOutlet povezuje naš kod sa vizuelnim objektom, kao što je oznaka ili dugme. Promijenite kod u datoteci ViewController.h tako da izgleda

#import @ interfejs ViewController: UIViewController (oznaka IBOutlet UILabel*; //dajemo našem nizu ime Label } //ovo je zaglavlje metode koja će biti //poziva se kao odgovor na klik na dugme- (IBAction) buttonClick: (id) pošiljalac; @end

Ovo je sve što treba da upišemo header fajl. IBAction vam omogućava da povežete metodu sa elementom korisničkog interfejsa, na primer, kao odgovor na klik na dugme, programski kod koji smo napisali biće pozvan.

Dakle, rekli smo da ćemo pozvati string sa tekstualnom oznakom i da će metoda buttonClick biti pozvana kao odgovor na radnju korisnika. Hajde da napišemo kod za ovu metodu. Pređimo na datoteku ViewController.m u stablu projekta. Posle linije @implementacija... dodajte kod

- (IBAction) dugmeKliknite: (id) pošiljalac( label. text= @ ”Zdravo iz Mobilab. ru”; )

Napomena, ako ste kopirali ovaj kod, vjerovatno ćete dobiti grešku kada pokrenete program, najvjerovatnije je problem u navodnicima. Izbrišite ih i unesite sa tastature.

Hajde da shvatimo šta vidimo ovde. Pristupamo objektu labele - redu teksta na ekranu. Pošto je ovo objekat, on ima različite podatke unutar sebe (koji se u OOP-u nazivaju i svojstva objekta) i metode kojima se može pristupiti postavljanjem tačke iza imena objekta. Svojstvo teksta je odgovorno za tekst sadržan u nizu.

Završili smo kodiranje, sve što je preostalo je da povežemo oznaku i buttonClick sa elementima unutar izgleda dizajna. Kliknite na liniju MainStoryboard_iPhone.storyboard u prozoru Project Navigator da biste se prebacili na dizajner interfejsa. Zatim kliknite na ikonu “View controller”. Prebacite se na način povezivanja u inspektoru (posljednja ikona). Vidite, linija etikete se pojavila u dijelu Outlets inspektora. Ovo je ime koje smo naveli u datoteci ViewController.h. Kliknite na krug na desnoj strani linije oznake i prevucite ga na liniju Some Text u izgledu dizajna.

Uradite sličnu operaciju sa dugmetom. Kliknite na dugme sa krugom u grupi „Primljene radnje“, zatim kliknite na dugmeKliknite i prevucite ga na dugme u rasporedu. Kao rezultat, otvorit će se kontekstni meni, pomoću koje možete odabrati kada želite pozvati metodu. Možete, na primjer, pozvati kod kada korisnik pritisne dugme, ili kada ga otpusti. Postoji mnogo opcija. Odaberite "Doradite iznutra".

To je sve! Sačuvajte projekat i kliknite na dugme "Pokreni" na gornjoj ploči. Ako ste sve uradili kako treba, emulator sa vašim programom bi trebao da se pokrene. Kliknite na dugme. Tekst u retku bi se trebao promijeniti. To je sve. Prva lekcija je gotova

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 mobilne uređaje. 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 lider, a neko ih uvijek sustigne.

U segmentu mobilne tehnologije, Apple je nesumnjivo lider sa svojim iPhone pametni telefon. Na prezentaciji održanoj u septembru, kompanija iz Cupertina je demonstrirala 7. verziju mobilnog uređaja. Uz to, Apple je predstavio i novu verziju svog mobilnog operativnog sistema. iOS sistemi 10. Sada je to najznačajniji operativni sistem na svijetu, kao i njegovi prethodnici. Iz ovoga proizilazi da je učenje razvoja iOS-a najviše isplativo ulaganje vremena i novca.

Ekosistem jabuke

Danas ćemo razviti jednostavnu mobilnu aplikaciju za iOS. Naravno, izvorni Mac je najprikladniji za ovo. Ali ako podržavate Windows ili jednostavno nemate Mac, možete instalirati operativni sistem macOS ispod virtuelna mašina na Windows-u. U prostranstvu Interneta, neće vam biti teško pronaći neki posebno dizajniran za PC. macOS verzija, popularno nazvan 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 oslobodilo potrebe da temeljno poznaje arhitekturu računara, ali je bilo neophodno razumeti osnovne mehanizme kao što su sistemi brojeva, njihova konverzija, brzina potprograma ili efikasnost algoritama (veliko O).

Za više visoki nivo 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 štetilo, programi i umetci zasnovani 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 novi jezik i mnogo ulaže u to. 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 savremenim sredstvima rad sa kodom. Osim toga, bez napuštanja Xcodea, možete testirati aplikaciju; ako je razvijen za eksterni uređaj, onda se može 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 uključeni. 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 potonje sintaksu, tipove podataka, metode praćenja napretka izvršavanja programa i dodajući mu objektno zasnovane mogućnosti. orijentirano programiranje- opis klasa i metoda.

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 prilika dinamički jezici, 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, kako bi stekli objektivno znanje, 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 smo grafička aplikacija, malo ćemo ga 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 gdje pogled tabele prikazuje se kolekcija objekata. Nakon odabira jednog od njih, prikazuju se detaljne informacije o tom objektu. Prvi pogled je glavni, drugi je detalj.
  • Aplikacija zasnovana na stranicama kreira aplikacije koje imaju više ekrana, poput stranica 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 - spriteova. Prilikom prikaza okvira koristi se standardna petlja, okvir se prikazuje nakon što se obradi sav sadržaj scene.
    SceneKit je okvir za vizualizaciju visokog nivoa 3D grafika bez pomoći OpenGL-a. Podržava preuzimanje, manipulaciju trodimenzionalni objekti. Uključuje: motor fizike, generator čestica i jednostavan metod skriptiranja.
    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. Otklonjeni API-ji zajedno s unaprijed kompajliranim shaderima i multi-threading omogućavaju vašoj igri da se podigne na vrh. novi nivo produktivnost i kvalitet.
  • Aplikacija za paket naljepnica - nova vrsta aplikacije predstavljene 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. Pošto se nećemo razvijati veliki program, sredstva predviđena ovom odredbom će nam biti dovoljna. Kliknite na Next. On sljedeća stranicaČarobnjak mora 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; ne trebaju nam nikakvi testovi. Sljedeći. Odaberite folder za spremanje projekta. Sada kliknite na dugme Kreiraj.

Kao rezultat, otvorit će se prozor sa listom svih parametara primijenjenih na projektu. 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 datoteke zaglavlja ViewController.h u poseban prozor 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 uradite ovaj trik: pomaknite kursor miša na komponentu - tekstualnu oznaku, držite pritisnut Ctrl taster I lijevo dugme miševi. 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, vizualnu komponentu). 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 Skladištenja odaberite 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 prevukli 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. To je ono što nam treba. U listi Argumenti ostavićemo podrazumevanu vrednost: Sender je objekat koji je poslao ovaj signal, u našem slučaju to će uvek 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 privatna metoda(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 svojstva skrivena. 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 saznati 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.

Brzi jezik

U 2014 godine Apple predstavio novi programski jezik - Swift. Ubrzo je postao jezik o kome se najviše govori i najbrže rastući jezik na svijetu. Pouzdan je, siguran, intuitivan jasan jezik za razvoj aplikacija za operativne sisteme macOS, iOS, tvOS i watchOS za čitavu flotu Apple uređaja. Swift- efikasan jezik programiranje. 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.

At Brzi razvoj Cilj je bio stvoriti najpogodniji sistemski programski jezik - brz, siguran i izražajan.

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.

Zahvaljujući svom eksponencijalnom razvoju, 03.12.2015 Brzi jezik je doprinijelo zajednici otvorenog koda. Istovremeno, Apple striktno prati njegov razvoj, organizirajući komitet za njegov razvoj. Sada je Swift dostupan ne samo u Apple sistemi, ali i na Linuxu. Sve 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 studiranju ovog jezika programiranje.

Prodavnica aplikacija

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 Prodavnica aplikacija Store.

Rezultati

Razvili smo jednostavnu aplikaciju za iOS mobilni operativni sistem koristeći programski sistem Xcode zajedno sa jezikom Objective-C. Testirano gotova aplikacija na simulatoru iPhone 7. Naučili smo kako da napravimo korisničko sučelje koristeći Interface Builder, kako da povežemo grafičke elemente sa kodom aplikacije i kako da kreiramo rukovaoce događajima. Upoznali smo se sa osnovama Objective-C. Osim toga, skrenuli smo pažnju na obećavajući jezik Swift, 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 Java jezik, nakon čega slijedi učenje osnovnog programiranja za Android mobilni operativni 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 izdaju zadaća, što se zatim 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

Najbolji članci na ovu temu