Xcode 5 Essentials

Xcode 5 reprezintă un important pas înainte pentru ecosistemul Apple, oferind dezvoltatorilor mai multe posibilități, caracteristici și instrumente decât oricând. Cu versiunea 5, Xcode a devenit un IDE extrem de puternic. Citiți acest articol pentru a afla ce este nou!

Introducere

Xcode 5 este plin de îmbunătățiri și completări, atât mari, cât și mici. Toate aceste modificări oferă o asistență enormă dezvoltatorilor. Modificările încep în interfață, unde stilul actualizat de aspect și stil a fost ajustat pentru a se încadra în noul ecosistem iOS 7. Doar prin turnee în jurul dvs. veți observa o serie de modificări stilistice, începând de la ecranul de întâmpinare.

Noile adăugiri sunt vizibile la utilizarea Xcode-ului, iar odată ce lucrați cu el pentru o vreme, veți descoperi că în această versiune Apple vizează două puncte majore. Primul obiectiv este de a scuti dezvoltatorii de diferite sarcini de configurare în ceea ce privește aplicațiile lor. Celălalt obiectiv este de a ridica depanarea și testarea la un nivel complet nou și de a oferi dezvoltatorilor instrumente utile care să facă aceste sarcini mai ușoare și mai eficiente.

Toate noile caracteristici vor fi introduse imediat. Pe scurt, iată o listă cu toate noile caracteristici sau cele cu modificări esențiale pe care le veți întâlni în acest tutorial:

  • Configurarea automată
  • Sursa controlului sursei
  • Interface Builder și Autolayout Enhancements
  • Catalogul activelor
  • Depanarea dispozitivelor
  • Măsurători de depanare
  • Testarea și Bots
  • Îmbunătățiri ale compilatoarelor

1. Configurarea automată

Activarea unui serviciu Apple într-o aplicație a fost întotdeauna o sarcină care a necesitat un anumit număr de pași pe care dezvoltatorul ar trebui să le îndeplinească până când aplicația este pe deplin configurată și funcționează. Cadrele trebuie să fie legate de proiect, trebuie adăugate drepturi la ID-ul aplicației, cheile ar trebui să fie adăugate în fișierul * .plist și toate sarcinile trebuie să se facă în conformitate cu cerințele serviciului. Mulți pași mici au făcut acest lucru un proces dificil.

Xcode 5 elimină hassle de a face toate cele de mai sus de la dezvoltatori, datorită Configurarea automată caracteristică. Cu configurarea automată, singura cerință pentru dezvoltatori este ID-ul Apple (asociat unui program pentru dezvoltatori). Xcode apoi permite automat și stabilește orice servicii pe care dezvoltatorii doresc, prin legarea cadrelor, gestionarea drepturilor și efectuarea oricăror altor lucruri necesare pentru ca un serviciu să funcționeze. Dezvoltatorii nu au nevoie să facă altceva decât să aleagă serviciile pe care le-ar plăcea să le vadă în aplicațiile lor. Chiar și profilurile provizorii pot fi create opțional automat cu setările corespunzătoare. Aceasta este o caracteristică minunată pentru dezvoltatori!

Să aruncăm o privire mai detaliată la Configurația automată.

Este simplu să vă atribuiți ID-ul Apple în cadrul Xcode. Pur și simplu deschis Meniul Xcode> Preferințe ...> Conturi. Fila Conturi este o funcție nouă în Xcode 5.


În partea din stânga jos a ferestrei Preferințe există trei butoane: un semn plus, un semn minus și un semn de viteză. Faceți clic pe Semnul Plus> Adăugați ID-ul Apple ... opțiune. În formularul care apare, furnizați ID-ul dvs. Apple, parola și faceți clic pe Adăuga.


Dacă totul merge conform planului, ID-ul Apple pe care tocmai l-ați adăugat ar trebui să fie listat în partea stângă a ferestrei. În partea dreaptă, dacă selectați ID-ul dvs. și faceți clic pe Vezi detalii buton, o altă fereastră apare pe ecran.


Aceasta conține toate identitățile dvs. de semnare și profilurile de provizionare. Puteți crea, elimina sau revoca identitatea de semnare utilizând butoanele corespunzătoare din zona de identitate a semnelor. De asemenea, cu butonul de reîmprospătare din partea de jos a ferestrei, puteți actualiza toate modificările pe care le efectuați online în profilurile dvs. de furnizare.

Pentru a șterge un ID Apple, trebuie doar să selectați ID-ul respectiv din lista din Conturi și să faceți clic pe butonul Meniu din partea stângă jos a acestuia.

Capacități fila permite automat configurarea serviciilor Apple. Această caracteristică poate fi găsită dacă faceți clic pe proiectul dvs. pe Project Navigator.

După cum vedeți în figură, este doar o chestiune de activare sau dezactivare a butonului de comutare. Capacitățile oferă suport automat de configurare pentru următoarele servicii:

  1. icloud
  2. Centru de jocuri
  3. Passbook
  4. Achiziție în aplicație
  5. Hărți
  6. Moduri de fundal
  7. Distribuirea de chei
  8. Inter-App Audio
  9. Protejarea datelor

Dacă extindeți oricare dintre acestea, devine vizibilă o descriere a serviciului selectat și informații despre acțiuni. De exemplu, dacă extindeți Centru de jocuri se va afișa următoarea figură, în care se afirmă că dreptul de acces "Game Center" a fost adăugat la ID-ul aplicației, tasta "GameKit" a fost adăugată în fișierul info plist, iar cadrul GameKit a fost legat de proiectul dvs. Acestea sunt acțiuni și pași pe care ai putea să le faci manual, dar acum Xcode o poate face automat în numele tău! Dacă alegeți astfel, puteți continua să faceți acest lucru pe cont propriu, dar Xcode vă economisește ceva timp.

În General (cea din partea stângă a filei Capabilități), în interiorul Identitate secțiune, există Echipă meniul derulant. Dacă ați adăugat cu succes ID-ul dvs. Apple în Xcode, faceți clic pe acesta pentru a selecta o echipă de dezvoltare exact așa cum apare în iTunes Connect. Pentru dezvoltatorii care joacă solo, apare numele lor complet. Dacă doriți ca configurația automată să funcționeze corect pentru dvs., vă recomandăm să selectați echipa (sau numele) înainte de a activa orice serviciu din fila Capabilități. În cazul în care părăsiți valoarea echipei Nici unul, atunci când încerci să activezi un serviciu, vei fi întrebat de Xcode pentru a-ți selecta echipa.

Pe baza ID-ului Apple din fila Conturi din preferințele Xcode, setările de identificare a semnării și setările de capabilități, Xcode poate crea noi profiluri de provizionare pentru dvs., utilizând setările corespunzătoare, în loc să facă acest lucru manual. De asemenea, remedierile sunt aplicate profilurilor de furnizare existente cu probleme.

Pentru a recupera, Configurația automată vă salvează de la o muncă manuală exigentă, făcând mulți pași pentru dvs. Cu toate acestea, puteți crea și seta totul manual, așa cum ați procedat în mod tradițional, sau faceți niște pași singuri și permiteți altora să se facă automat prin Xcode. Este o trăsătură extraordinară, folosiți-o la voință.


2. Sursa de control

Sistemele de control al surselor și versiunilor sunt întotdeauna utile și sunt obligatorii pentru proiectele care tind să devină mari și sunt dezvoltate de o echipă de programatori. Chiar și dezvoltatorii singuratici ar trebui să adopte obiceiul de a folosi un sistem de control al sursei, deoarece este un instrument excelent, mai ales când vine vorba de urmărirea schimbării codului. Un sistem de control al sursei vă permite să urmăriți modificările de cod și să reveniți la o versiune mai stabilă atunci când este necesar. Pentru dezvoltarea echipei, este minunat pentru că permite fiecărui dezvoltator să construiască o parte a proiectului, pur și simplu prin crearea unei copii a acestuia (ramură) și fără a interfera cu codul altor dezvoltatori. Atunci când diferite piese de proiect sunt gata, ele pot fi puse împreună (îmbinate) într-o singură versiune de lucru a codului. De asemenea, în cazurile în care apar prea multe bug-uri, dezvoltatorii pot reveni la o versiune mai stabilă și pot urmări modificările de cod, prin simpla comparare a două versiuni ale aceluiași fișier. git este un astfel de sistem de control al sursei.

