Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

Apples Programmiersprache Swift im Aufwind, laut TIOBE-Index

Als Apple auf der WWDC 2014 Entwicklern eine erste Beta der heimlich entwickelten Programmiersprache Swift präsentierte, war noch nicht abzusehen, ob die Alternative zu Objective-C von Entwicklern angenommen und für neue Apps verwendet werden würde. Ein Blick auf den aktuellen TIOBE-Index dürfte aber auch die letzten Skeptiker überzeugen, dass Swift irgendwann Objective-C ablösen wird.


Erstmals befindet sich Swift in den Top 10 der beliebtesten Programmiersprachen - zusammen mit Java, C, C++, C#, Python, VB.NET, PHP, JavaScript sowie Delphi/Pascal auf den vordersten Plätzen. Im Vergleich zum Vorjahreszeitraum konnte Swift die meisten Plätze gut machen und schnellte von Platz 14 auf 10 nach oben. Objective-C rutscht hingegen vom einstigen dritten Platz in der Beliebtheit stetig ab und liegt mittlerweile nur noch auf Platz 16 - trotz des lukrativen iOS App Store.


Den Aufwind verdankt Swift jedoch nicht nur Apples Weiterentwicklung, sondern auch Apples Kooperationspartner IBM, welcher Cupertino zu einer Öffnung der Sprache als Open Source gedrängt hatte. Seit der im März 2016 erschienenen ersten Open-Source-Version 2.2 von Swift erfreut sich die Sprache eines noch höheren Interesses als zuvor. Dabei kommt Swift nicht nur als Entwicklungssprache für Apps zum Einsatz, sondern auch als Basis für Cloud- und Server-Anwendungen.

Im Vergleich zu Objective-C gibt es allerdings noch einen Vorteil, der in der Sprache selbst liegt. Durch den Einsatz moderner Paradigmen ist Swift eine zugleich leicht zu erlernende aber auch mächtige Programmiersprache. So kommt Swift mittlerweile auch in vielen Hochschulen als Lehrsprache zum Einsatz. Zu erwähnen ist beispielsweise der kostenlose Video-Kurs der Stanford-Universität.

Grundlage für den TIOBE-Index sind übrigens verschiedene Internet-Quellen, die Indizien für das Interesse an einer Sprache darstellen. So fließen in den Index unter anderem die Anzahl der Suchanfragen und Suchergebnisse verschiedener Dienste wie Google und Wikipedia sowie Blogs ein. Dadurch ist der TIOBE-Index umstritten, dem Kritiker vor allem eine zu große Ungenauigkeit vorwerfen.

Kommentare

pünktchen
pünktchen13.03.17 10:30
Wer für iOS entwickeln will lernt jetzt halt nicht mehr Objective-C sondern gleich Swift. Entsprechend sinkt das Interesse an Informationen zu Objective-C und steigt das Interesse an Informationen zu Swift. Mehr zeigt der Index doch auch nicht an.

PS:
Im Vergleich zum Vorjahreszeitraum konnte Swift die meisten Plätze gut machen

Stimmt doch gar nicht, Go hat sowohl von der Platzierung als auch von den Prozenten her viel stärker zugelegt. Und Scratch auch ein bisschen.
+1
dan@mac
dan@mac13.03.17 10:42
C ist ja voll am Abstürzen
-2
subjore13.03.17 11:14
dan@mac
C ist ja voll am Abstürzen

Ja, aber man weiß nicht so recht woran das liegt. Deren Methoden funktionieren halt nicht besonders gut und liefern nur einen groben Anhalt. Ein plötzlicher Absturz in der Beliebtheit von C, wie der Grafik zu entnehmen ist in der Realität nicht eingetreten.

Die haben halt große Probleme und können den Index nur als groben Anhaltspunkt werten.

Z.B. Objective-C hatte 12%. Dann wird Swift vorgestellt. Objective-C geht auf 2% runter obwohl Swift damals nur auf 1-2% gekommen ist. Dabei ist wahrscheinlich die Beliebtheit der iOS Plattform für Entwickler im gleichen Zeitraum gestiegen.
+1
nane
nane13.03.17 12:45
dan@mac
Nein, C stürzt nicht ab. Es ist einfach nur so dass die MS und Android Umgebung sehr viel mehr Basis an Benutzern und Entwicklern weltweit betrachtet hat als eben Unix basiernde Systeme wie Linux, MacOS und iOS (nur um mal die wichtigesten zu nennen) C und auch Swift und vieles mehr wird halt eher im Unix Umfeld genutzt für nahezu alles, nicht nur fürs Programme erstellen und C#, C++ und „go" finden Ihre Anwendung für nahezu alles im MS und Android Umfeld.

