Swift?

Pascal, Basic und andere nicht aufgelistete
Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Swift?

Beitrag von Xin » Mo Jun 30, 2014 10:05 am

Apple hat eine neue Programmiersprache vorgestellt, die sich wohl an Python anlehnen soll:

t3n:Swift: Einstieg in Apples neue Programmiersprache leicht gemacht

Hat jemand schon erste Erfahrungen mit Swift gemacht? Lohnt sich das?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Benutzeravatar
Architekt
Beiträge: 172
Registriert: Sa Mai 24, 2014 12:04 pm

Re: Swift?

Beitrag von Architekt » Mo Jun 30, 2014 10:47 am

Ist ja schon länger raus und der ganze Hype legt sich schon so langsam.
Swift hat eine nettere Syntax als Objective-C, ist aber vergleichsweise langsam:
http://www.infoq.com/news/2014/06/apple ... rmance-hit
http://www.infoworld.com/t/development- ... all-244120
http://stackoverflow.com/questions/2410 ... ing-arrays

xerion21
Beiträge: 162
Registriert: Mo Jul 08, 2013 3:37 pm

Re: Swift?

Beitrag von xerion21 » Do Jun 18, 2015 7:48 pm

Hallo zusammen,

gibt es schon was neues zu Swift? Swift 2.0 soll ja sogar Linux-kompatibel rauskommen.
Entwickelt eigentlich von euch jemand für OS X? Wenn ja, in welcher Sprache?

Habe mir, nach langer Überlegung auch mal nen Macbook zugelegt und würde mich da auch gerne mal mit der Entwicklung befassen...

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Swift?

Beitrag von Xin » Do Jun 18, 2015 11:05 pm

xerion21 hat geschrieben:Hallo zusammen,

gibt es schon was neues zu Swift? Swift 2.0 soll ja sogar Linux-kompatibel rauskommen.
Entwickelt eigentlich von euch jemand für OS X? Wenn ja, in welcher Sprache?

Habe mir, nach langer Überlegung auch mal nen Macbook zugelegt und würde mich da auch gerne mal mit der Entwicklung befassen...
Aktuell benutze ich den Mac nur vergleichbar zu einem Linux-System.
Meine Software auf dem Mac wird mit Make übersetzt, mit dem gleichen Skripts und Quellen wie auf dem Linux-Rechner.
Ich möchte mir aber Xcode mal genauer zu Gemüte führen.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

xerion21
Beiträge: 162
Registriert: Mo Jul 08, 2013 3:37 pm

Re: Swift?

Beitrag von xerion21 » Fr Jun 19, 2015 6:35 am

Xin hat geschrieben:Aktuell benutze ich den Mac nur vergleichbar zu einem Linux-System.
Meine Software auf dem Mac wird mit Make übersetzt, mit dem gleichen Skripts und Quellen wie auf dem Linux-Rechner.
Ich möchte mir aber Xcode mal genauer zu Gemüte führen.
Okay.

XCode habe ich mir nun auch mal installiert. Denke ich werde mir aber erstmal Objective-C anschauen und dannach ggf. Swift.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Swift?

Beitrag von Xin » Sa Jun 20, 2015 12:55 pm

xerion21 hat geschrieben:XCode habe ich mir nun auch mal installiert. Denke ich werde mir aber erstmal Objective-C anschauen und dannach ggf. Swift.
Berichte bitte doch ein wenig von Deinen Fortschritten und Erfahrungen.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

xerion21
Beiträge: 162
Registriert: Mo Jul 08, 2013 3:37 pm

Re: Swift?

Beitrag von xerion21 » Di Jun 23, 2015 8:10 pm

so mein erster Eindruck nach 3 Tagen Nutzung:

Zu Xcode: Xcode ist ein sehr umfangreiches Tool, was am Anfang sehr überladen wirkt. Viele Funktionen habe ich bis jetzt noch nicht genutzt. Die meisten Funktionen sind anhand der vielen Möglichkeiten und "Subfenster" nicht so schnell zu finden.

