• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Was gibt es Schöneres als den Mai draußen in der Natur mit allen Sinnen zu genießen? Lasst uns teilhaben an Euren Erlebnissen und macht mit beim Thema des Monats Da blüht uns was! ---> Klick

Magazin Swift: Apple veröffentlicht kostenloses E-Book über neue Programmiersprache

Adelar3x

Thurgauer Weinapfel
Registriert
11.09.13
Beiträge
1.001
Wenn man auf einem echten Device testen möchte benötigt man einen DeveloperAccount. Die Jahresgebühr ist primär nicht fürs Vorrätighalten im Store sondern für all die Dokumentationen und Betas die man bekommt. Ausserdem hat man einmal pro Jahr das Anrecht auf Support bei Problemen beim Entwickeln. Und du hast die theoretische Möglichkeit zur WWDC zu fahren. Ist halt sozusagen eine Premiummitgliedschaft. 75 Euro klingt nicht wenig, ist aber praktisch nichts wenn du's auf die einzelnen Monate runterbrichst. Da kostet ja einmal Kino gehn schon mehr...
 

Skyee

Damasonrenette
Registriert
25.01.09
Beiträge
490
Schneller ist Swift jedenfalls nicht. Swift benutzt den LLVM Compiler um nativen Code daraus zu machen. Also genau so wie Objective-C und alle anderen Programmiersprachen mit denen man für Mac OS oder iOS nativ programmieren kann. Der Hauptvorteil an Swift liegt wohl daran, dass man nun Leute motivieren kann Apps zu schreiben, die vorher Angst vor Objective-C hatten. Kenne zumindest einige, die lieber für Android programmieren wollten, nur weil sie Java können und sie keine Lust hatten sich mit Objective-C auseinanderzusetzen. Ich schätze aber mal, dass Swift sich auf professioneller Ebene nicht durchsetzen wird. Im Spiele Framework Unity kann man auch mit typisiertem JavaScript programmieren und trotzdem nehmen die meisten professionellen Studios lieber C#. Persönlich hätte ich es besser gefunden, wenn Apple auf C# umgestiegen wäre, aber da gibt es wohl noch alte Grabenkämpfe mit Microsoft.
 

MacApple

Schöner von Bath
Registriert
05.01.04
Beiträge
3.652
Persönlich hätte ich es besser gefunden, wenn Apple auf C# umgestiegen wäre, aber da gibt es wohl noch alte Grabenkämpfe mit Microsoft.
So einfach ist die Welt nicht. Programmiersprache und Framework müssen schon auch zusammen passen. Denk mal an die Anfangszeit von Mac OS X zurück. Da konnte man auch in Java, Cocoa Programme entwickeln. Irgendwann aber konnte man nicht mehr die in Cocoa verwendeten Techniken mit Java umsetzen oder nur mit extremen Aufwand.
 

Skyee

Damasonrenette
Registriert
25.01.09
Beiträge
490
Ich habe letztens erst ein Mac OS X Programm in C# geschrieben. Mit MonoMac http://www.mono-project.com/MonoMac
Mono ist ja nun auch schon etwas älter und ich würde sagen C# und Mac OS X passen ganz gut zusammen. Auch für iOS kann man mithilfe von Mono mittlerweile programmieren. Das liegt unter anderem daran, dass C# standardisiert wurde: http://www.ecma-international.org/publications/standards/Ecma-334.htm Es wäre für Apple also sogar leichter gewesen C# zu nehmen, statt etwas neues zu erfinden, aber ich denke Apple verspricht sich mit Swift einen so großen Erfolg wie JavaScript ihn hat.
 

HiPhish

Bismarckapfel
Registriert
06.04.10
Beiträge
77
Swift benutzt den LLVM Compiler um nativen Code daraus zu machen.
Das hat ersteinmal gar nichts zu sagen, LLVM ist bloß ein Compiler, der alles mögliche kompilieren kann, von reinem C bis hin zu C#.
languages with compilers that use LLVM include ActionScript, Ada, D, Fortran, OpenGL Shading Language, Haskell, Java bytecode, Julia, Objective-C, Swift, Python, Ruby, Rust, Scala, and C#.

Obwohl der name LLVM ursprünglich für "low-level virtual machine" stand is LLVm keine virtuelle Maschine, es ist ein echter Compiler der nativen Maschinencode erzeugt. Zum Vergleich, C# wird nur zu einem Bytecode kompiliert, der dann von einer virtuellen Maschine interpretiert wird. Ich bin froh dass Apple nicht C# verwendet. Und im übrigen, der Grund warum viele Unity Entwickler C# verwenden ist dass eine ganze Reihe von Sprachfeatures in UnityScript fehlen oder nicht dokumentiert sind. UnityScript ist OK wenn man bloß die Standard API manipulieren will, aber wenn man mehr damit machen will hat man bloß Probleme. Die Unity Engine selbst ist aber in C++ geschrieben und interpretiert bloß die C# Skripte (die als Bytecode vorliegen).

Wie schnell Swift wirklich ist wird sich zeigen wenn es vernünftige Messungen gibt. Dann werden wir sehen wie sehr der Compiler den Code wirklich optimieren kann. Und zum Thema kompiliert VS interpretiert gibt es einen guten Beitrag von Ars Technica.
http://arstechnica.com/information-...ome-programming-languages-faster-than-others/
 

dekadenzverdikt

Granny Smith
Registriert
05.07.12
Beiträge
12
@HiPhish Was du hier beschreibst ist die Typinferenz, bei der nur zu einem Zeitpunkt zur Implementierung bekannt sein muss, um welchen Typ es sich bei der Variable handelt. Den Rest kann sich der Compiler selbst erschließen. Das ganze erinnert an ML, eine funktionale Sprache.
 

Skyee

Damasonrenette
Registriert
25.01.09
Beiträge
490
Zum Vergleich, C# wird nur zu einem Bytecode kompiliert, der dann von einer virtuellen Maschine interpretiert wird. Ich bin froh dass Apple nicht C# verwendet.
Da hast du glaube ich etwas falsch verstanden. LLVM kompiliert in nativen ARM Code. Schneller geht's also nicht. Es ist also relativ egal, welche Sprache du verwendest, sofern du in nativen Code kompilieren kannst. Auch C# wird mit Mono in nativen Code kompiliert. C# -> Bytecode -> nativer Code. Ist also egal, ob man Objective-C, Swift oder C# nimmt. Die Unterschiede kannst du gerne versuchen zu messen. Wird allerdings schwer Unterschiede festzustellen.
 

MacApple

Schöner von Bath
Registriert
05.01.04
Beiträge
3.652
Ich habe letztens erst ein Mac OS X Programm in C# geschrieben. Mit MonoMac http://www.mono-project.com/MonoMac
Nein, du hast ein C# Programm geschrieben, welches nur durch das MonoMac Framework auf dem Mac läuft. Die Screenshots von Mono Programmen, die ich so bisher gefunden habe, zeigen eindeutig, dass das schon rein optisch keine Mac OS X Programme sind.

Mono ist ja nun auch schon etwas älter und ich würde sagen C# und Mac OS X passen ganz gut zusammen.
Nein, denn C# funktioniert ohne das MonoMac Framework überhaupt nicht auf dem Mac. Deshalb sagte ich ja, Programmiersprache und Framework müssen zusammenpassen. Cocoa/Cocoa Touch und C# passt aber nicht zusammen.

Auch für iOS kann man mithilfe von Mono mittlerweile programmieren. Das liegt unter anderem daran, dass C# standardisiert wurde: http://www.ecma-international.org/publications/standards/Ecma-334.htm
Nein, das liegt daran, dass jemand auf das iOS API noch eine weitere Abstaktionsebene in Form eines weiteren Frameworks drübergelegt hat.

Es wäre für Apple also sogar leichter gewesen C# zu nehmen, statt etwas neues zu erfinden
Nein, das API von OS X und iOS ist Cocoa bzw. Cocoa Touch. Diese API hinter ein C# API zu verschleiern würde die weitere Entwicklung der eigenen Plattform an Dritte abgeben.
 

msteffenma

Weigelts Zinszahler (Rotfranch)
Registriert
03.01.08
Beiträge
252
Ich würde das ganze tatsächlich am liebsten zum Anlass zu nehmen, mich endlich mal daran zu versuchen und eine eigene App zu programmieren. Aber wenn ich es seinerzeit richtig verstanden habe, kostet das ganze jährliche Gebühren. (100 Dollar pro Jahr? Ich find's gerade nicht mehr.) Für einen absoluten Gelegenheits-Programmierer also leider völlig uninteressant.

Oder habe ich da was falsch verstanden...?


80 EUR im Jahr sind zuviel? 6,66 EUR im Monat? Ok...

Das Zertifikat wird nur benutzt, wer seine Apps auch veröffentlichen will bzw. seine Apps auch auf dem iphone/iPad testen will.

Hinzu kommen alle Ressourcen, die Apple zur Verfügung stellt um die Programmierung auf Apple Devices zu lernen. Und die sind echt sehr gut.

Aber nochmal meine Frage... wenn du Ernsthaft auf der Apple Schiene Apps entwickeln willst. Dann sind dir 6,66 EUR im Monat zu viel? Check ich nicht. Eine Schachtel Kippen kosten fast so viel. Täglich.
 

FantasticMacs

Reinette de Champagne
Registriert
14.10.11
Beiträge
417
Mal eine Frage an die Leute die mehr davon verstehen als ich.... also so ziemlich jeder hier vermutlich ;)
Macht es Sinn mit Swift ins Programmieren einzusteigen, oder ist ein anderer background dringend anzuraten?
 