Der TIOBE Index sagt ja nicht aus, dass irgendwelche Sprachen "auf einem absteigenden Ast sind" sondern bildet einfach die "Meinung" und den Umgang der meisten Anwender ab, die Software für irgendwelche Zwecke erstellen.

Also kein Grund zur Panik, es ist schön zu wissen, dass Swift gut ankommt, aber deswegen wird C nicht sterben. Nicht solange es Unix basierende Systeme (und hier sind vor allem auch Server zu nennen) gibt. #erklärbär
Das Leben ist ein langer Traum, an dessen Ende kein Wecker klingelt.
+2
Metty
Metty13.03.17 12:45
dan@mac
C ist ja voll am Abstürzen
Das muss man etwas relativieren. Pures C ist in der Tat am Rückzug, da C Sprachvarianten wie C++ oder Objective-C viel mehr Funktionen für neuere Programmiermethoden bieten. Zudem kann man mit einem C++ oder Objective-C Compiler C Code kompilieren. Insofern wird das Urgestein C noch sehr lange Zeit bleiben.

Der Übergang zu Swift kommt nicht weil das eine sooo tolle Sprache ist, die sooo leicht zu erlernen ist, sondern weil Apple angekündigt hat, dass Swift Objective-C komplett ersetzen wird. Apple zwingt einem zu seinem "Glück".

Hört man irgendwie heraus, dass ich kein Fan von Swift bin?
+2
bjbo13.03.17 16:28
Metty
dan@mac
C ist ja voll am Abstürzen
...
Hört man irgendwie heraus, dass ich kein Fan von Swift bin?

Hört man kaum. Aber das ist halt alles eine Sache der eigenen Präferenz und auch Gewohnheit.

Ich persönlich bin mit Obj-C nie warm geworden. Die Notation empfand ich immer als Strafe. Swift wiederum gefällt mir sehr viel besser und ist meinem empfinden nach auch leichter zu lernen. Was sicherlich auch ein Stück weit an den Playgrounds liegt.
+2
Weia
Weia13.03.17 20:12
Metty
Der Übergang zu Swift kommt nicht weil das eine sooo tolle Sprache ist, die sooo leicht zu erlernen ist,
Was ja auch nicht der Fall ist. Swift ist ein grässlich inkonsistenter Gemischtwarenladen, der alles aufgegriffen hat, was im Moment in ist. Das absolute Gegenteil von Think different und ein trauriges Indiz für den augenblicklichen Zustand von Apple.
sondern weil Apple angekündigt hat, dass Swift Objective-C komplett ersetzen wird.
Wo bitte soll Apple das denn angekündigt haben?

Das ist schon allein aufgrund der Inkompatibilität von Swift mit C faktisch unmöglich, denn macOS und iOS sind als Unices im Kern in C geschrieben. macOS hat (als NEXTSTEP begonnen) jetzt 30 Jahre Reifezeit hinter sich. Das lässt sich nicht in ein paar Jahren einfach neu schreiben. Logic und Final Cut sind intern C++, sehr viele große Cross-Platform-Programme auch. Im wissenschaftlichen Bereich ist ein Verzicht auf C-Kompatibilität undenkbar.

Swift ist was für trendige Script-Kiddies, die anspruchslose Mini-Progrämmchen für iOS fabrizieren wollen und schon mit C offenbar überfordert wären, von der intellektuellen Herausforderung mit den eckigen Klammern in Objective-C ganz zu schweigen. Und nachdem das neue Apple auf Masse statt Klasse zielt, propagieren sie halt Swift.
“I don’t care” is such an easy lie. (The Warning, “Satisfied”)
-2
PaulMuadDib13.03.17 20:59
Was ein Unsinn. Sorry.
0
dannyinabox
dannyinabox13.03.17 23:32
Ich habe mal irgendwo gelesen das Google für Android auch an Swift denkt. Mit Java gibt es ja Lizenzprobleme oder zumindest ist Ärger im anmarsch. Google müsste aber viel Arbeit ins umschreiben von x Bibliotheken stecken.

