Non voglio perdermi in presentazioni siccome ho già scritto due articoli a proposito di questo corso, e pertanto punto dritto al sodo rispondendo alla prima domanda, cos’è Swift?

Swift è un linguaggio di programmazione ad oggetti introdotto da Apple nel 2014 come sostituto e complemento di Objective-C. Oggetti? Si mangiano? Purtroppo non si mangiano, ma scoprirai cosa vorrà dire questo “programmazione ad oggetti” quando ti addentrerai nel mio corso di programmazione Swift.

Cos’è un linguaggio di programmazione

Nell’accezione comune, un linguaggio è quella capacità che permette ad un essere umano di identificare con le parole la realtà che ci circonda e di comunicare con gli altri.

Partiamo  dagli anni 60-70, periodo in cui coincide l’avvento dei computer (1984) anno in cui Apple produsse il primo computer personale, il primo e vero PC.

Noi interagiamo continuamente con il PC o lo smartphone (iPhone, Mac, ecc.) mediante le applicazioni o con il diretto contatto con il Sistema Operativo (OS). Questi ultimi, pur non avendo la capacità di intendere e di volere, ci appaiono come entità estremamente complesse, capaci di svolgere compiti al di là della portata umana.

Sbagliato! Un computer è un oggetto stupido che noi umani intelligenti possiamo sottomettere al nostro volere, tuttavia per farlo, dobbiamo comunicargli cosa vogliamo fare e da qui nasce il bisogno di Linguaggio di programmazione. Tuttavia i primi linguaggi di programmazione erano assai complessi e di difficile interpretazione per noi umani.

Ecco perché ho rievocato gli anni 70. Nella fattispecie in quegli anni hanno creato un modo, che permettesse ad una persona di poter interagire con il computer, che non implicasse l’utilizzo di astrazioni troppo complicate (vedi i linguaggi Assembler) e che riprendesse i principi della comunicazione uomo-uomo.

Adesso puoi finalmente dedurre che un linguaggio, riferito ai computer, identifica un modo per poter comunicare con esso tramite parole. Queste parole sono ben definite e utilizzate con regole ben specifiche.

Per farti un esempio pratico: un’applicazione, come una calcolatrice, non è composta dalla sola grafica. Dietro quei tasti, che permettono di eseguire operazioni matematiche, è presente un codice (parola utilizzata per descrivere il testo del linguaggio di programmazione) che, se premuti, attivano una porzione di codice delegata allo svolgimento delle operazioni.

Qui ti voglio dare un’idea generale di “linguaggio di programmazione” qualora non avessi mai sentito questo termine.

Cos’è il linguaggio Swift

Il linguaggio Swift, in sostanza, è la fusione di due linguaggi di programmazione l’Objective-C e il C. Prende il meglio da tutti e due i linguaggi e ne fa una cosa propria.

Il linguaggio Swift sarà fin da subito familiare a chi ha già programmato in ObjC/C e ovviamente lo stesso vale per chi si sta avvicinando per la prima volta allo sviluppo di programmi per l’ambiente delle Mela. Inoltre il linguaggio Swift è stato super ottimizzato per la comprensione, vedrai fin dalle prime lezioni che questo linguaggio si avvicina moltissimo al nostro modo di ragionare e ti assicuro che questa è una caratteristica che molti linguaggi di programmazione non hanno. Questa caratteristica, che ha il linguaggio Swift, non fa perdere d’efficienza e, per questo, sarai comunque in grado di eseguire le stesse azioni che fanno altri linguaggi di programmazione ma con il vantaggio di dover scrivere meno.

Inoltre il linguaggio Swift supporta Playground ovvero una piattaforma innovativa che permette di visualizzare in “real-time” ciò che scriverai nell’ambiente di lavoro permettendoti di vedere subito i risultati del codice che hai scritto.

Utilizzeremo Playground già dal prossimo articolo in cui svilupperemo il primo programmino con Swift – Hello World.

Il passaggio da Objective-C a Swift

Fino al 2014, il sistema operativo OS X (per i Mac) e iOS (per gli iPhone e gli iPad), funzionava grazie a Objective-C, linguaggio di programmazione ad oggetti figlio lontano di C. Se hai avuto modo di programmare in Objective-C la prima cosa che avrai notato, oltre alla sua compatibilità con C, è il fatto di portarsi insieme ad esso moltissimi problemi e uno stile “vecchio” di programmare le “cose”.