Farafan

deaktivierter Benutzer
Registriert
16.09.12
Beiträge
10.250
Nachdem was ich bis jetzt gelesen und gesehen habe wäre Swift ein guter Zeitpunkt um sich mit Programmierung zu befassen. Es schaut sehr gut aus.
 
  • Like
Reaktionen: FantasticMacs

z3ro

Damasonrenette
Registriert
11.06.13
Beiträge
486
Mal eine Frage an die Leute die mehr davon verstehen als ich.... also so ziemlich jeder hier vermutlich ;)
Macht es Sinn mit Swift ins Programmieren einzusteigen, oder ist ein anderer background dringend anzuraten?

Imo ist die Programmier-Sprache aber nicht die Hürde, was den Einstieg in die Programmierung betrifft.
 
  • Like
Reaktionen: Scotch

Skyee

Damasonrenette
Registriert
25.01.09
Beiträge
490
Nein, du hast ein C# Programm geschrieben, welches nur durch das MonoMac Framework auf dem Mac läuft. Die Screenshots von Mono Programmen, die ich so bisher gefunden habe, zeigen eindeutig, dass das schon rein optisch keine Mac OS X Programme sind.

Da hast du wohl die falschen Screenshots gesehen. Apps und Software mit Mono für MacOS oder iOS können direkt mit Xcode erstellt werden. Zumindest die GUI. Ich weiß nicht wieso du mir widersprechen musst, ich kann dir nur so viel dazu sagen, dass ich genügend Erfahrung auf dem Gebiet besitze und weiß was ich da tue ;) Schaue dir mal https://xamarin.com an. Lies mal etwas genauer über LLVM und wie Mono das nutzt.
 

Dareonsky

Pomme au Mors
Registriert
28.02.12
Beiträge
869
Weiß jemand ob man auf Mavericks Swift bzw. das neue Xcode benutzen kann? Ein Update ist bei mir nicht verfügbar.
Ja man kann sich das Xcode-6-Beta herunterladen (als developer) und es läuft schön auf Mavericks. Ich habe heute eine Test-App für iOS 7.1 mit Swift gebaut. Läuft super auf meinem iPhone 4s.
 

FantasticMacs

Reinette de Champagne
Registriert
14.10.11
Beiträge
417
Imo ist die Programmier-Sprache aber nicht die Hürde, was den Einstieg in die Programmierung betrifft.
Ich überlege mir ja nicht, dass ich jetzt wegen Swift Apps entwickeln will, sondern das habe ich seit ein paar Monaten vor.

Was ich aber eben wissen wollte ist, ob man dennoch besser erst anders anfangen sollte, da Swift zu reduziert oder spezialisiert, oder eben irgendetwas ist, was es als Programmiersprache für den Einstieg disqualifiziert.


Aber du darfst gerne noch weiter ausführen, was denn die Hürden sind? ;)
 

Dareonsky

Pomme au Mors
Registriert
28.02.12
Beiträge
869
Mal eine Frage an die Leute die mehr davon verstehen als ich.... also so ziemlich jeder hier vermutlich ;)
Macht es Sinn mit Swift ins Programmieren einzusteigen, oder ist ein anderer background dringend anzuraten?
Ich denke schon. Ich habe den Eindruck bekommen, Apple will von Objective-C weg und alles nur mit Swift weiter zu machen. Swift benutzt das, was nicht selbst kann, von Cocoa, ähnlich wie Objective-C. Allerdings kommt mir Swift mächtiger und einfacher vor als Objective-C. Allein schon die Syntax von Swift ist ein Hammer. :)
 
Zuletzt bearbeitet:
  • Like
Reaktionen: FantasticMacs

Dareonsky

Pomme au Mors
Registriert
28.02.12
Beiträge
869
Aber du darfst gerne noch weiter ausführen, was denn die Hürden sind? ;)
Er meinte (oder besser gesagt ich denke was er meinte ;) ), dass man sauber und klug entwickeln soll (d.h keine unnötige Schritte oder sogar Redundanzen im Code zu haben, oder das man keine unnötige Objekte im Speicher rumstinken lässt - aber das erledigt zum Großteil ARC usw.). Dazu kommt noch das Kennenlernen des Frameworks Cocoa (OS X) bzw. Cocoa Touch (iOS), die sehr umfangreich sind und eigentlich eine Framework-Family sind als "nur" Frameworks. Die Sprache an sich (Swift oder Objective-C) kann man theoretisch als Anfänger in einer Woche lernen (manche Freaks wurden "in zwei Stunden" sagen :D ). Damit allein kommt man aber nicht weit ;)
 
Zuletzt bearbeitet:
  • Like
Reaktionen: FantasticMacs