Swift en passe de dépasser la popularité d’Objective-C

Nicolas Furno |

Cela fait huit ans que le site RedMonk tente de jauger la popularité de plusieurs dizaines de langage de développement à partir de deux sites extrêmement populaires parmi les développeurs : GitHub (stockage et suivi de projets) et Stack Overflow (forum de discussion). Depuis l’apparition de Swift en 2014, ce rapport permet de suivre les progrès du nouveau langage d’Apple, qui est devenu très vite très populaire en raison du succès de l’iPhone et de l’App Store.

Un an après sa sortie, il atteignait la 22e position du classement, une belle performance alors qu’il était encore en train d’être modifié en profondeur par ses concepteurs. L’an dernier, le même classement le positionnait à la dix-septième place, ce qui était le signe d’une stagnation, mais bonne nouvelle, le langage de développement est en net progrès à nouveau. Dans son nouveau classement, le site le positionne à la dixième place.

C’est une belle progression en soi, et c’est tout un symbole, parce que Swift est désormais très exactement au niveau d’Objective-C dans ce classement. Les deux langages d’Apple sont ainsi à la dixième place ex-aequo, mais peut-être que Swift aura dépassé son prédécesseur l’année prochaine. Dans l’index Tiobe, un classement similaire à celui de Redmonk, Swift a déjà dépassé Objective-C, la tendance semble donc claire.

Et après tout, c’est l’évolution logique. Quand Apple a présenté son nouveau langage, il devait bien remplacer complètement à terme Objective-C. On n’y est pas encore, mais Swift 5 devrait apporter une nouvelle brique essentielle cette année, avec la stabilité ABI (lire : Le développement de Swift 5 est officiellement lancé). Le constructeur commence également à utiliser de plus en plus le langage dans ses apps et ses systèmes, même si Objective-C reste encore majoritaire.

avatar zoubi2 | 

Je suis très surpris de voir Perl en haut du tableau. Moi j'aimais bien Perl pour bidouiller des (gros) fichiers et en extraire les trucs pertinents... mais est-ce devenu un langage robuste et sûr ? Laisser Perl deviner tout seul s'il s'agit d'un entier, d'un flottant ou d'un caractère, ça ne m'a jamais semblé être du béton armé... Any opinion ?

avatar blopi4 | 

C'est parce que c'est un language qui n'est pas formtement typé ;) comme le JavaScript, le PHP, etc.
C'est pas moins sure, mais ça nécessite d'être très rigoureux dans le développement. Si on fait n'importe quoi, on s'en rend compte lors de l'execution.

D'autres language comme Java, Swift ou C# ont pris le pas d'être fortement typés. Du coup, pas de doute sur le type des objets et variables. Si ce ne sont pas les bons qui sont assignés dans le code, ça ne compile même pas. Comme ça, moins d'erreur au runtime.
Mais ça ne veut pas dire qu'ils sont meilleurs, tout dépends du besoin.

avatar Timmy | 

Je compte offrir des Perl à ma femme, mais s’il y a un doute sur le fait qu’elle puisse considérer que ma virgule en entier a du caractère, alors je vais partir sur des roses. ;-)

avatar KimchiMan | 

@Timmy

Joli :-)

avatar EBLIS | 

Comme dit l'adage bien connu, il y a Python sous Perl.

avatar EBLIS | 

T'aurais pu dire que tu partais sur un Ruby.

avatar C1rc3@0rc | 

La methode d'evaluation de redmonk est absurde et ne veut simplement rien dire.

La quantité de projet sur Github demontre une production et une utilisation productive d'un langage, c'est indeniable, majoritairement dans le secteur opensource...
Il faudrait d'ailleurs ajouter Github a d'autres plateformes du genre comme Sourceforge et Cie (il y en a plus de 20 massivement utilisés) pour avoir des donnees plus representatives.

Reste que la production commerciale - dont le code n'est pas public - est bien moins mise en évidence.

Pour Stackoverflow le problème c'est que le taux d'intervention par rapport a un langage démontre autant son usage que sa difficulté, ou complexité, ou que son usage par une population apprenante ou non formée, ou encore l’intérêt par curiosité dans un phénomène de mode...

On va aller sur Stackoverflow pour apprendre un langage, pour trouver une façon de faire, chercher de l’expérience, chercher quel autre langage pourrait répondre a son besoin,... et aussi pour utiliser des framework et librairies et faire des emplettes de morceaux de code près a usage.
Cela peut démontrer une certaine popularité mais fortement différente et dans ses objectifs et dans ses applications et difficilement comparable a la masse sur les repositories comme Github.

Prenons l'exemple de CUDA. Plus de 60% sur Stackoverflow et quasi 0% sur Github. Or CUDA c'est quasi 100% du calcul GPGPU dans l'ensemble des secteurs informatiques...
Deuxieme exemple: ADA. C'est un langage massivement utilisé dans l'industrie, le militaire, l’aéronautique, l'embarqué, les systemes critiques, enseigné en ecoles d'ingenieur...

Bref on a ici un tableau qui mélange allègrement les choux et les carottes et qui n'a au final aucun sens .

avatar Thaasophobia | 

@C1rc3@0rc

"Bref on a ici un tableau [...] qui n'a au final aucun sens."

L'auteur de l'analyse n'a jamais dit vouloir être exhaustif. Il prend juste un point de vue, une façon de lire la réalité.

Quoi qu'on en dise, l'analyse montre indéniablement que SWIFT progresse en popularité, et rapidement, là ou d'autres perdent de la vitesse et sont dépassés. C'est déjà un enseignement intéressant et qui suffit.

avatar jerome74 | 

@C1rc3@0rc "Pour Stackoverflow le problème c'est que le taux d'intervention par rapport a un langage démontre autant son usage que sa difficulté": c'est clair… La documentation d'Apple est devenue tellement pitoyable au fil des années qu'il est maintenant beaucoup plus simple de chercher sur stackoverflow que dans la doc officielle. J'aurais donc plutôt tendance à me méfier des langages / API "populaires" sur stackoverflow!

avatar Eurylaime | 

@jerome74 : +1 pour la documentation actuelle chez Apple qui est catastrophique.

avatar fabricepsb71 | 

Est-ce que l'application iGeneration est programmée en Swift ?
Parce que je la trouve de plus en plus lente pour charger les dernières News sur un iPhone 5.
Nouvelle architecture optimisée pour les derniers iPhone ?
Pourquoi certaines applications que j'utilise depuis plusieurs années tournent-elles encore très bien ?

avatar Lightman | 

@fabricepsb71

Oui, l'app iGeneration est écrite en Swift. Mais AMHA le langage n'explique pas la lenteur que constates.

CONNEXION UTILISATEUR