Xcode 5 oferă o gravitate deosebită controlului sursei. În Xcode 4.6, controlul sursei poate fi găsit sub Fişier meniul. În versiunea 5, controlul sursă se bucură de propriul său meniu de nivel superior din bara de meniu Xcode.


După cum vedeți în figură, în acest meniu puteți vedea direct proiectul curent pe care lucrați și accesați anumite operații, cum ar fi comite, Apăsați, Sucursala nouă, Treceți la sucursală, Mergeți de la sucursală, si multe altele. Este foarte ușor și rapid să accesați sistemul de control al sursei și să păstrați toate modificările pe care le doriți în depozitele dumneavoastră.

Vorbind despre depozit, puteți să le contactați direct la lansarea Xcode, chiar și din ecranul de întâmpinare, făcând clic pe Verificați un proiect existent opțiune.


Navigați la Verifică , unde puteți vedea o listă a tuturor depozitelor dvs., a preferințelor dvs. sau a celor mai recente. Alternativ, puteți introduce o locație în care poate fi găsit un depozit.

O altă opțiune utilă în ceea ce privește controlul surselor și Xcode 5 este Vinați pentru această linie funcționare în cadrul Editor meniul. Această opțiune afișează informații despre comentariile despre linia curentă pe care este activă cursorul și afișează cine a făcut ultimul comentariu. Acest lucru este util în mod special în proiectele de echipă, deoarece ușurează găsirea dezvoltatorului care a modificat ultima dată codul.


Rețineți că, dacă încercați să utilizați opțiunea Blame fără a comite cel puțin unul dintre fișierele dvs. utilizând meniul Source Control (Control sursă), nu vi se vor afișa informații.

Ca multe alte aspecte ale Xcode, controlul sursei este configurabil, de asemenea. Mergi la Xcode> Preferințe ...> Control sursă pentru a accesa setările acestuia. Dacă doriți, puteți dezactiva complet controlul sursei pentru proiectul dvs. (dar este recomandat să nu faceți acest lucru). Setați opțiunile în funcție de preferințele dvs. și lucrați în mediul dvs. personalizat.

Dacă nu utilizați Controlul Surselor atunci când dezvoltați aplicații, atunci sunteți puternic încurajați să începeți să faceți acest lucru. Veți observa că păstrarea versiunilor fișierelor dvs., revenirea la versiuni mai vechi sau compararea acestora este un proces care vă poate economisi o mulțime de timp atunci când încercați să urmăriți erorile din codul dvs..

3. Interface Builder și Autolayout

Interface Builder, proiectantul GUI al Xcode, nu pare să aibă multe modificări aparente, cu excepția grilajului lipsă și a actualizării estetice generale. Cu toate acestea, o caracteristică majoră care a fost adăugată în această versiune de Xcode este capacitatea de a previzualizare configurarea interfeței pentru versiunile iOS egală sau mai devreme de 6.1. Toate elementele grafice (subviews) au fost reproiectate, iar dezvoltatorii trebuie să știe dacă poziția, dimensiunea sau aspectul subview-urilor funcționează atât pentru iOS 7, cât și pentru versiunile anterioare ale iOS.

Pentru a utiliza funcția de previzualizare în Interface Builder, arătați mai întâi Editor asistent.


Dacă Xcode afișează automat orice fișier care conține cod în Editorul asistent, localizați și deschideți fișierul .xib sau storyboard pe care doriți să îl previzualizați manual, după cum se arată în figura următoare.


După ce ați deschis fișierul GUI atât în ​​Editorul standard, cât și în Editorul asistent, faceți clic pe Fișierul Fișiere corelate> Previzualizare> Dosarul tău al editorului asistent.

Observați un cadru în partea dreaptă jos a ecranului, unde se afișează iOS 7.0 și o versiune ulterioară. Dați clic pe el, selectați iOS 6.1 și anterioare și veți avea pregătirea previzualizată.

Previzualizarea este un instrument util pentru dezvoltatorii care doresc să păstreze compatibilitatea înapoi în aplicațiile lor și să sprijine versiunile anterioare de iOS. Deci, dacă aplicația dvs. nu acceptă numai iOS 7, utilizați-o atunci când proiectați interfața.

Să vorbim despre autoLayout caracteristică acum. Autolayout nu este ceva nou în iOS 7, dar în Xcode 5 a fost reproiectat de la bază, oferind dezvoltatorilor libertatea maximă de a seta și de a schimba constrângerile. Aceasta înseamnă că puteți seta orice constrângeri pe care le doriți, așa cum doriți (chiar să le ștergeți) fără o intervenție automată din Xcode. Vă va avertiza dacă există lipsuri sau constrângeri care nu se potrivesc, dar vă va permite să faceți orice doriți fără limitări.

În contradicție cu versiunile anterioare ale codului Xcode, în versiunea 5 a fost adăugat un nou subview într-o vizualizare care nu include nici o constrângere. Aceasta permite dezvoltatorilor să decidă ce constrângeri au nevoie. De asemenea, noi opțiuni pentru setarea constrângerilor sunt disponibile în cadrul din dreapta-jos al interfeței Builder (alternativ, în Editor meniu), pe care îl puteți utiliza fie pentru a seta valori personalizate și pentru anumite constrângeri, fie pentru a permite Xcode-ului să configureze automat aspectul pentru dvs..

Când setați constrângerile și Xcode detectează că există ambiguități sau probleme, culorile linii de constrângere sunt roșii în loc de albastru. Aceștia rămân astfel până când toate problemele legate de subiectul vizat sunt rezolvate. Iată un exemplu în care lipsesc constrângerile și Xcode ne avertizează folosind culoarea liniei:

Avertismentele sau erorile legate de constrângerile lipsă sau de vizualizările greșite sunt de asemenea afișate de Xcode în Schița documentelor, lângă opinia că există neconcordanțe. Pentru a examina problema, faceți clic pe săgeata galbenă sau roșie care apare chiar lângă vizualizare și apare o listă a tuturor problemelor legate de aspect. Cea mai ușoară modalitate de a repara totul este să faceți clic pe fiecare semn de avertizare sau de eroare care apare și, printr-o listă de soluții sugerate și posibile, pe care Xcode le oferă, pentru a selecta cea mai potrivită, în funcție de nevoile dvs. Cealaltă modalitate este de a continua să jucați cu constrângerile vizualizării sau a vizualizărilor care provoacă problemele, până când reușiți să opriți toate avertismentele sau erorile.

Ca o consiliere, vă recomand că atunci când utilizați Actualizați constrângerile, Adăugați constrângeri lipsă, sau Resetați la Condiții sugerate opțiuni pentru a permite Xcode să configureze automat toate constrângerile de care nu este nevoie să atingeți manual. Aceste opțiuni pot fi găsite fie în meniu Editor> Rezolvați problemele de configurare automată sau în butonul respectiv care apare în partea dreaptă de jos a zonei de desen a Interfeței Builder.


4. Catalogul de active

Catalogul activelor este o altă caracteristică nouă a Xcode 5 cu scop dublu:

  1. Pentru a vă pune împreună toate imaginile și vă permite să le păstrați într-un singur loc.
  2. Pentru a vă scuti de necesitatea de a vă aminti toate convențiile de numire necesare pentru icoanele aplicațiilor și lansarea imaginilor.

Cu catalogul de active nu este necesar să vă amintiți regulile care se aplică pictogramei aplicației sau denumirea imaginii lansării. Activele cu astfel de imagini pot avea acum orice nume doriți. Xcode acceptă totul și le dă automat numele potrivit. De asemenea, catalogul de active constă în cel mai bun loc pentru a avea imaginile împreună și pentru a le accesa simultan când este necesar.

Catalogul de active este reprezentat ca a grup cu o pictogramă albastră în lista grupurilor și fișierelor din Project Navigator.


Notă: dacă creați un nou proiect de aplicație iOS 7 pe Xcode, catalogul de active este în locul său. Cu toate acestea, dacă mutați un proiect existent în iOS 7, atunci trebuie să creați singur Catalogul de active. Acest lucru este ușor de făcut. În General fișier al proiectului dvs., în interiorul App icons secțiune există un buton cu titlu Utilizați Catalogul de active. Faceți clic pe acesta și pe formularul de catalog.

Dacă faceți clic pe pictograma Catalog de active din Project Navigator, veți vedea o serie de sloturi goale care așteaptă să accepte pictogramele aplicației. Caracteristica Catalogul de active afișează sloturi pentru toate dispozitivele țintă pe care le-ați setat în proiectul dvs. Pentru a adăuga o pictogramă de aplicație, puteți glisa și plasa unul dintr-un director de pe computer în slotul corespunzător. Aceeași regulă se aplică și în cazul imaginilor de lansare, în cazul în care există sloturi goale pentru toate dispozitivele și o orientare acceptată pe care o aveți în opțiunile proiectului. Încă o dată vă reamintesc că icoanele aplicațiilor și imaginile lansate pot avea orice nume doriți; Xcode stabilește automat cele corespunzătoare.


Toate celelalte imagini pe care doriți să le adăugați la o aplicație pot fi ușor introduse în catalogul de active, pur și simplu trăgându-le acolo. Dacă există deja imagini în proiectul dvs., aici este cel mai rapid mod de a le muta de la Project Navigator în Catalogul de active:

  1. Faceți clic pe Butonul Plus care se află în colțul din stânga jos din panoul din stânga al Catalogului de active.
  2. Faceți clic pe Importați din proiect ... opțiune.
  3. Selectați imaginile dorite pe fereastra care apare (dacă acestea nu sunt deja selectate) și apoi faceți clic pe Import buton.

Odată ce imaginile sunt importate sau adăugate direct de pe computer, veți observa că în interiorul Catalogului de active există o înregistrare pentru fiecare imagine. Dacă faceți clic pe oricare dintre ele, veți vedea că există două sloturi asociate cu acesta. Primul acceptă imaginea de rezoluție normală (1x), iar al doilea acceptă imaginea de rezoluție a afișajului retinei (2x).


5. Debugger

Debugging-ul pe Xcode 5 oferă o nouă experiență dezvoltatorilor, deoarece noi caracteristici au fost adăugate la depanator. Urmărirea valorilor variabilelor este mai ușoară. Previzualizarea imaginilor, a documentelor și a altor obiecte este acum doar o chestiune de un singur clic, iar o mare flexibilitate apare atunci când lucrați cu puncte de întrerupere. Debuggerul de pe Xcode 5 se bazează pe LLDB motor, care a înlocuit în totalitate gDB motor. LLDB este mai puternic și subliniază toate noile caracteristici de depanare. Deci, să aruncăm o privire la îmbunătățirile.

Prima mare ameliorare vizuală există sfaturi de date. Un vârf de date afișează valoarea unei variabile în timpul depanării, când indicatorul mouse-ului se află peste variabila. Pentru variabilele de tip simplu de date, vârful datelor arată pur și simplu valoarea, la fel ca în figura următoare:

