Timeline
Chat
Prospettiva
Swift (linguaggio di programmazione)
linguaggio di programmazione per iOS, macOS, watchOS e tvOS creato da Apple Da Wikipedia, l'enciclopedia libera
Remove ads
Swift (dall'inglese "rapido, svelto") è un linguaggio di programmazione orientato agli oggetti per sistemi macOS, iPadOS, iOS, watchOS, tvOS e Linux, presentato da Apple durante la WWDC 2014.[2] Rispetto al linguaggio Objective-C, tipico dei sistemi operativi Apple, Swift semplifica il lavoro di scrittura del codice. Swift è stato progettato per coesistere con Objective-C ma anche per essere più resiliente agli errori. Il compilatore LLVM è incluso in Xcode e Swift utilizza il run time di Objective-C, permettendo l'uso di codice Objective C, C e Swift in un unico programma.
Remove ads
Il 25 marzo 2019 è stata pubblicata la versione 5.0 sotto licenza open source Apache 2.0 per sistemi Apple e Linux.[3]
Remove ads
Storia
Riepilogo
Prospettiva
Lo sviluppo di Swift è iniziato nel 2010 grazie a Chris Lattner, programmatore informatico della Apple. Swift ha preso in prestito idee "da Objective-C, Rust, Haskell, Ruby, Python, C#, CLU, e da troppi altri per elencarli tutti".[4]
Al WWDC del 2 giugno 2014 la prima app scritta in Swift è proprio l'app ufficiale dell'evento. E, durante lo svolgimento dello stesso, Apple divulga ai presenti un manuale di 500 pagine: "The Swift Programming Language",[5] disponibile gratuitamente sull'iBookstore di casa Cupertino.
Al keynote dell'8 giugno 2015 Apple ha annunciato la distribuzione di Swift 2.0 con notevoli miglioramenti nella struttura del linguaggio e aggiunta di funzioni, impegnandosi per rendere il progetto open source nel futuro prossimo. Il 3 dicembre dello stesso anno viene lanciato il sito swift.org e il codice sorgente del linguaggio è pubblicato con licenza Apache 2.0 su un repository GitHub.[6] Apple resta lo sviluppatore principale e ne rende disponibile anche una versione del compilatore per Linux (Creato appositamente per Ubuntu).[7]
Il 13 settembre 2016, durante la WWDC 2016, Apple ha presentato la terza versione del suo linguaggio di programmazione insieme ad un'applicazione per iPad, Swift Playgrounds, che permette, tramite una grafica semplice e intuitiva, di imparare a programmare con Swift.
Remove ads
Cronologia delle versioni
Remove ads
Sintassi
Riepilogo
Prospettiva
Hello, world!
Hello, world! è il classico programma che scrive in output "Hello, world!".
import SwiftUI
print("Hello, world!")
Analisi
import SwiftUI
La funzione "import" importa nel programma determinati metodi o classi che permettono a quest'ultimo di implementare determinati comandi. "SwiftUI" è un framework front end, sviluppato da Apple, che fornisce le funzioni per gestire l'interfaccia grafica (GUI) e gli input dell'utente. In questo caso il codice compila anche senza importare SwiftUI (è stato importato solo come esempio) in quanto l'unica funzione utilizzata è stata la funzione "print" che fa parte del core del linguaggio.
print("Hello, world!")
La funzione "print" permette di mostrare a schermo ciò che viene scritto tra le virgolette dentro le parentesi tonde.
In Swift non è necessario inserire il punto e virgola (;) alla fine di ogni istruzione (a differenza di C o altri linguaggi).
Esempi pratici
Maiuscolo e minuscolo
In questo esempio convertiamo una parola in maiuscolo e l'altra in minuscolo:
// Dichiara le variabili da utilizzare
var nome = "Mario", cognome = "Draghi"
// Converti la stringa in maiuscolo
nome = nome.uppercased()
// Converti la stringa in minuscolo
cognome = cognome.lowercased()
// Stampa il risultato
print(nome, cognome)
Prima lettera maiuscola di ogni parola
In questo esempio convertiamo in maiuscolo solo il primo carattere di ciascuna parola e contiamo i caratteri che compongono la stringa stessa:
import SwiftUI
// Dichiara le variabili da utilizzare
var stringa = "stringa di prova"
// Stampa il risultato
print("La frase \"\(stringa.capitalized)\" è composta da \(stringa.count) caratteri, inclusi gli spazi")
Sostituzione parole
In questo esempio sostituiamo una specifica parola con un'altra:
import SwiftUI
// Dichiara le variabili da utilizzare
var stringa = "Questo è il risultato precedente"
// Sostituisci la parola "precedente" con "successivo" (var.replacingOccurrences)
stringa = stringa.replacingOccurrences(of: "precedente", with: "successivo")
// Stampa il risultato
print(stringa)
Condizione su parola palindroma
Una parola palindroma è una parola che, sia la si legga da destra che da sinistra, risulta sempre uguale (ad esempio, "anna" è una parola palindroma). A seguito verrà mostrato che, data una parola, questo scriva a schermo se è palindroma o no.
// Dichiara le variabili da utilizzare
var parola = "anna"
var parolaInvertita : String
// Inverti la stringa
parolaInvertita = String(parola.reversed())
// Confronta le variabili e stampa il risultato
if (parola == parolaInvertita) {
print("La parola \(parola) è palindroma")
} else {
print("La parola \(parola) NON è palindroma")
}
Array e cicli
Infine, nell'esempio seguente, vediamo la dichiarazione di un array e la stampa di esso con il ciclo for-in
// Dichiara array
var alfabetoArray = ["Alpha", "Beta", "Gamma", "Delta"]
// Stampa l'array dichiarato
for (indice, elemento) in (alfabetoArray.enumerated()) {
print(indice, ":", elemento)
}
Dichiarare costanti e variabili
// Metodo 1
var nome = "Mario", cognome = "Rossi", genere = "M", età = 46
// Metodo 2
var (nome, cognome, genere, età) = ("Mario", "Rossi", "M", 46)
// Metodo 3
var nome = "Mario"
var cognome = "Rossi"
var genere = "M"
var età = 46
- Non è obbligatorio dichiarare il tipo di costanti e variabili (String, Int, Double, ...);
- Le parentesi tonde () per racchiudere condizioni di confronti (if-else, switch...) e cicli (for in, do-while...) sono facoltative;
- Il punto e virgola ";" a fine istruzione, anch'esso è facoltativo;
// Con dichiarazione del tipo tra parentesi tonde e punto e virgola alla fine
let a: (String) = "A";
// Senza parentesi tonde e punto e virgola alla fine
let b: String = "B"
// Senza nemmeno la dichiarazione del tipo (String)
let c = "C"
- Il nome delle costanti e delle variabili può contenere quasi tutti i caratteri, inclusi i caratteri Unicode:
// Dichiara le costanti da utilizzare
let π = 3.14159
let 你好 = "你好世界"
let 🍓 = "Fragola"; 🥝 = "Kiwi"; 🍎 = "Mela"
Remove ads
SwiftUI
SwiftUI è un framework di sviluppo realizzato da Apple Inc. e scritto interamente in Swift.
Presentato nel WWDC 2019, SwiftUI è stato pensato per costruire interfacce utente tramite un unico set di tool e API che coinvolge tutto l'ecosistema Apple (precedentemente si faceva uso di frameworks distinti: AppKit per macOS, UIKit per iOS e WatchKit per watchOS).
Remove ads
Note
Altri progetti
Collegamenti esterni
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads