Swift est libéré, délivré
Chose promise, chose due : Swift est désormais open-source. Un nouveau site est dédié au nouveau langage de programmation et on peut y télécharger non seulement le code source, mais aussi le compilateur pour Linux, ce qui veut dire que l’on peut écrire des applications en Swift pour Linux (uniquement Ubuntu pour le moment). Swift est sous licence Apache 2.0.

La possibilité de coder en Swift sur Linux n’est pas anodine : ce n’est pas forcément intéressant pour les ordinateurs de bureau, mais plus pour les serveurs. Un développeur iOS ou OS X peut désormais réaliser un script ou un module serveur dans le même langage que son application, ce qui simplifiera les choses. C’était d’ailleurs l’idée de Perfect, un framework web basé sur Swift, qui n’attendait que cette étape de l’open-source pour se lancer (lire : Perfect : du Swift « côté serveur »). Jusque-là, il devait utiliser un autre langage, comme le Python, le Go ou le PHP.
Apple a aussi publié une version spécifique de Foundation, la base d’OS X et d’iOS. C’est loin d’être suffisant pour créer un système d’exploitation, mais c’est une brique importante pour faciliter la transition d’un système à l’autre. Un développeur OS X peut ainsi créer une version pour Linux de ses logiciels et en théorie, on pourrait avoir un jour des applications Android codées en Swift. Même si, dans un cas, comme dans l’autre, il faudra coder l’interface, puisque Foundation ne contient rien sur ce plan. Il manque Cocoa/UIKit, la brique qui permet de créer des interfaces, et cet élément n’est pas (encore ?) open-source.
Le site dédié au projet est encore extrêmement lent, et le code source n’est pas encore sur la nouvelle page GitHub d’Apple. Bref, c’est en cours de déploiement et au passage, Apple prévient sur le site que l’on peut attendre une nouvelle version de son langage. D’ailleurs, le code source que l’on pourra télécharger contient des éléments clés de Swift 3 : ce projet est ouvert jusqu’au bout.
Mise à jour — La page GitHub de Swift propose désormais les sources promises.
Moui, si on veut. Le contenu laisse à désirer :
La possibilité de coder en Swift
A la place de l'auteur, j'aurais honte d'étaler la pauvreté de mon vocabulaire...
Tu voudrais écrire quoi à la place de coder ? C'est tout à fait compréhensible et très utilisé dans le milieu informatique. Maintenant si tu pensais être sur un site de composition musicale... c'est un autre problème.
Facit qui potest. Verba vituperat nequam.
Pitié... :-)
je l'avais oublié celle là...
En ce moment je me farcis de la Princesse Sofia 1 heure par jour...
Si tu as Netflix tente George le petit singe.
Je crois que vous confondez Cocoa avec UIKit/AppKit dans votre article. Foundation fait déjà partie de Cocoa.
Dans tous les cas c'est une bonne nouvelle, Apple a tenu parole.
Hahahaha!
Sinon personne connaît des bons tutos niveau beginner?
Entre le jeu de mot pour Temple Run et Swift, on sent la préparation pour les cadeaux de Noël des enfants de la rédac ;)
Encore une fois. MacG ;)
La notification a suffit à me mettre la musique en tête : pas merci ! ^^
@Mr_Antelux :
+1
Mais je dis merci, c'est drôle
Much hate such wow
My Taylor is rich.
On sait ce que Nicolas a regardé comme film hier soir... Ah ah!
Bravo Apple !
Très bien, on va avoir swift sur iPad...
T'as réfléchis au sens de ta réponse ?
Ouch c'est une attaque en règle contre golang ca... Je prédis que le premier qui permet de faire des ihm desktop sur Windows Mac Linux a gagné ...
Celui qui permet de faire des IHM sur Windows Mac et Linux a déjà gagné, il s'appelle Node.js ;)
http://electron.atom.io/
@fgirardey :
Je parle d'un truc sérieux qui génère du code natif pas du caca en Js .... Pas un langage web quoi
Ah oui, je vois, tu es le genre de dev software qui renie totalement les langages web par gros manque de connaissances.
Je comprends, autant pour moi.
mais quel humour ! Il vaut mieux lire ça que d'être aveugle, quoique...
désolé mais un langage natif pensé et conçu pour du natif sera toujours plus simple, plus rapide plus intégré au desktop que n'importe quelle daube en JS.
@fgirardey :
Sérieusement, tu as vu la lenteur d'Atom par rapport à ST3, par exemple ? Et c'est qu'un éditeur de texte, pas une app de création graphique. Le JS sur le desktop, c'est rigolo mais pas super intéressant pour le moment.
javascript est aujourd'hui une sorte de lingua franca informatique. Bien utilisé ou avec le framework qui va bien (au boulot, mon équipe utilise AngularJS), c'est un outil redoutable qui mine de rien sous tend quasiment tout le web moderne. Donc plus universel que javascript, je ne crois pas que cela existe :-)
Vous faites chier Macg avec vos titres. Impossible de penser à autre chose que cette chanson ;)
En tout cas, bonne nouvelle. Reste à voir ce qu'on va en faire.
Heureusement que je ne connais pas cette chanson alors :-)
Je ne mentirais plus jamais !
Libéré, délivré
C’est mesquin, mais j’aimerais bien profiter de l’occasion pour rappeler à Mrleblanc101 un de ses commentaires sur l’article précédent : « après tant d'attente à propos de Swift "Open source" les espoirs sont rendu très mince de voir cette promesse se concrétiser ! ».
Alors, M. le pessimiste ? ;-)
Manque plus que Facetime.
@BeePotato
Je me disais bien que j'avais lu quelque part des propos imbéciles de cet ordre !
C'est bien cool tout ça ! Je me demande comment la communauté va accueillir la nouvelle, mais j'espère qu'on aura vite une petite distro server basée sur Darwin. Un truc assez léger pour tourner sur un RPi ce serait parfait.
Darwin n'a jamais percé, faute à des bases trop fragiles par rapport à la concurrence (Linux, xBSD).
Je ne vois pas en quoi rajouter un compilateur vers un langage récent changerait la donne.
@lmouillart
Darwin, des bases trop fragiles ? Ah bon ? Dans quel domaine ? Y a des gens qui évaluent chaque année la fragilité de ce noyau ou bien tu te bases sur une vieille légende urbaine ? Enfin, Darwin est un BSD il me semble, donc c'est quoi le sens de ton propos ?
Je n'ai par ailleurs jamais supposé que le compilateur Swift allait changer la donne, juste que ce serait chouette d'avoir un système open source basé sur le travail d'Apple.
Darwin est déjà libre.
Ce qui est gestion graphique, système de fichier, multiprocesseur est assez pauvre dans Darwin, le système n'est pas non plus très performant par rapport à la concurrence (y compris pour les version type OS X, qui sont bien plus rapides qu'un Darwin Vanilla).
"Enfin, Darwin est un BSD il me semble, donc c'est quoi le sens de ton propos ?"
Les BSD ont pas mal évolué depuis le temps de leur fork pour NeXTSTEP notamment en ce qui concerne les points évoqués ci-dessus.
Concernant le peu de succès de la chose, j'en veux pour preuve l'arrêt ? De PureDarwin, OpenDarwin, GNUDarwin.
Concernant Darwin tout court, suffit de regard le peu de trafic concernant l'OS complet : https://lists.apple.com/archives/darwin-dev/2015.
En dehors du monde Apple, les OS d'Apple n’intéressent pas grand monde.
@lmouillart
"Darwin est déjà libre"
Jamais dit le contraire.
"Gestion graphique"
La gestion graphique fait partie du noyau ? Je croyais qu'il en incombait plutôt à des framework comme OpenGL ou Metal. Tu me l'apprends. Mais je vois pas bien en quoi ta remarque est pertinente quand on voit ce que donne Metal malgré Darwin
"Système de fichier"
C'est vrai que le HFS a fait son temps, mais là encore, je ne savais pas que ça concernait le noyau, ou alors j'ai pas bien compris comment un logiciel pouvait rendre OSX compatible avec NTFS.
"Multiprocesseur"
Quelle machine est multiprocesseur aujourd'hui ? On va plutôt favoriser les rack en serveur, et le multicore pour les machines uniques.
"Le système n'est pas non plus très performant par rapport à la concurrence"
De quel point de vue ? J'ai installé sur une même machine PC Linux, Windows et OSX et c'est le système d'Apple qui se montre toujours le plus stable.
"Concernant le succès de la chose"
Tu me donnes une conséquence du manque d'intérêt, pas une cause !
"En dehors du monde Apple, les OS d'Apple n'intéressent pas grand monde"
C'est certainement ce qui explique l'intérêt d'IBM ou le succès d'ElementaryOS qui bien que n'utilisant rien des sources d'Apple (parce que c'est plus facile de se baser sur un projet bien mieux suivi par la communauté comme Ubuntu) n'a jamais caché son ambition de proposer un OS user-friendly à la sauce Apple. Dire que OSX n'intéresse pas la communauté du libre c'est de l'hypocrisie. Y a qu'à naviguer sur les forum pour s'en convaincre.
Ce qui est certain c'est que quand on est intéressé par le monde Linux/Unix et qu'on a un Mac on a pas besoin d'aller chercher la distro qui va bien.
"La gestion graphique fait partie du noyau ? Je croyais qu'il en incombait plutôt à des framework comme OpenGL ou Metal. Tu me l'apprends. Mais je vois pas bien en quoi ta remarque est pertinente quand on voit ce que donne Metal malgré Darwin"
Que cela se passe en mode noyau, en mode utilisateur, ou mode mixte, il y a un certain nombre de composants qui vont permettre justement aux api (Metal/OpenGL), d'interagir avec le matériel.
Concernant Metal, c'est une api propriétaire, qui utilise elle même des éléments propriétaires interagissants avec Darwin, ils ne sont pas accessible avec du "Darwin pure".
Les pilotes pour Darwin sont aussi propriétaires.
Bref en Darwin pure et donc libre on a juste accès au framebuffer, en gros même pour déplacer une fenêtre vide c'est pas bien rapide.
"C'est vrai que le HFS a fait son temps, mais là encore, je ne savais pas que ça concernait le noyau, ou alors j'ai pas bien compris comment un logiciel pouvait rendre OSX compatible avec NTFS."
Comme pour la partie graphique, les pilotes peuvent suivant l'architecture choisie se placer à différent niveau. Dans ce cadre ils peuvent donc étendre les fonctionnalités du noyau.
"Quelle machine est multiprocesseur aujourd'hui ? On va plutôt favoriser les rack en serveur, et le multicore pour les machines uniques."
Toutes, les cœurs étant vu comme des processeurs dans les systèmes smp.
"De quel point de vue ? J'ai installé sur une même machine PC Linux, Windows et OSX et c'est le système d'Apple qui se montre toujours le plus stable."
CPU, IO, ceci dit, j'ai parlé de performance et non de stabilité.
"C'est certainement ce qui explique l'intérêt d'IBM ou le succès d'ElementaryOS qui bien que n'utilisant rien des sources d'Apple (parce que c'est plus facile de se baser sur un projet bien mieux suivi par la communauté comme Ubuntu) n'a jamais caché son ambition de proposer un OS user-friendly à la sauce Apple. Dire que OSX n'intéresse pas la communauté du libre c'est de l'hypocrisie. Y a qu'à naviguer sur les forum pour s'en convaincre."
Attention Darwin n'est pas OS X, c'est un sous ensemble libre, très limité. Darwin n'intéressent ni IBM, ni ElementaryOS.
@ lmouillart : « Darwin n'a jamais percé, faute à des bases trop fragiles par rapport à la concurrence (Linux, xBSD). »
Ça n’a rien à voir avec des bases soi-disant trop fragiles.
C’est juste que Darwin, arrivé après tout le monde et n’apportant rien de nouveau par rapport à une déjà très largement installée et maîtrisée de divers Linux et BSD, ne présente aucune caractéristique particulière qui mériterait que du monde y consacre des efforts. Il est parfaitement logique qu’il n’ait jamais percé dans un monde où il y avait déjà ce qu’il fallait en termes d’OS de ce genre.
@occam
My taylor is swift
La reine des neiges , la cop21 et le réchauffement ...
Chercher l'intrus
Et maintenant, il ne leur reste plus qu'à... réécrire le compilateur Swift en Swift, au lieu de C++!
Super nouvelle. Swift est selon moi un très bon langage.
En plus de rendre le projet open source, ils semblent vraiment vouloir en faire quelque chose. Cet article de Ars Technica est assez intéressant sur le sujet : http://arstechnica.com/apple/2015/12/craig-federighi-talks-open-source-swift-and-whats-coming-in-version-3-0/
Je ne m'attendais pas à une telle attitude de la part d'Apple, mais là je suis très agréablement surpris!
Pas mal comme chanteuse ...
Zut, j'ai c'te fichue mélodie en tête !
Au secouuuurs, extirpez-la-moi du crâââne...
My Taylor is open sourced.
L'ouverture de Swift était la condition nécessaire pour sa pérennisation.
Concernant son utilisation en dehors du monde Apple et notamment sous Linux (Windows n'étant pour le moment pas géré), il faudra voir si la sauce prend en dehors de quelques applications.
Malgré les qualités de l'objective-C ce langage n'a jamais percé en dehors d'Apple (et si l'on met de coté le projet GNUstep qui n'a jamais vraiment dépassé un seuil d'utilisateur permettant de sortir ce beau projet d'une utilisation de niche ou Cocotron). A ce niveau et pour Linux il faudra surtout tenter de convaincre les créateurs d'application de délaisser le quintet infernal Java, C, C++, Python, C# au profit de Swift
Comme bien souvent, la réussite en dehors du monde Apple dépendra donc du sponsoring d'Apple et de la bonne gouvernance du projet. Chris Lattner en charge ici de Swift avait déjà fait un bon boulot sur LLVM.
Concernant le monde Apple, c'est bénéfique, comme tout projet libre vs code fermé.
Pages