În ceea ce privește obiectele, sfaturile pentru date furnizează informații sumare pentru fiecare obiect care se deplasează, dar cea mai mare schimbare este că mai mult decât textul poate fi afișat acum. Imaginile, documentele text, curbele bezier și multe altele pot fi previzualizate pe Xcode în timpul depanării, deci este mai ușor pentru dezvoltatori să-și examineze obiectele și să fie siguri de conținutul lor. Combinația de date și grafică oferă o mare flexibilitate atunci când încearcă să găsească bug-uri, deoarece atât variabilele unice, cât și obiectele pot fi vizualizate simultan. Aceasta este o caracteristică excelentă care reduce timpul de depanare! Aruncați o privire la următoarea imagine pentru a vedea un exemplu:


Alături de fiecare obiect pe care îl puteți previzualiza, la fel ca în imaginea anterioară, o ochi si un info butoanele sunt afișate. Puteți să previzualizați (funcția Quick Look) obiectul selectat făcând clic pe butonul pentru ochi. De asemenea, puteți vedea informații detaliate făcând clic pe butonul info.

În afară de sfaturile de date, breakpoints au fost îmbunătățite. Dacă ați depistat anterior un proiect, atunci știți că punctele de întrerupere pot fi setate pur și simplu făcând clic pe partea stângă a liniilor unde doriți să fie. Punctele de blocare pot fi activate sau dezactivate fie făcând clic pe fiecare dintre ele, fie folosind punct de întrerupere. Cu Xcode 5 acest lucru nu mai există pe bara de instrumente de sus, dar a fost mutat pe bara de instrumente de depanare din partea de jos a ferestrei Xcode. Cu ajutorul acestui buton puteți comuta simultan toate punctele de întrerupere. Punctele de blocare activate sunt afișate în albastru, iar punctele de întrerupere sunt afișate în gri. Pentru a elimina complet un punct de pauză, faceți clic dreapta pe el și selectați Șterge punctul de întrerupere opțiune.

Pe Xcode 5 punctele de întrerupere funcționează condiționat. Mai mult, acțiunile se atașează atunci când o condiție este îndeplinită. În acest fel, dezvoltatorii nu trebuie să stabilească și să dezactiveze întreruperile tot timpul, trebuie doar să adauge condiții sau să selecteze puncte de întrerupere pentru a ignora anumite momente și să se concentreze mai mult pe depanare. Acțiunile furnizate, care sunt disponibile și se pot atașa la un punct de pauză atunci când o condiție este îndeplinită, sunt enumerate mai jos:

  • AppleScript
  • Captură OpenGL ES cadru
  • Comandă de depanare
  • Mesaj de jurnal
  • Comandamentul Shell
  • Sunet

Mai mult de o acțiune poate fi setată la puncte de întrerupere atunci când condițiile sunt îndeplinite. De exemplu, este posibil să vă înregistrați un mesaj și, în același timp, să redați un sunet care vă anunță despre condiția punctelor de pauză. Iată un exemplu:


Deci, atunci când folosiți aceste noi caracteristici, depanarea devine mult mai ușoară. Codul Buggy poate fi urmărit mai repede și timpul pierdut poate fi acum salvat și dat altor sarcini. În combinație cu următoarea caracteristică nouă, depanarea devine o experiență cu totul nouă!


6. Măsurători de depanare

Cu mult timp în urmă, când resursele de sistem (cum ar fi CPU-ul și memoria) erau limitate într-un sistem informatic, programatorii trebuiau să petreacă mult timp asigurându-se că programele lor funcționează folosind cât mai puține resurse. A fost o sarcină dificilă, dar a fost cel mai bun mod de a se asigura că nu au existat scurgeri de memorie sau că a apărut o utilizare CPU inutilă. Astăzi, cu noile subsisteme puternice și rapide pe care le utilizează dispozitivele, este destul de frecvent ca dezvoltatorii să ignore eventualele scurgeri cauzate de aplicațiile lor, deoarece ei văd că aplicațiile lor rulează destul de repede pe dispozitive moderne. Cu toate acestea, resursele sunt întotdeauna limitate și, ignorându-le, o potențială accidentare a aplicației ar duce cu siguranță la o experiență nefavorabilă a utilizatorului.

Aici este locul Măsurători de depanare fac debutul lor, venind ca instrumente auxiliare de depanare care permit dezvoltatorilor să urmărească utilizarea nedorită a resurselor sistemului. De fapt, Debug Gauges constă într-o versiune ușoară a unora Instrumente unelte, acestea sunt încorporate în Xcode (nu este nevoie să se deschidă în fereastră nouă, cum ar fi Instruments) și, mai presus de toate, pot rula tot timpul împreună cu aplicația în timpul depanării. Calibrele vă permit să respectați următoarele resurse:

  • Procesor
  • Memorie
  • Energie
  • icloud
  • OpenGL ES

Instrumentele de depanare sunt accesibile prin Debug Navigator, și apar atunci când rulează o aplicație. Elementele grafice mari reprezintă fiecare resursă care este vizionată, deci este simplu să le folosiți.

Desigur, pentru o profilaxie detaliată și detaliată a aplicației dvs., puteți utiliza instrumentele oricând aveți nevoie. Un buton pe care îl puteți apăsa pentru a deschide Instrumentele dintr-o dată este întotdeauna în partea dreaptă sus a ferestrei manometrelor. Când se execută o aplicație, puteți face clic de la ecartament pentru a măsura și a urmări toate măsurătorile care au loc în timp real. Dacă observați orice comportament anormal, atunci puteți suspecta că ceva nu este corect în codul dvs. și trebuie să fie corectat.

Sunteți încurajați să utilizați aceste instrumente cât mai mult posibil pentru a observa și remedia erorile.


7. Testarea și Bots

Testarea este o parte importantă a procesului de dezvoltare și trebuie acordată întotdeauna o atenție deosebită. Din fericire cu aplicațiile de testare Xcode 5 este mult mai ușoară. În special cu noul Test Navigator. Test Navigator poate fi găsit pe panoul de navigare și conține toate testele pe care le creați.

Prin navigator, testele pot fi ușor editate, executate sau șterse. În dreptul fiecărui test, este afișată starea sa actuală, indiferent dacă a reușit, a eșuat sau nu a fugit încă. O mare flexibilitate a fost acordată și modului în care se desfășoară testele. Deci, puteți iniția un singur test, selectați o grămadă de ele sau le puteți lăsa să ruleze simultan.

Un nou cadru de testare a unității a fost introdus pe Xcode 5, XCTest, care există în paralel cu cadrul anterior, OCUnit. Cu toate acestea, primul va domina viitorul. Prin urmare, este recomandat să utilizați XCTest în proiectele dvs. În mod implicit, proiectele noi utilizează acest cadru. De asemenea, în Xcode 5, codul testat și testul însuși pot fi plasate una lângă alta folosind editorul asistent. În acest fel, puteți urmări atât codul, cât și detaliile de testare în timp ce rulează.

Motoare de cautare sunt o caracteristică complet nouă pe Xcode 5. Un bot este un serviciu care face în mod repetat o serie de sarcini, cum ar fi construirea, testarea, analizarea, arhivarea și semnarea unei aplicații (sarcini care în mod tradițional se vor face manual de către dezvoltatori). Aceste serii de sarcini sunt numite proces de integrare. Cu boti, procesul de integrare este automat și poate continua atâta timp cât este necesar.

Ceea ce face ca bots-ul să fie special este că, în loc să ruleze teste pe calculatorul local, aceștia pot muta aceste teste într-un server și pot efectua procesul de integrare acolo. În acest fel, computerele utilizate pentru dezvoltare nu sunt însărcinate cu sarcini de executare a testelor și, în plus, rezultatele testelor pot fi distribuite simultan întregii echipe în curs de dezvoltare. În plus, roboții pot executa mai multe teste pentru mai multe aplicații pe dispozitive atașate la server.

Bots poate fi configurat să funcționeze în două moduri. Conform primului mod, robotii efectuează procesul de integrare pe codul preluat de la un sistem de control al sursei, cum ar fi Git. Când sunt disponibile noi modificări, roboții pornesc procesul de integrare și continuă până când aplicația a fost finalizată și nu mai este nevoie de testarea. Acești roboți sunt chemați continuu. Al doilea mod este acela că procesul de integrare se repetă cât mai curând posibil. Sunt numiți boti care sunt configurați să funcționeze în acest mod noapte de noapte sau boți periodice și semnează și arhivează aplicația în fiecare etapă de reproducere, cu încă un rezultat, pentru a urmări istoricul în timp.

Pentru dezvoltarea echipelor, botii constau într-o modalitate foarte bună de a rula testele și de a împărtăși rezultatele. De asemenea, prin testele extinse care se efectuează datorită procesului de integrare continuă, găsirea erorilor și a erorilor este mult mai ușoară, în timp ce, datorită naturii testărilor, bug-urile pot fi izolate sau localizate în ceea ce privește hardware-ul specific sau alte setări . Bots sunt un salt extraordinar pentru Xcode!


8. Îmbunătățiri ale compilatoarelor

Până în prezent, toate noile caracteristici Xcode 5 au fost prezentate una câte una, dar acest tutorial nu ar fi completat dacă nu s-au făcut referiri la îmbunătățiri sub suprafață. Deci, hai să facem un scurt tur al schimbărilor majore și al adăugărilor aduse compilator.

În primul rând, până la versiunea 4.6, Xcode a suportat două compilatoare: Apple LLVM și LLVM-CCG 4.2. Pe Xcode 5, acesta din urmă a dispărut, și numai Apple LLVM rămâne, împuternicit cu noi caracteristici care îl fac și mai util.

Compilatorul LLVM introduce logica lui module. Dar, înainte de a explica modul în care este un modul, să vedem pe scurt problema pe care o face contraatacul. Atunci când un compilator analizează un fișier, acesta nu analizează doar codul existent în acel fișier, dar face și acest lucru pentru toate fișierele antet importate (utilizând comanda #import) în fișier. Acest proces funcționează recursiv, iar toate fișierele importate sunt în cele din urmă analizate până la ultima linie de cod. Aceasta înseamnă că, în loc să se analizeze doar liniile de cod existente în fișierul inițial, trebuie analizate alte mii de linii datorită importurilor continue. Aceasta nu este o problemă nouă, iar modulele au venit să ofere o soluție. Un modul este o bază de date simplă, optimizată, care păstrează codul parsizat al unui singur fișier de antet al sistemului (de exemplu, UIKit.h, Webkit.h, etc.) în cadrul. Compilatorul construiește a a stabilit de astfel de module și când este timpul să ne analizăm fișierul propriu, nu trebuie să analizăm din nou fișierele cu antet. Având în vedere că aceleași fișiere sunt importate din nou și din nou de mai multe ori, devine evident că modulele oferă o performanță excelentă în compilare. În plus, Xcode utilizează module pentru a realiza unele dintre caracteristicile sale avansate, cum ar fi sintaxa, evidențierea și completarea automată.

O altă caracteristică nouă a compilatorului este Auto-vectorizer, care a fost adăugată în mod clar din motive de performanță. Obiectivul său este de a analiza codul și de a găsi segmente, în care două sau mai multe operații (până la 32) pot rula în același timp. Acest lucru se datorează faptului că noile CPU-uri moderne oferă funcții vectoriale excelente pentru multi-threading virtuale, iar Autovectorizer profită de acest lucru. În aplicațiile în care sunt necesare calcule intense, această caracteristică poate spori cu adevărat performanța, în funcție de tipul de calcule.

Compilatorul poate citi acum documentația codului și produce sfaturi de ajutor, la fel ca în documentația încorporată. Deci, cu cât documentați mai mult codul dvs., cu atât mai detaliat este ajutorul oferit de Xcode. Aceste caracteristici au mult mai mult sens în cazul în car

Cod