Swift Language Zelfstudie
Aan de slag met Swift Language
Zoeken…
Opmerkingen
Swift is een applicatie- en systeemprogrammeertaal ontwikkeld door Apple en gedistribueerd als open source . Swift werkt samen met Objective-C en Cocoa / Cocoa touch API's voor de besturingssystemen macOS, iOS, tvOS en watchOS van Apple. Swift ondersteunt momenteel macOS en Linux. Community-inspanningen zijn aan de gang om Android, Windows en andere platforms te ondersteunen.
Snelle ontwikkeling gebeurt op GitHub ; bijdragen worden meestal ingediend via pull-aanvragen .
Bugs en andere problemen worden bijgehouden op bugs.swift.org .
Discussies over ontwikkeling, evolutie en gebruik van Swift worden gehouden op de Swift-mailinglijsten .
Andere bronnen
- Swift (programmeertaal) (Wikipedia)
- De snelle programmeertaal (online)
- Swift Standard Library Reference (online)
- API-ontwerprichtlijnen (online)
- Swift Programming Series (iBooks)
- ... en meer op developer.apple.com .
versies
Snelle versie | Xcode-versie | Publicatiedatum |
---|---|---|
ontwikkeling begon ( eerste commit ) | - | 2010-07-17 |
1.0 | Xcode 6 | 2014/06/02 |
1.1 | Xcode 6.1 | 2014/10/16 |
1.2 | Xcode 6.3 | 2015/02/09 |
2.0 | Xcode 7 | 2015/06/08 |
2.1 | Xcode 7.1 | 2015/09/23 |
open-source debuut | - | 2015/12/03 |
2.2 | Xcode 7.3 | 2016/03/21 |
2.3 | Xcode 8 | 2016/09/13 |
3.0 | Xcode 8 | 2016/09/13 |
3.1 | Xcode 8.3 | 2017/03/27 |
Je eerste Swift-programma
Schrijf uw code in een bestand met de naam hello.swift
:
print("Hello, world!")
- Om een script in één stap te compileren en uit te voeren, gebruikt u
swift
vanuit de terminal (in een map waarin dit bestand zich bevindt):
Om een terminal te starten, drukt u op CTRL + ALT + T op Linux of vindt u deze in Launchpad op macOS . Om de map te wijzigen, voert u
cd
directory_name
(ofcd ..
om terug te gaan)
$ swift hello.swift Hello, world!
Een compiler is een computerprogramma (of een set programma's) dat broncode, geschreven in een programmeertaal (de brontaal), omzet in een andere computertaal (de doeltaal), waarbij de laatste vaak een binaire vorm heeft die bekend staat als objectcode. ( Wikipedia )
- Gebruik
swiftc
om afzonderlijk te compileren en uit te voeren:
$ swiftc hello.swift
Dit compileert uw code in hello
bestand. Voer om het uit te voeren ./
, gevolgd door een bestandsnaam.
$ ./hello Hello, world!
- Of gebruik de snelle REPL (Read-Eval-Print-Loop) door
swift
typen vanaf de opdrachtregel en vervolgens uw code in te voeren in de interpreter:
Code:
func greet(name: String, surname: String) { print("Greetings \(name) \(surname)") } let myName = "Homer" let mySurname = "Simpson" greet(name: myName, surname: mySurname)
Laten we deze grote code in stukjes breken:
func greet(name: String, surname: String) { // function body }
- maak een functie aan met eenname
en eensurname
.
print("Greetings \(name) \(surname)")
- Dit drukt af naar de console "Groeten", danname
en vervolgenssurname
. In principe drukt\(
variable_name
)
de waarde van die variabele af.
let myName = "Homer"
enlet mySurname = "Simpson"
- maak constanten (variabelen waarvan u de waarde niet kunt wijzigen) metlet
met namen:myName
,mySurname
en waarden:"Homer"
,"Simpson"
respectievelijk.
greet(name: myName, surname: mySurname)
- roept een functie aan die we eerder hebben gemaakt en levert de waarden van constantenmyName
,mySurname
.
Uitvoeren met behulp van REPL:
$ swift Welcome to Apple Swift. Type :help for assistance. 1> func greet(name: String, surname: String) { 2. print("Greetings \(name) \(surname)") 3. } 4> 5> let myName = "Homer" myName: String = "Homer" 6> let mySurname = "Simpson" mySurname: String = "Simpson" 7> greet(name: myName, surname: mySurname) Greetings Homer Simpson 8> ^D
Druk op CTRL + D om te stoppen met REPL.
Swift installeren
Download eerst de compiler en componenten.
Voeg vervolgens Swift toe aan je pad. Op macOS is de standaardlocatie voor de downloadbare toolchain / Bibliotheek / Developer / Toolchains. Voer de volgende opdracht uit in Terminal:
export PATH=/Library/Developer/Toolchains/swift-latest.xctoolchain/usr/bin:"${PATH}"
Op Linux moet u clang installeren:
$ sudo apt-get install clang
Als u de Swift-toolchain in een andere map dan de systeemhoofdmap hebt geïnstalleerd, moet u de volgende opdracht uitvoeren met behulp van het daadwerkelijke pad van uw Swift-installatie:
$ export PATH=/path/to/Swift/usr/bin:"${PATH}"
U kunt controleren of u de huidige versie van Swift hebt door deze opdracht uit te voeren:
$ swift --version
Je eerste programma in Swift op een Mac (met behulp van een speeltuin)
Download en installeer Xcode vanaf uw Mac via de Mac App Store via deze link .
Nadat de installatie is voltooid, opent u Xcode en selecteert u Aan de slag met een speeltuin :
Op het volgende paneel kunt u uw Playground een naam geven of u kunt MyPlayground
verlaten en op Next drukken:
Selecteer een locatie waar u de speeltuin wilt opslaan en druk op Maken :
De speeltuin wordt geopend en uw scherm zou er ongeveer zo uit moeten zien:
Nu de speelplaats op het scherm staat, drukt u op ⇧ + cmd + Y om het foutopsporingsgebied weer te geven .
Verwijder ten slotte de tekst in Speeltuin en typ:
print("Hello world")
Je zou 'Hallo wereld' moeten zien in het foutopsporingsgebied en 'Hallo wereld \ n' in de rechter zijbalk :
Gefeliciteerd! Je hebt je eerste programma gemaakt in Swift!
Je eerste programma in de Swift Playgrounds-app op iPad
Swift Playgrounds-app is een geweldige manier om onderweg aan de slag te gaan met het coderen van Swift. Om het te gebruiken:
1- Download Swift Playgrounds voor iPad vanuit de App Store.
2- Open de app.
3- Tik op het tabblad Mijn speeltuinen op + in de linkerbovenhoek en selecteer vervolgens Lege sjabloon.
4- Voer uw code in.
5- Tik op Mijn code uitvoeren om uw code uit te voeren.
6- Aan de voorkant van elke regel wordt het resultaat opgeslagen in een klein vierkantje. Tik erop om het resultaat te onthullen.
7- Om langzaam door de code te bladeren om deze te traceren, tikt u op de knop naast Mijn code uitvoeren.
Optionele waarde en optionele opsomming
Optioneel type, dat de afwezigheid van een waarde afhandelt. Optionals zeggen: "er is een waarde en deze is gelijk aan x" of "er is helemaal geen waarde".
Een optioneel is een type op zichzelf, eigenlijk een van Swift's nieuwe superkrachtige enums. Het heeft twee mogelijke waarden, None
en Some(T)
, waarbij T een bijbehorende waarde is van het juiste gegevenstype dat beschikbaar is in Swift.
Laten we dit stuk code bijvoorbeeld eens bekijken:
let x: String? = "Hello World"
if let y = x {
print(y)
}
Als u een print(x.dynamicType)
in de bovenstaande code, ziet u dit in de console:
Optional<String>
Draad? is eigenlijk syntactische suiker voor optioneel, en optioneel is een type op zichzelf.
Hier is een vereenvoudigde versie van de koptekst van Optioneel, die u kunt zien door met een opdracht op het woord Optioneel in uw code van Xcode te klikken:
enum Optional<Wrapped> {
/// The absence of a value.
case none
/// The presence of a value, stored as `Wrapped`.
case some(Wrapped)
}
Optioneel is eigenlijk een opsomming, gedefinieerd in relatie tot een generiek type Wrapped. Het heeft twee gevallen: .none
om de afwezigheid van een waarde .some
te geven en .some
om de aanwezigheid van een waarde weer te geven, die wordt opgeslagen als de bijbehorende waarde van het type Wrapped.
Laat me het nog eens doornemen: String?
is geen String
maar een Optional<String>
. Het feit dat Optional
een type is, betekent dat het zijn eigen methoden heeft, bijvoorbeeld map
en flatMap
.