Tra qualche lezione, prova a googlare le stesse cose che imparerai però con chiave di ricerca Objective-C. Ti accorgerai tu stesso di cosa sto parlando.

Objective C o Swift?

Swift tutta la vita.

Anche se per adesso potrei dire entrambi. Dico per adesso perché ovviamente il vecchio non si può buttare, pensa a tutte le software house che hanno investito milioni e energie per programmare le loro applicazioni e ora vedono spuntare, dal nulla, un nuovo linguaggio di programmazione. Non è per niente simpatico.

Il futuro però, grazie al successo che sta riscontrando il linguaggio Swift e per la sua velocità di apprendimento nonché anche per le sue caratteristiche, è più propenso ad un tipo di programmazione full Swift. Questo non vuol dire non potrai più programmare in Objective-C, infatti Apple ha ben pensato di implementare la possibilità di programmare nello stesso progetto sia con il linguaggio Swift che in Objective-C.

Il mio consiglio ovviamente è, se sei un nuovo programmatore o programmatore di vecchia data, affrettati ad imparare questo nuovo linguaggio, le opportunità di lavoro sono tante e le strade sono tutte spianate dato che per il momento possiamo considerarci tutti allo stesso livello.

Cosa tratta il Corso programmazione Swift?

Sarò sincero con te, parto da un presupposto molto semplice che è quello di odiare quando qualcuno mi mostra il funzionamento di qualcosa senza spiegarmi il perché.

Ecco perché ho deciso di creare il corso gratuito di programmazione con il linguaggio Swift, sia per darti un’infarinatura dei concetti principali della programmazione universale e sia per indirizzarti, passo dopo passo, alla programmazione con il linguaggio Swift.

Spesso capita che alcuni siti ti scaraventano direttamente nella programmazione delle applicazioni. Lo dico sempre e lo ripeterò sempre, non fare l’errore di buttarti direttamente nella creazione di applicazione senza aver appreso il linguaggio Swift.

Anche se può sembrare bello, ti assicuro che non è così, è solo una mera illusione. Di fatto stai mischiando tantissimi contenuti diversi tra loro senza apprenderne neanche uno. Ti dico questo perché, mentre crei un’applicazione, entrano in gioco diversi fattori:

  • la programmazione ad oggetti,
  • la programmazione procedurale,
  • i pattern di programmazione,
  • la grafica,
  • ecc.

Se avrai provato a creare un’applicazione, avrai sicuramente notato che, nel progetto, ci sono codici che non riesci a capire da dove spuntano e come funzionano. Ecco io voglio che tu esca da questo corso, e soprattutto dal prossimo, con la piena coscienza di ciò che stai utilizzando. Per questo il corso gratuito del linguaggio Swift ha come compito quello di introdurti tutti quei piccoli strumenti che ti serviranno per poter creare alla tua prima applicazione.

Esercizi sul linguaggio Swift

Tra le altre cose di questo corso, a fine di ogni lezione (questa ne è sprovvista), sono presenti dei quiz riguardanti gli argomenti svolti nella lezione. Sono estremamente semplici perché, come già detto, voglio che impari a padroneggiare gli strumenti di base, poi a come usarli e come unirli ci penserai nel corso di sviluppo applicazioni iOS con Swift.

Domande frequenti:

  • Sono un nuovo programmatore, devo imparare per forza Objective-C prima di passare al linguaggio Swift?
    No! Il linguaggio Swift può benissimo sostituire Objective-C quindi il corso si basa unicamente su Swift poiché non richiede altre competenze.
  • Quali conoscenze mi sono richieste in questo corso?
    Come già detto poco sopra, Nessuna!
    (dovete solo saper accendere il vostro Mac, ma se siete qui l’avrete sicuramente fatto :P).
  • Imparerò a creare Applicazioni?
    In questo corso, più o meno! Questo è solo un corso di introduzione al linguaggio Swift non verrà trattato in maniera approfondita il framework Cocoa o Cocoa Touch utilizzati per la creazioni di App, però, se segui il blog inizierò a mettere delle guide su come creare le tue prime App in Swift, quindi quello che apprenderai qua è propedeutico al resto.
  • Che programmi mi servono?
    Al momento della stesura di questo articolo sto utilizzando la versione 7.2 di Xcode. Procuratene una uguale o superiore alla 7.2, senza non potrai seguire il corso ed imparare il linguaggio Swift. Per maggiori info visita il sito Apple Developer.

Buona lettura e buona programmazione!