Wie auch immer, ich glaube das früher oder später Java / xml für Android abgelöst wird.
0
Weia
Weia14.03.17 00:50
PaulMuadDib
Was ein Unsinn.
Würdest Du Dich auch herablassen zu sagen, inwiefern?

Eine Sichtweise ohne auch nur den Hauch eines Arguments als „Unsinn“ zu brandmarken – von dieser „Kultur“ haben wir leider im Moment überall mehr als genug.

Und niemand gewinnt damit irgendetwas, solange eine gegenteilige Einschätzung nicht mit Argumenten unterfüttert wird.
“I don’t care” is such an easy lie. (The Warning, “Satisfied”)
+2
PaulMuadDib14.03.17 07:13
Nun, zumindest ist mir Swift beim Lernen leichter gefallen, als alle anderen Sprachen. Warum das so ist, keine Ahnung. Fehler fallen viel früher auf, einfach weil bestimmte Dinge im Vorfeld schon vermieden werden. Und ich finde manches einfach viel eleganter gelöst.

Klar, Du kannst Dich auf den Standpunkt, wie so manche aus diesem "tollen" deutschen Entwicklerfoum stellen. Alles super-Programmierer, denen solche Fehler selbstverständlich nie unterlaufen und immer merken sofort merken, wenn ihr Objekt dann doch nil ist. So als Beispiel.

Mir ist's egal. Die reise geht weiter. Ohne Obj-C und mit Swift. Sollte man sich entweder dran halten oder aussteigen.
0
Weia
Weia15.03.17 02:12
PaulMuadDib
Nun, zumindest ist mir Swift beim Lernen leichter gefallen, als alle anderen Sprachen.
Das ist für Einsteiger ein wichtiges Kriterium, aber natürlich nur für die. Für Profis ist das Lernen eh kein Thema, die Leistungsfähigkeit und Konsistenz der Sprache ist es.

Persönlich kann ich das leichte erlernen bei Swift im übrigen überhaupt nicht nachvollziehen, da die Syntax von Swift so inkonsistent und gleichzeitig verschleiernd ist (siehe unten). Es fehlt vorne und hinten die konzeptionelle Klarheit. Aber wer von einer Programmiersprache nur erwartet, dass sich mit ihr leicht Programme erzeugen lassen, die nicht abstürzen, den stört das vielleicht viel weniger, so dass es kein permanentes Ärgernis und damit Hindernis während des Lernens darstellt, wie es das bei mir tut.
Warum das so ist, keine Ahnung.
Das hilft natürlich nicht viel weiter.

Dein Satz davor legt nahe, dass Du schon etliche verschiedene Sprachen gelernt hattest. Da sich Swift in der Syntax aller möglichen Sachen bedient, die gerade angesagt im Sinne von weit verbreitet sind, spielt vielleicht einfach die Vertrautheit eine Rolle.

JavaScript z.B. ist aber natürlich alles andere als ein gutes Syntax-Vorbild – nur ist die Sprache eben enorm bekannt. Craig Federighi (Apples Software-Chef) hat ja im Rahmen des ihm diplomatisch Möglichen sehr klar durchblicken lassen, dass er die aus dem akademischen Bereich kommende und entsprechend konsistente SmallTalk-/Objective-C-Syntax beibehalten wollte, aber von den Marketing-Leuten überstimmt wurde. Darauf bezog ich mich, als ich schrieb, dass Apple bei Swift auf Masse statt auf Klasse setzte.
Fehler fallen viel früher auf, einfach weil bestimmte Dinge im Vorfeld schon vermieden werden.
Das ist klar – wenn eine Sprache Möglichkeiten einschränkt, kann man weniger Fehler machen. Extremes Beispiel wäre die Skript-Programmierung, wo Du als Programmierer überhaupt keine Abstürze erzeugen kannst – um den Preis geringerer Möglichkeiten eben. Deswegen schrieb ich ja – zugegeben vielleicht ein wenig zu polemisch –, dass Swift eine prima Sprache für Script-Kiddies sei.

Wenn einem diese Möglichkeiten reichen, ist das ja wunderbar. Man darf nur eben nicht dem Trugschluss erliegen und die eigenen eingeschränkten Bedürfnisse zum allgemeinen Maßstab machen.
Und ich finde manches einfach viel eleganter gelöst.
Da hätte ich ja gerne ein Beispiel.

Eine noch unelegantere Sprache als Swift kann ich mir schwer vorstellen.

Swift ist die Sprache, die
  • es fertigbringt, an ihrer konzeptionellen Basis arabische und europäische Schriftkultur durcheinanderzuwürfeln (Methoden-/Funktionsdefinitionen sind europäisch (links → rechts), Wertzuweisungen sind (wie üblich, da der Westen die Arithmetik aus der arabischen Kultur importiert hat) arabisch (rechts → links))
  • es erfolgreich schafft, den Unterschied zwischen objektorientierter und prozeduraler Programmierung völlig zu verwischen (Klassen, Strukturen, alles eins) – Verständnis ist egal, Hauptsache, es funktioniert (Zufall, dass Swift in einer Zeit das Licht der Welt erblickte, als antiintellektualistische Impulse überall um sich griffen?)
  • identische Semantik im vergeblichen Versuch, es allen recht zu machen, unterschiedlich darstellt (tueDies(parameter1, undDas parameter2))

Was für ein Syntax-Horror!
Klar, Du kannst Dich auf den Standpunkt, wie so manche aus diesem "tollen" deutschen Entwicklerfoum stellen. Alles super-Programmierer, denen solche Fehler selbstverständlich nie unterlaufen und immer merken sofort merken, wenn ihr Objekt dann doch nil ist. So als Beispiel.
Das ist aber nun in der Tat wirklich ein Anfängerfehler …
Mir ist's egal.
Wenn das für Dich gleichgültig ist, dann ist es ja OK. Aber dann verallgemeinere das doch bitte nicht und erkläre differenziertere und mehr in die Tiefe gehende Sichtweisen schlichtweg zu Unsinn.
Die reise geht weiter. Ohne Obj-C und mit Swift.
Dadurch, dass Du diese Behauptung wiederholst, wird sie noch nicht wahrer.

Swift geht, wenn man kleine Progrämmchen schreiben will, die sich selbst genügen. Sobald Du C/C++ referenzieren musst (Unix-Kern, wissenschaftliche und andere offene Bibliotheken, Kerne von Cross-Platform-Programmen, Riesenprogramme wie Logic oder Final Cut Pro mit jahrzehntelanger Historie), ist Swift keine Option.
Sollte man sich entweder dran halten oder aussteigen.
Das meine ich mit der unzulässigen Verallgemeinerung Deiner Bedürfnisse: Du tust so, als seien alle, die Deine eingeschränkten Ansprüche nicht teilen, von gestern – und trägst das auch noch mit der Attitüde des Bilderstürmers vor. Das ist nicht sehr nett. (Wenn man böse ist, könnte man auch sagen: Es ist glorifiziertes Mitläufertum. )
“I don’t care” is such an easy lie. (The Warning, “Satisfied”)
+1
Weia
Weia15.03.17 02:39
bjbo
Ich persönlich bin mit Obj-C nie warm geworden. Die Notation empfand ich immer als Strafe.
Das habe ich nie verstanden.

Ich meine, Smalltalk

ich sortiere:Rechnungen undLegeIn:Ordner

ist, einschließlich der Satzzeichen, so nah an der Umgangssprache – und damit so intuitiv, sollte man meinen –, wie es nur geht, ohne in die verunglückte Fuzziness von AppleScript abzurutschen.

Und wenn man Smalltalk aus gutem Grund mit C kombinieren will, markiert man halt alles, was nicht prozedural (C) ist, damit, dass man es in ein ein Objekt symbolisierendes Kästchen (= eckige Klammern) einschließt:

Erfolg = [ich sortiere:Rechnungen undLegeIn:Ordner];

Das einzige, was der natürlichen Schriftsprache widerspricht, ist der Strichpunkt als Abschluss; der Punkt war als Dezimalpunkt halt schon vergeben.

Wie kann man damit nicht warm werden? Kommt das daher, dass Du vorher Programmiersprachen gelernt hattest, die eben viel weiter weg von der natürlichen Sprache waren, und das Deine Erwartungshaltung geprägt hat?
“I don’t care” is such an easy lie. (The Warning, “Satisfied”)
0

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.