Zu Swift: Eine sehr interessante Sprache, welche mich sehr stark an Python erinnert. Mit was ich noch nicht so wirklich etwas anfangen kann, sind die Optionals. Die kenne ich so bis jetzt noch nicht. Aber klingt nach einem sehr interessanten Konzept.

Man kann Variablen einen Zusatz geben

Code: Alles auswählen

var stringVariable : String?
Durch das "?" zeigt man, dass die Variable optional ist und den Wert nil beinhalten kann.

Manche Funktionen erwarten einen nicht optionalen Typ, diese kann man mit einem weiteren Ausdruck ("!") wieder übergeben:

Code: Alles auswählen

#Funktion
func stringAusgeben(name: String) {
#Ausgabe name
}
# Aufruf der Funktion muss dann nicht optional sein
stringAusgeben(stringVariable!)
Durch die Optionals kann man sich die Überprüfung auf nil (null) sparen, da man weiß, dass die Variable nicht null sein kann. Diese muss dann immer ein Wert beinhalten.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Swift?

Beitrag von Xin » Mi Jun 24, 2015 3:12 pm

xerion21 hat geschrieben:Man kann Variablen einen Zusatz geben

Code: Alles auswählen

var stringVariable : String?
Durch das "?" zeigt man, dass die Variable optional ist und den Wert nil beinhalten kann.
Das gibt's in C# auch.
xerion21 hat geschrieben:Manche Funktionen erwarten einen nicht optionalen Typ, diese kann man mit einem weiteren Ausdruck ("!") wieder übergeben:

Code: Alles auswählen

#Funktion
func stringAusgeben(name: String) {
#Ausgabe name
}
# Aufruf der Funktion muss dann nicht optional sein
stringAusgeben(stringVariable!)
Durch die Optionals kann man sich die Überprüfung auf nil (null) sparen, da man weiß, dass die Variable nicht null sein kann. Diese muss dann immer ein Wert beinhalten.
Das mit dem ! verstehe ich noch nicht. Wenn stringVariable mit einem ! versehen wird, sagt das doch nichts aus?!
Wäre stringVariable optional und ist NIL, so macht ! daraus keinen gültigen Wert. Ist stringVariable nicht optional, so kann es auch nicht NIL sein, ergo ergibt ! keine Sinn!?
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mfro
Beiträge: 346
Registriert: Mi Jan 16, 2013 4:58 pm

Re: Swift?

Beitrag von mfro » Mi Jun 24, 2015 4:45 pm

Xin hat geschrieben: Das mit dem ! verstehe ich noch nicht. Wenn stringVariable mit einem ! versehen wird, sagt das doch nichts aus?!
Wäre stringVariable optional und ist NIL, so macht ! daraus keinen gültigen Wert. Ist stringVariable nicht optional, so kann es auch nicht NIL sein, ergo ergibt ! keine Sinn!?
Das "?" ist lediglich eine Abkürzung für

Code: Alles auswählen

Optional<irgendeintyp>
Das wiederum bedeutet, daß die Variable auch mal "keinen" Wert haben darf, ohne daß es gleich kracht. Intern wird das durch "nil" repräsentiert. Das "!" "packt" das Optional aus - wenn sich dabei rausstellt, das "nichts drin" (=nil) ist, gibt's einen Laufzeitfehler.

Das erspart das

Code: Alles auswählen

if (xxx != NULL) {
  tu_was();
} else {
  abort();
}
-Konstrukt
It's as simple as that. And remember, Beethoven wrote his first symphony in C.

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8858
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Swift?

Beitrag von Xin » Mi Jun 24, 2015 5:34 pm

mfro hat geschrieben:Das "!" "packt" das Optional aus - wenn sich dabei rausstellt, das "nichts drin" (=nil) ist, gibt's einen Laufzeitfehler.
Defective by Design. <stirnklatsch>
mfro hat geschrieben: Das erspart das

Code: Alles auswählen

if (xxx != NULL) {
  tu_was();
} else {
  abort();
}
-Konstrukt
Wenn ich also keinen Laufzeitfehler haben möchte, muss ich vorher doch fragen - beim Funktionsaufruf.
Variable! ist also nichts anderes als *Variable.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten