Modern
Swift este rezultatul celor mai recente cercetări privind limbajele de programare, combinate cu decenii de experiență în construirea platformelor Apple. Parametrii numiți sunt exprimați într-o sintaxă curată, care face API-urile din Swift și mai ușor de citit și întreținut. Chiar mai bine, nici măcar nu trebuie să tastați punctele și virgulele. Tipurile deduse fac codul mai curat și mai puțin predispus la greșeli, în timp ce modulele elimină antetele și oferă spații de nume. Pentru a sprijini cel mai bine limbile internaționale și emoji-urile, șirurile sunt corecte Unicode și utilizează o codificare bazată pe UTF-8 pentru a optimiza performanța pentru o gamă largă de cazuri de utilizare. Memoria este gestionată automat folosind un număr de referințe determinist, restrâns, menținând utilizarea memoriei la un nivel minim, fără cheltuielile generale de colectare a gunoiului.
Declarați noi tipuri cu modele moderne, simple sintaxă. Furnizați valori implicite pentru proprietățile instanței și definiți inițializatori personalizați.
Adăugați funcționalitate tipurilor existente folosind extensii și reduceți boilerplate cu interpolare de șiruri personalizate.
Extindeți rapid tipurile personalizate pentru a lua avantajul caracteristicilor de limbaj puternice, cum ar fi codificarea și decodarea automată JSON.
Efectuați transformări personalizate puternice utilizând închideri simplificate.
Aceste concepte orientate spre viitor au ca rezultat un limbaj ușor și distractiv. de utilizat.
Swift are multe alte funcții pentru a face codul mai expresiv:
- Generice puternice și ușor de utilizat
- Extensii de protocol care faceți scrierea codului generic și mai ușoară
- Funcții de primă clasă și o sintaxă ușoară de închidere
- Iterație rapidă și concisă pe o gamă sau colecție
- Tuple și valori multiple returnate
- Structuri care acceptă metode, extensii și protocoale
- Enumurile pot avea sarcini utile și acceptă potrivirea modelelor
- Modele funcționale de programare, de exemplu, hartă și filtru
- Tratarea erorilor native folosind try / catch / throw
Conceput pentru siguranță
Swift elimină clase întregi de cod nesigur. Variabilele sunt inițializate întotdeauna înainte de utilizare, tablourile și numerele întregi sunt verificate pentru depășire, memoria este gestionată automat și aplicarea accesului exclusiv la protecția memoriei împotriva multor greșeli de programare. Sintaxa este reglată pentru a vă facilita definirea intenției – de exemplu, cuvintele cheie simple cu trei caractere definesc o variabilă (var) sau constantă (let). Și Swift valorifică puternic tipurile de valori, în special pentru tipurile utilizate în mod obișnuit, cum ar fi matrice și dicționare. Aceasta înseamnă că, atunci când faceți o copie a ceva cu acel tip, știți că nu va fi modificat în altă parte.
O altă caracteristică de siguranță este că, în mod implicit, obiectele Swift nu pot fi niciodată nule. De fapt, compilatorul Swift vă va împiedica să încercați să creați sau să utilizați un obiect nul cu o eroare în timpul compilării. Acest lucru face ca scrierea codului să fie mult mai curată și mai sigură și previne o categorie imensă de blocări în timpul rulării în aplicațiile dvs. Cu toate acestea, există cazuri în care zero este valid și adecvat. Pentru aceste situații, Swift are o caracteristică inovatoare cunoscută sub numele de opționale. O opțională poate conține zero, dar sintaxa Swift vă obligă să vă descurcați în siguranță folosind? sintaxă pentru a indica compilatorului că înțelegeți comportamentul și îl veți gestiona în siguranță.
Utilizați opționalele atunci când este posibil să aveți o instanță pentru a reveni dintr-o funcție sau nu.
cum ar fi legarea opțională, înlănțuirea opțională și coaliția nulă vă permit să lucrați în siguranță și eficient cu valori opționale.
Rapid și puternic
Încă de la prima sa concepție, Swift a fost construit pentru a fi rapid. Folosind tehnologia de compilare LLVM extrem de performantă, codul Swift este transformat într-un cod nativ optimizat, care beneficiază la maximum de hardware-ul modern. Sintaxa și biblioteca standard au fost, de asemenea, reglate pentru a face ca cel mai evident mod de a scrie codul să funcționeze cel mai bine, indiferent dacă rulează în ceas pe încheietura mâinii sau pe un grup de servere.
Swift este un succesor atât în limbile C, cât și în limbile Objective-C. Include primitive de nivel scăzut, cum ar fi tipurile, controlul fluxului și operatorii. De asemenea, oferă funcții orientate spre obiecte, cum ar fi clase, protocoale și generice, oferind dezvoltatorilor Cocoa și Cocoa Touch performanța și puterea pe care o cer.
Mare limbă primară
Swift poate deschide ușile către lumea codificării. De fapt, a fost conceput pentru a fi primul limbaj de programare al oricui, indiferent dacă sunteți încă la școală sau explorați noi căi de carieră. Pentru educatori, Apple a creat un curriculum gratuit pentru a-l preda pe Swift atât în clasă, cât și în afara ei. Codificatorii pentru prima dată pot descărca Swift Playgrounds – o aplicație pentru iPad care face ca începutul cu codul Swift să fie interactiv și distractiv.
Dezvoltatorii de aplicații aspirante pot accesa cursuri gratuite pentru a învăța să își construiască primele aplicații în Xcode.Și magazinele Apple din întreaga lume găzduiesc astăzi la Apple Coding & sesiuni de aplicații unde puteți obține experiență practică cu codul Swift.
Aflați mai multe despre resursele educaționale Swift de la Apple
Sursă și compatibilitate binară
Cu Swift 5, nu trebuie să modificați niciun cod Swift 4 pentru a utiliza noua versiune a compilatorului. În schimb, puteți începe să utilizați noul compilator și să migrați în propriul ritm, profitând de noile caracteristici Swift 5, câte un modul la un moment dat. Și Swift 5 introduce acum compatibilitatea binară pentru aplicații. Asta înseamnă că nu mai trebuie să includeți biblioteci Swift în aplicații care vizează versiunile actuale și viitoare ale sistemului de operare, deoarece bibliotecile Swift vor fi incluse în fiecare versiune a sistemului de operare în viitor. Aplicațiile dvs. vor utiliza cea mai recentă versiune a bibliotecii din sistemul de operare, iar codul dvs. va continua să ruleze fără recompilare. Acest lucru nu numai că simplifică dezvoltarea aplicației, ci și dimensiunea aplicației și timpul de lansare.
Open Source
Swift este dezvoltat în aer liber la Swift. org, cu cod sursă, un tracker de erori, forumuri și versiuni regulate de dezvoltare disponibile pentru toată lumea. Această comunitate largă de dezvoltatori, atât în cadrul Apple, cât și sute de colaboratori externi, lucrează împreună pentru a face Swift și mai uimitor. Există o gamă și mai largă de bloguri, podcast-uri, conferințe și întâlniri în care dezvoltatorii din comunitate își împărtășesc experiențele despre cum să realizeze marele potențial al Swift.
Cross Platform
Swift susține deja toate Platforme Apple și Linux, cu membrii comunității care lucrează în mod activ la portul pe mai multe platforme. Cu SourceKit-LSP, comunitatea lucrează și la integrarea asistenței Swift într-o gamă largă de instrumente pentru dezvoltatori. Suntem încântați să vedem mai multe moduri în care Swift face software-ul mai sigur și mai rapid, în timp ce face programarea mai distractivă.
Swift for Server
În timp ce Swift oferă multe aplicații noi pe platformele Apple , este, de asemenea, utilizat pentru o nouă clasă de aplicații moderne de server. Swift este perfect pentru utilizare în aplicații de server care necesită siguranță în timpul rulării, performanță compilată și o amprentă mică de memorie. Pentru a orienta direcția Swift pentru dezvoltarea și implementarea aplicațiilor server, comunitatea a format grupul de lucru Swift Server. Primul produs al acestui efort a fost SwiftNIO, un cadru de aplicații de rețea asincron cu mai multe platforme, bazat pe evenimente, pentru servere și clienți de protocol de înaltă performanță. Acesta servește ca bază pentru construirea unor instrumente și tehnologii suplimentare orientate către server, inclusiv jurnalizare, valori și drivere de baze de date, care sunt toate în dezvoltare activă.
Pentru a afla mai multe despre comunitatea Swift open source și despre activitatea Swift Server grup, vizitați Swift.org
Locuri de joacă și Read-Eval-Print-Loop (REPL)
La fel ca Swift Playgrounds pentru iPad, locurile de joacă în Xcode fac scrierea codului Swift incredibil de simplu și distractiv. Tastați o linie de cod și rezultatul apare imediat. Puteți apoi să priviți rapid rezultatul din partea laterală a codului sau să fixați rezultatul direct mai jos. Vizualizarea rezultatelor poate afișa grafice, liste de rezultate sau grafice ale unei valori în timp. Puteți deschide Asistentul cronologiei pentru a viziona evoluția și animarea unei vizualizări complexe, excelentă pentru experimentarea cu noul cod UI sau pentru a reda o scenă animată SpriteKit în timp ce o codificați. După ce v-ați perfecționat codul în locul de joacă, pur și simplu mutați codul în proiectul dvs. Swift este, de asemenea, interactiv atunci când îl utilizați în Terminal sau în consola de depanare LLDB a Xcode. Utilizați sintaxa Swift pentru a evalua și interacționa cu aplicația dvs. care rulează sau scrieți un cod nou pentru a vedea cum funcționează într-un mediu de tip script.
Manager de pachete
Managerul de pachete Swift este un singur instrument multi-platformă pentru construirea, rularea, testarea și ambalarea bibliotecilor și executabilelor Swift. Pachetele Swift sunt cel mai bun mod de a distribui biblioteci și cod sursă către comunitatea Swift. Configurarea pachetelor este scrisă în Swift în sine, facilitând configurarea țintelor, declararea produselor și gestionarea dependențelor pachetelor. Nou pentru Swift 5, comanda rapidă include acum posibilitatea de a importa biblioteci într-un REPL fără a fi nevoie să construiți un executabil. Swift Package Manager în sine este de fapt construit cu Swift și inclus în proiectul open source Swift ca pachet.
Interoperabilitate Objective-C
Puteți crea astăzi o aplicație complet nouă cu Swift, sau începeți să utilizați codul Swift pentru a implementa funcții și funcționalități noi în aplicația dvs. Codul Swift coexistă împreună cu fișierele dvs. existente Objective-C în același proiect, cu acces complet la API-ul dvs. Objective-C, facilitând adoptarea.