Swift è il nuovissimo linguaggio di Apple, moderno, type-safe per lo sviluppo Cocoa. Swift è stato in sviluppo in 4 anni, ed è stato appena annunciato al WWDC di quest’anno (2 giugno 2014). Swift prende diversi costrutti tanto amati da altri linguaggi tra cui Objective-C, Rust, Haskell, Ruby, Python, C#, CLU e altri ancora.
La sintassi è molto più semplice e concisa, che abbassa la barriera di entrata allo sviluppo iOS, e rende il processo più piacevole. In questo articolo Swift FAQ, andrò a rispondere rispondere a molte domande frequenti che abbiamo ricevuto sulle nostre Pagine Facebook, Twitter, e Google Plus. Aggiorneremo periodicamente questa FAQ con le nuove domande che arrivano lungo la strada.
Si noti che alcune di queste risposte sono pareri personali o supposizioni probabili, visto che la versione ufficiale di Swift ancora non è stata rilasciata in versione pubblica globale. Ci piacerebbe anche sentire i vostri pareri / commenti, ed aggiorneremo questa FAQ in base al vostro feedback.
Le nozioni di base
Sono un principiante. Dovrei imparare Objective-C, Swift, o entrambi?
A nostro parere, dipende se hai intenzione di lavorare con un’altra società iOS, o come “freelance”.
Se con una società iOS a tempo pieno come sviluppatore iOS o consulente: Sarà meglio che li impari entrambi. Questo perché molte aziende hanno codice esistente in Objective-C che avrete bisogno di capire, e alcune aziende faranno la transizione a Swift fin da subito. Ci sono anche tonnellate di librerie iOS, esercitazioni e progetti di esempio scritte in Objective-C che avrete bisogno di capire. Avrete anche bisogno di imparare Swift visto come si stanno indirizzando le cose.
Se sei un freelance: Se intendi utilizzare Swift fin dall’inizio, puoi impararlo come unico linguaggio Cocoa Oriented. Ma si può risparmiare tempo, è ancora una buona idea avere una comprensione di Objective-C in modo da poter usufruire della vasta libreria di risorse Objective-C esistenti.
Questa risposta può cambiare nel corso degli anni in base a come il paesaggio si sviluppa e cresce l’adozione Swift. Alla fine, conoscere Objective-C può essere simile a conoscere COBOL.
Sono stato uno sviluppatore di Objective-C per ANNI. Sono ora un principiante?
Sì e no. Se avete sviluppato per le piattaforme di Apple per un po’ hai ancora un enorme vantaggio, dal momento che si ha già familiarità con Xcode e API Cocoa / Cocoa Touch. Dal momento che l’apprendimento Xcode e le migliaia di API Cocoa / Cocoa Touch richiede molto più tempo che imparare Swift, si dovrebbe essere in buona strada.
Per farla breve, vi sentirete di nuovo a casa una volta che si ha familiarità con la scrittura di codice Swift – e si dovrebbe essere in grado di “raccogliere” Swift abbastanza rapidamente.
Le applicazioni per iOS 8 e OS X Yosemite useranno solo Swift?
No. Apple ha costruito Swift in modo tale che interagisca in modo fluido con Objective-C, e viceversa! Apple non ha completamente trasformato le loro API e framework Objective-C per Swift, ma si può ancora farne uso dal codice Swift. Solo il tempo ce lo dirà, ma è probabile che molti produttori iOS e OS X continueranno a fare affidamento su Objective-C per anni.
Swift funziona con le altre versioni di iOS e OS X?
Sì! Xcode 6 può compilare codice Swift per gli obiettivi di distribuzione di iOS 7 e superiori, nonché OS X 10.9 e superiori. Apple ha effettivamente sviluppato l’applicazione WWDC in Swift che è possibile scaricare da App Store proprio ora!
Tuttavia, tieni a mente che Apple non ha permesso alle versioni beta di Xcode6 di essere sottoposte ad App Store. Pertanto, sarà necessario attendere che venga rilasciata la versione finale di Xcode 6 prima di avere il proprio codice Swift in App Store.
Swift è destinato a sostituire Objective-C, o integrarlo?
Per citare Apple “, Objective-C non sta andando via, sia Swift che Objective-C sono cittadini di prima classe per sviluppare Cocoa e Cocoa Touch.”
Quindi è ancora possibile utilizzare Objective-C. Tuttavia, Apple sembra incoraggiare l’utilizzo di Swift per ogni nuovo sviluppo, non bisogna tornare indietro e riscrivere tutto il codice Objective-C.
Anche se questa è pura speculazione, stiamo ipotizzando che Apple sarà ci stia allontanando da Objective-C per il futuro e lo sviluppo API, e un giorno Objective-C potrebbe anche essere deprecato. Quindi, salite a bordo con il resto della squadra iprog.it sul treno Swift.
Che cosa è “playgound”?
Playground è un file in cui è possibile scrivere codice e vedere immediatamente i risultati. È davvero ottimo per imparare Swift o nuove API, per il codice di prototipazione, o per lo sviluppo di algoritmi.
La NDA è ancora sù?
Questo al momento non è chiaro. Recentemente i termini dell’accordo sviluppatore iOS avevano questo nuovo aggiornamento:
Further, Apple agrees that You will not be bound by the foregoing confidentiality terms with regard to technical information about pre-release Apple Software and services disclosed by Apple at WWDC (Apple’s Worldwide Developers Conference), except that You may not post screen shots, write public reviews or redistribute any pre-release Apple Software or services.
Traducendo…”Inoltre, Apple concorda sul fatto che non sarai vincolato dai termini di riservatezza precedenti per quanto riguarda le informazioni tecniche su pre-release di software e servizi di Apple divulgate da Apple al WWDC (Worldwide Developers Conference di Apple), tranne che Tu non invii screenshot, scrivi recensioni pubbliche o ridistribuire alcun pre-release del software o servizi di Apple.”
Inoltre, Apple ha pubblicato un libro di programmazione Swift al pubblico, ed i documenti di iOS 8 SDK sono pubblici. Questa è una partenza rispetto agli anni precedenti in cui l’informazione come questo non era stata resa pubblica fino a quando è stata rilasciata la nuova versione di iOS.
Non è chiaro cosa significa questo per quanto riguarda la scrittura tutorial. C’è un argomento forte / popolare che dice che si può scrivere tutorial finché non pubblicate screenshot . Ma anche questo non è chiaro a noi.
A nostro parere, dal momento che il libro Swift è pubblico sembra che il linguaggio Swift sia un gioco alla pari, ma non siamo sicuri sugli screenshot di Xcode 6 o alcune delle altre question che sono piuttosto necessari per esercitazioni.
Stiamo cercando di andare a fondo di questo con un chiarimento da parte di Apple, e provvederemo ad aggiornare questo post, se / quando scopriremo qualcosa.
Come posso imparare Swift?
Ci sono alcune grandi risorse sull’apprendimento già Swift:
- Apple Swift Programming Book
- È anche possibile leggere il libro come playground interattivo in Xcode (Help\Documentation and API Reference\New Features in Xcode 6 Beta\Swift Language\The Swift Programming Language\A Swift Tour\Open Playground)
- Video Swift dal WWDC 2014
Arriveranno presto nuove risorse aggiunte – Vai alla prossima domanda!
Saranno i tuoi libri e tutorial future usare Swift?
La risposta breve – sì! Siamo pienamente impegnati ad aiutare la transizione a tutti verso Swift.
La risposta lunga:
- Appena rilasciato ufficialmente Swift, il nostro Apprendista Sviluppatore sarà scritto in Swift, per aiutare tutti nella transizione verso questo nuovo linguaggio. Talvolta forniremo anche i progetti di esempio in Objective-C per coloro che non sono ancora pronti per la transizione a Swift, e per aiutare coloro che desiderano confrontare i due linguaggi.
- Esercitazioni scritte: Useremo Swift nelle nostre esercitazioni scritte future.
- Video tutorial: Avremo un sacco di video tutorial su Swift / iOS 8 molto presto, grazie al partner video fabiosoft che porterà su iProg alcune playlist dedicate alla programmazione!
[ CONTINUA… stay tuned ]