IPB

Bienvenue invité ( Connexion | Inscription )

 
Reply to this topicStart new topic
> A propos de Swift, Réactions à la publication du 15/06/2014
Options
ewok
posté 15 Jun 2014, 12:29
Message #1


grand pet pas d'chef
*****

Groupe : Admin
Messages : 2 919
Inscrit : 14 Jan 2001
Lieu : Paris
Membre no 2



Alors qu'approchait la fin de la keynote de la WWDC 2014, déjà particulièrement remplie en nouveautés très appréciées par les développeurs, Craig Federighi évoque Objective C lui-même, le principal langage de développement des apps sous OS X et iOS. Originellement dérivé de C, conçu il y a plus de 20 ans, Objective C a été amené chez Apple par Steve Jobs dans les cartons de NeXT lors de son retour en 1997. Federighi continue : "Nous nous sommes demandés si nous pourrions avoir un langage objet sans le bagage de C...". Et voici donc Swift, la plus grande surprise de la keynote. Ce nouveau langage, conçu en interne par Apple dans le plus grand secret depuis 4 ans, a immédiatement été le principal centre d'intérêt de tous les développeurs suivant l'événement. En voici une présentation succincte.

Comme tous les langages récemment apparus (Go, Rust, Groovy, Scala, etc.), Swift bénéficie largement de l'expérience et de la recherche en la matière. Apple aurait pu réutiliser un de ceux-ci, mais il aurait été étonnant qu'ils ne gardent pas le contrôle d'une pièce aussi fondamentale de l'outillage des développeurs (et du leur, puisqu'il est certain qu'Apple l'utilise et va l'utiliser pour ses propres applis - celle de la WWDC est un premier exemple).

En premier lieu, Swift permet d'écrire un code plus rapide qu'Objective C, en reprenant entre autres la dualité class/struct que C# avait popularisé : class pour les objets lourds et complexes (une fenêtre, un bouton, ...), et struct pour les agrégations de types scalaires simples (un vecteur de nombres flottants). Certes les structs existent aussi en Objective C, mais ce sont celles de C et il est impossible d'y attacher des méthodes. En Swift elles sont beaucoup plus évoluées. On retrouve donc ainsi la possibilité de manipuler de grandes quantités de données avec la même puissance qu'en C++ sans avoir à sacrifier la facilité d'utilisation.

Ensuite, Swift s'attache à être très sécurisé, pour éviter les erreurs de programmation les plus courantes. Pour cela, il est plus fortement typé qu'Objective C (le compilateur sait plus précisément ce qu'est supposé contenir une variable), mais sait faire de l'inférence de type, ce qui permet des déclarations plus lisibles et moins redondantes. Il gère la mémoire tout seul aussi bien qu'Objective C avec ARC, mais en utilisant des directives plus simples. Il oblige à initialiser toute variable avant son utilisation.

Bien que d'une syntaxe plus simple que celle d'ObjC, Swift intègre des concepts tels que la surcharge de méthodes, la surcharge d'opérateur, et les types génériques. Ces outils sont potentiellement très puissants, mais ouvrent aussi la porte a du code particulièrement complexe. Les vieux routiers de C++ comprendront à quel point, même si Swift reste très loin d'égaler C++ quant à la capacité à faire des sacs de noeuds.

Autre caractéristique très intéressante, Swift intègre certains des idiomes les plus courants de Cocoa, tel que vérifier si une variable contient bien un objet avant d'appeler une méthode dessus, ou exécuter automatiquement du code avant ou après le changement de valeur d'une propriété d'une classe. Ce qui nécessitait plusieurs lignes de code en Objective C s'écrit beaucoup plus simplement en Swift.

Il est également intéressant de noter que si Swift affiche des performances dignes d'un langage bas niveau tel que C ou C++, il a pourtant un niveau d'abstraction plus proche d'un langage de script tel que Python ou Ruby... et il est aussi possible d'écrire des scripts en Swift. Il sera très intéressant de voir ce que cette possibilité va permettre en terme de développement sous OS X (l'utilité sur iOS est moins évidente).

Enfin, il faut mentionner les "playgrounds" (aires de jeu) en annexe à Swift. Très fortement inspiré du document sur le Learnable Programming de Bret Victor, cette extension à Xcode permet de tester très facilement des fragments de code Swift et de visualiser immédiatement le résultat de ce qu'on tape, voir ICI.

Pour conclure, notons que Swift n'est pas un caprice soudain d'Apple mais s'inscrit clairement dans une stratégie à long terme. Il vient de llvm, le projet de compilateur extensible Open Source qu'Apple supporte depuis sa création en 2003, et sur lequel Apple mise pour la pérennité de ses outils de développement. Le langage a actuellement encore quelques bugs : dans son implémentation bien sûr (nous n'en sommes qu'à la première beta de Xcode 6), mais le langage lui-même est susceptible d'évoluer encore, selon les retours des premières utilisations. Ceci dit, il est tout à fait possible de commencer à travailler avec, et vivement recommandé d'au moins y jeter un œil si vous êtes développeur.

Pour en savoir plus :


Proposé par Guillaume Laurent, intellicore.net
Lien vers le billet original


--------------------
Go to the top of the page
 
+Quote Post
MrAwax
posté 15 Jun 2014, 13:35
Message #2


Adepte de Macbidouille
*

Groupe : Membres
Messages : 79
Inscrit : 18 Feb 2008
Membre no 108 073



Citation
Apple aurait pu réutiliser un de ceux-ci, mais il aurait été étonnant qu'ils ne gardent pas le contrôle …

Certes les années CodeWarrior (ie quand Apple avait perdu le contrôle de ses outils de développement et était donc tributaire des évolutions d'un éditeur tiers) restent encore gravées dans la mémoire de Apple mais ici il ne s'agit pas que de contrôle.

La transition a Swift à cela de magique que les API ne changent pas. Cocoa et les autres API de Apple sont parmi les meilleures API du marché en terme de conception. Là où Swift est superbe, c'est qu'il est conçu pour se marier parfaitement avec le design de Cocoa. Par exemple, quand on définit une fonction anonyme (block/cliquer) comme dernier argument du méthode Swift, elle a une syntaxe simplifiée. Or c'est justement le cas pour des très nombreuses méthodes des API Apple.

Pour cette condition, c'est-à-dire une transition facilitée par le maintien des API et une syntaxe optimisée pour ces API, le fait de définir son propre langage est indispensable.


Autre remarque : Swift est parfois plus rapide que C/C++. En effet, Swift a été conçu par l'équipe qui s'occupe de LLVM, un des meilleurs compilateurs/optimiseurs. Le langage à donc été conçu pour également permettre au compilateur de faire des optimisations qui ne sont pas possibles en C/C++ parce que le langage ne les permet pas.


--------------------
MacBook Unibody Aluminium 2.0GHz - 8Go/160Go
iPhone 4 32Go
Synology DS211j Barracuda Green 5900.3 2Tox2
Freebox v6 - Airport Extreme Jan2007
Go to the top of the page
 
+Quote Post
igerard
posté 15 Jun 2014, 13:42
Message #3


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 5 157
Inscrit : 12 Dec 2003
Lieu : Paris
Membre no 12 463



Swift permet d'appeler son code C historique d'une manière assez simple, le bridge définit tout les types utiles...

Ce serait sympa qu'Apple sorte un playground sous ios...


--------------------
IPad 5 ou Air, 128 gigas... Superbe, exactement ce que j'attendais en terme de légèreté et de lisibilité.

Si le désir est l'essence même de l'homme, la guerre est l'essence même de la société... (Sponville)
Traité du désespoir et de la béatitude
Le Capitalisme est-il moral
Go to the top of the page
 
+Quote Post
El Bacho
posté 15 Jun 2014, 14:09
Message #4


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 4 894
Inscrit : 24 Apr 2003
Lieu : Depuis chez lui
Membre no 7 276



Citation (MrAwax @ 15 Jun 2014, 14:35) *
La transition a Swift à cela de magique que les API ne changent pas. Cocoa et les autres API de Apple sont parmi les meilleures API du marché en terme de conception. Là où Swift est superbe, c'est qu'il est conçu pour se marier parfaitement avec le design de Cocoa. Par exemple, quand on définit une fonction anonyme (block/cliquer) comme dernier argument du méthode Swift, elle a une syntaxe simplifiée. Or c'est justement le cas pour des très nombreuses méthodes des API Apple.


Si j'ai bien compris, plutôt que de développer des extensions à un langage existant pour qu'il s'adapte aux API Cocoa (comme ça avait été le cas avec Objective C), ils sont plutôt partis de la logique de leurs API (celles qui existent et celles qu'ils pourront encore concevoir) et ont développé le langage à partir de ça, en essayant que sa syntaxe s'adapte ensuite aux habitudes des gens habitués à Python, Java et autres langages existants ?


--------------------
« Ayez confiance, je sais ce que je fais. »
Go to the top of the page
 
+Quote Post
igerard
posté 15 Jun 2014, 14:34
Message #5


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 5 157
Inscrit : 12 Dec 2003
Lieu : Paris
Membre no 12 463



Ils ont repris ObjC a la création de NeXT en 86, Brad J Cox venait juste de l'inventer. Et ont bâtit NeXTStep a partir de là, on peut dire que NeXTStep/Cocoa est nativement lié à ObjC.

Swift est le fruit d'une volonté de résoudre les problèmes de programmation que l'on rencontre avec Cocoa, par exemple le depilement de 'path' KVC (Key Value Coding) pere.fils.petitfils... Comment gérer le problème d'un élément du path dont la valeur serait nulle, toute en évitant une succession de test conditionnels avec 'if' par exemple, ce qui donne la notation ? Et ! : ? Pour tester la valeur et ! Pour aller chercher la valeur quand on est sur qu'elle existe.

La volonté aussi de garder le même runtime afin d'utiliser nativement sans bridge coûteux le code existant... ObjC ou C.

La volonté également de proposer des solutions originales sur un certain nombre de problèmes classique avec les énumération ou les switch par exemple.

Beau boulot de leur part, qui va de pair avec leur travail d'acceleration de JavaScript, sans doute pour cela qu'on retrouve JS au même niveau que AppleScript.

Il faut aussi savoir qu'ils ont continué à faire évoluer ObjC dans la foulée.

Ce message a été modifié par igerard - 16 Jun 2014, 04:47.


--------------------
IPad 5 ou Air, 128 gigas... Superbe, exactement ce que j'attendais en terme de légèreté et de lisibilité.

Si le désir est l'essence même de l'homme, la guerre est l'essence même de la société... (Sponville)
Traité du désespoir et de la béatitude
Le Capitalisme est-il moral
Go to the top of the page
 
+Quote Post
arcturus
posté 15 Jun 2014, 14:35
Message #6


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 264
Inscrit : 26 Feb 2003
Lieu : La Rochelle
Membre no 6 425



Un lien permettant aux débutants de se faire une idée :SWIFT


--------------------
Imac 2,16 GHz Intel Core 2 Duo, sinon astronomie.

GA Z97X-UD7 TH, i7-4690k, RAM crucial 4x8 Go, Samsung SSD 850 EVO 250 Go, WD 2To, carte graphique nvidia geforce GT 740, wifi TP-Link WDN4800, alimentation Corsair RM650 Gold, boitier Corsair R500. Ecran Hp 23xi.
Avant : Yosemite. Bientôt El Capitan.
Bootloader Clover.
Go to the top of the page
 
+Quote Post
Alizés
posté 15 Jun 2014, 14:42
Message #7


可愛い アリゼ
*****

Groupe : Membres
Messages : 10 010
Inscrit : 21 Aug 2004
Membre no 22 340



Je suis curieuse de savoir pourquoi Apple ne s'est pas encore fait remonter les bretelles avec un tel nom pour son nouveau langage?

La, la, la, la, la, la, la, la, la, la et encore la aussi...
Visiblement, Apple n'a vraiment pas fait dans l'original, cette fois-ci. À quand le premier procès donc?

Ce message a été modifié par Alizés - 15 Jun 2014, 15:39.


--------------------
Bisous
Go to the top of the page
 
+Quote Post
MrAwax
posté 15 Jun 2014, 14:46
Message #8


Adepte de Macbidouille
*

Groupe : Membres
Messages : 79
Inscrit : 18 Feb 2008
Membre no 108 073



Citation (El Bacho @ 15 Jun 2014, 15:09) *
Si j'ai bien compris, plutôt que de développer des extensions à un langage existant pour qu'il s'adapte aux API Cocoa (comme ça avait été le cas avec Objective C) …

Pour ObjC, cela n'a pas du tout été le cas : ObjC a été le langage de NextStep depuis le début et toutes les API NextStep ont été conçue en partant des fonctionnalités disponibles dans ObjC. D'ailleurs le préfix NS que l'on retrouve sur toutes les classes bas niveaux des API Apple (NSString, NSArray, NSDictionnary, …) veut dire NextStep.
Au rachat de Next par Apple en 96, ils ont repris toute la couche technique de NeXT comme fondation.

Les évolutions récentes de ObjC n'étaient pas là pour s'adapter aux API mais dans une intégration que seul Apple est capable de faire, faire évoluer API et langage main dans la main : c'est avec les évolutions de ObjC (block, …) que Apple a pu fair évoluer des API.

Le langage de référence d'une API est très important car c'est lui qui conditionne sa conception.


--------------------
MacBook Unibody Aluminium 2.0GHz - 8Go/160Go
iPhone 4 32Go
Synology DS211j Barracuda Green 5900.3 2Tox2
Freebox v6 - Airport Extreme Jan2007
Go to the top of the page
 
+Quote Post
Jaguar
posté 15 Jun 2014, 14:49
Message #9


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 1 908
Inscrit : 29 Nov 2002
Lieu : Lyon
Membre no 4 928



Citation (MrAwax @ 15 Jun 2014, 14:35) *
Citation
Apple aurait pu réutiliser un de ceux-ci, mais il aurait été étonnant qu'ils ne gardent pas le contrôle …
Certes les années CodeWarrior (ie quand Apple avait perdu le contrôle de ses outils de développement et était donc tributaire des évolutions d'un éditeur tiers) restent encore gravées dans la mémoire de Apple mais ici il ne s'agit pas que de contrôle.
Ce contrôle sur les outils de développement offre aussi une chose fondamentale à Apple et ses utilisateurs : la liberté d'une transition matérielle transparente. Pour passer toutes les applications Swift d'Intel à ARM, il suffira simplement de les recompiler après avoir coché la case "A9" dans Xcode 7.
Là encore, le souvenir de tous ceux qui développaient en CodeWarrior et qui ont du porter tous leurs projets sous Xcode pour passer sur Mac Intel (j'ai connu ça sad.gif ) reste encore douloureux !

Ce message a été modifié par Jaguar - 15 Jun 2014, 14:52.
Go to the top of the page
 
+Quote Post
Chriz
posté 15 Jun 2014, 16:16
Message #10


Macbidouilleur de vermeil !
****

Groupe : Membres
Messages : 1 224
Inscrit : 8 Oct 2005
Membre no 47 466



Citation (Jaguar @ 15 Jun 2014, 09:49) *
[Ce contrôle sur les outils de développement offre aussi une chose fondamentale à Apple et ses utilisateurs : la liberté d'une transition matérielle transparente. Pour passer toutes les applications Swift d'Intel à ARM, il suffira simplement de les recompiler après avoir coché la case "A9" dans Xcode 7.
Là encore, le souvenir de tous ceux qui développaient en CodeWarrior et qui ont du porter tous leurs projets sous Xcode pour passer sur Mac Intel (j'ai connu ça sad.gif ) reste encore douloureux !


Objective-C/Cocoa ne permettait-il pas de faire la même chose? i.e. changer l'architecture à la compilation dans XCode pour l'exécution x86 VS ARM?
Go to the top of the page
 
+Quote Post
Jaguar
posté 15 Jun 2014, 16:28
Message #11


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 1 908
Inscrit : 29 Nov 2002
Lieu : Lyon
Membre no 4 928



Citation (Chriz @ 15 Jun 2014, 17:16) *
Citation (Jaguar @ 15 Jun 2014, 09:49) *
[Ce contrôle sur les outils de développement offre aussi une chose fondamentale à Apple et ses utilisateurs : la liberté d'une transition matérielle transparente. Pour passer toutes les applications Swift d'Intel à ARM, il suffira simplement de les recompiler après avoir coché la case "A9" dans Xcode 7.
Là encore, le souvenir de tous ceux qui développaient en CodeWarrior et qui ont du porter tous leurs projets sous Xcode pour passer sur Mac Intel (j'ai connu ça sad.gif ) reste encore douloureux !
Objective-C/Cocoa ne permettait-il pas de faire la même chose? i.e. changer l'architecture à la compilation dans XCode pour l'exécution x86 VS ARM?
Si. C'est le contrôle des outils de développement depuis Xcode qui le permet, pas Swift. On peut imaginer que Swift, repensé avec un niveau d'abstraction encore supérieur, facilitera encore ce passage (on ne devrait plus avoir de morceaux de code dépendant de la machine, d'un gestionnaire de périphérique par exemple).
Le but de mon message était de rappeler que le "contrôle", qui fait peur à presque tous sur ce site, est en fait souvent une très bonne chose (à 90%...).
Un autre exemple : ici on critique presque tous les jours le sandbox d'iOS, mais on est sûrement trop jeune pour se souvenir de l'alternative offerte avant l'iPhone : des smartphones qui devenaient inutilisables dès que l'on avait installé 3 applications tierces. En 2007 sur Windows Mobile, quand Tom Tom était lancé, on n'arrivait même plus à prendre un appel téléphonique normalement ! C'est ça à 90% le "contrôle".

Ce message a été modifié par Jaguar - 15 Jun 2014, 16:35.
Go to the top of the page
 
+Quote Post
MrAwax
posté 15 Jun 2014, 17:22
Message #12


Adepte de Macbidouille
*

Groupe : Membres
Messages : 79
Inscrit : 18 Feb 2008
Membre no 108 073



Citation (Alizés @ 15 Jun 2014, 15:42) *
Je suis curieuse de savoir pourquoi Apple ne s'est pas encore fait remonter les bretelles avec un tel nom pour son nouveau langage?

La, la, la, la, la, la, la, la, la, la et encore la aussi...
Visiblement, Apple n'a vraiment pas fait dans l'original, cette fois-ci. À quand le premier procès donc?

Euh, pourquoi toutes ces entreprises peuvent utiliser ce nom sans se faire de procès et Apple ne pourrait pas ?
Dans tous ces exemples, il n'y a aucun "langage de programmation/script". Il n'y a aucun risque de confondre Swift (le langage) avec la Suzuki Swift ou l'engin d'épandage agricole.
De plus, la plupart des déboires d'Apple avec les noms étaient liés à des personnes qui avait déposé "iPhone" en s'inspirant de "iPod" et ne l'utilisait pas, attendant de le revendre à un autre.


--------------------
MacBook Unibody Aluminium 2.0GHz - 8Go/160Go
iPhone 4 32Go
Synology DS211j Barracuda Green 5900.3 2Tox2
Freebox v6 - Airport Extreme Jan2007
Go to the top of the page
 
+Quote Post
igerard
posté 15 Jun 2014, 17:39
Message #13


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 5 157
Inscrit : 12 Dec 2003
Lieu : Paris
Membre no 12 463



Pour ceux que tout cela passionnent, en prenant un compte développeur on a accès à toutes les conférences de la WWDC, investissement valable... ça prend juste un peu de temps libre wink.gif

@Alizées

Swift est un adjectif, un nom commun... Surpris aussi par ce nom au début, avant de connaitre sa signification adjectivale... Swift pour moi était avant tout le nom d'un format d'échange d'informations financière...

J'ai de sérieux doutes pour un procès à ce sujet.


--------------------
IPad 5 ou Air, 128 gigas... Superbe, exactement ce que j'attendais en terme de légèreté et de lisibilité.

Si le désir est l'essence même de l'homme, la guerre est l'essence même de la société... (Sponville)
Traité du désespoir et de la béatitude
Le Capitalisme est-il moral
Go to the top of the page
 
+Quote Post
lemail2moi
posté 15 Jun 2014, 19:42
Message #14


Adepte de Macbidouille
*

Groupe : Membres
Messages : 73
Inscrit : 18 Apr 2007
Membre no 84 960



Citation (MrAwax @ 15 Jun 2014, 17:22) *
Citation (Alizés @ 15 Jun 2014, 15:42) *
Je suis curieuse de savoir pourquoi Apple ne s'est pas encore fait remonter les bretelles avec un tel nom pour son nouveau langage?

La, la, la, la, la, la, la, la, la, la et encore la aussi...
Visiblement, Apple n'a vraiment pas fait dans l'original, cette fois-ci. À quand le premier procès donc?

Euh, pourquoi toutes ces entreprises peuvent utiliser ce nom sans se faire de procès et Apple ne pourrait pas ?
Dans tous ces exemples, il n'y a aucun "langage de programmation/script". Il n'y a aucun risque de confondre Swift (le langage) avec la Suzuki Swift ou l'engin d'épandage agricole.
De plus, la plupart des déboires d'Apple avec les noms étaient liés à des personnes qui avait déposé "iPhone" en s'inspirant de "iPod" et ne l'utilisait pas, attendant de le revendre à un autre.


Comme celui-ci?
Go to the top of the page
 
+Quote Post
lewis82
posté 15 Jun 2014, 20:24
Message #15


Macbidouilleur de bronze !
**

Groupe : Membres
Messages : 307
Inscrit : 4 Sep 2006
Lieu : Québec
Membre no 67 295



Citation (lemail2moi @ 15 Jun 2014, 19:42) *
Citation (MrAwax @ 15 Jun 2014, 17:22) *
Citation (Alizés @ 15 Jun 2014, 15:42) *
Je suis curieuse de savoir pourquoi Apple ne s'est pas encore fait remonter les bretelles avec un tel nom pour son nouveau langage?

La, la, la, la, la, la, la, la, la, la et encore la aussi...
Visiblement, Apple n'a vraiment pas fait dans l'original, cette fois-ci. À quand le premier procès donc?

Euh, pourquoi toutes ces entreprises peuvent utiliser ce nom sans se faire de procès et Apple ne pourrait pas ?
Dans tous ces exemples, il n'y a aucun "langage de programmation/script". Il n'y a aucun risque de confondre Swift (le langage) avec la Suzuki Swift ou l'engin d'épandage agricole.
De plus, la plupart des déboires d'Apple avec les noms étaient liés à des personnes qui avait déposé "iPhone" en s'inspirant de "iPod" et ne l'utilisait pas, attendant de le revendre à un autre.


Comme celui-ci?


C'est un projet open-source utilisé dans des milieux hautement spécialisés. Je les vois mal aller en procès.


--------------------
MBP 13" C2D 2.53GHz, 8GB DDR3 1066MHz, Geforce 9400M 256 MB VRAM, Samsung 840 EVO 250 GB
Go to the top of the page
 
+Quote Post
GregWar
posté 15 Jun 2014, 22:49
Message #16


Macbidouilleur de vermeil !
****

Groupe : Membres
Messages : 1 305
Inscrit : 22 Aug 2001
Lieu : Paris
Membre no 668



Citation (MrAwax @ 15 Jun 2014, 13:35) *
Cocoa et les autres API de Apple sont parmi les meilleures API du marché en terme de conception.


Alors ça c'est un avis tout à fait perso :-)
A mon avis, Apple fait parmi les API les moins stables/pérennes du business.
Ils font ce dont ils ont besoin pour l'OS et leurs apps, et se foutent un peu du reste du monde.

Swift apparait clairement comme la meilleure annonce depuis longtemps pour les Devs.
Si on peut avoir qqc de clair, et pas "si le constructeur il s'appelle make-qqc, alors l'alocc elle est comme si et pis l'auto-release il est comme ça - sauf si on a oublié, parce que c'est pas du tout obligatoire".

Enfin je dis ça, je dois avouer que je ne code plus en ObjC depuis 2 bonnes années.
Ca a peut-être encore tout changé la dessus aussi.


--------------------
MBP13 Early 2015 - Core i7.
Go to the top of the page
 
+Quote Post
(The)Space
posté 16 Jun 2014, 01:51
Message #17


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 771
Inscrit : 27 Oct 2009
Membre no 144 466



Un bon article écrit sur PC Inpact :
http://www.nextinpact.com/news/87997-swift...e-par-apple.htm

(réservé aux abonés)


--------------------
L'homme en noir fuyait à travers le désert, et le Pistolero le suivait.
Go to the top of the page
 
+Quote Post
igerard
posté 16 Jun 2014, 04:45
Message #18


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 5 157
Inscrit : 12 Dec 2003
Lieu : Paris
Membre no 12 463



Citation (GregWar @ 15 Jun 2014, 23:49) *
Citation (MrAwax @ 15 Jun 2014, 13:35) *
Cocoa et les autres API de Apple sont parmi les meilleures API du marché en terme de conception.


Alors ça c'est un avis tout à fait perso :-)
A mon avis, Apple fait parmi les API les moins stables/pérennes du business.
Ils font ce dont ils ont besoin pour l'OS et leurs apps, et se foutent un peu du reste du monde.

Swift apparait clairement comme la meilleure annonce depuis longtemps pour les Devs.
Si on peut avoir qqc de clair, et pas "si le constructeur il s'appelle make-qqc, alors l'alocc elle est comme si et pis l'auto-release il est comme ça - sauf si on a oublié, parce que c'est pas du tout obligatoire".

Enfin je dis ça, je dois avouer que je ne code plus en ObjC depuis 2 bonnes années.
Ca a peut-être encore tout changé la dessus aussi.


Ce n'est pas parce qu'ils ont fait énormément bouger l'ensemble que cela altère sa qualité en terme d'architecture... Qui plus est Cocoa repose sur un ensemble d'API C impressionnantes... Les Core*.

Le seul truc récent qui m'impressionne autant que cela a pu m'impressionné par le passé, c'est angularJS que je trouve très très bien vu.

Ils avaient l'impérieuse nécessité de bouger, tu ne peux pas stagner avec des API qui ont été conçues depuis aussi longtemps.

Et j'ai quand même l'impression qu'ils s'inquiètent surtout de donner des boites à outils capables de couvrir tous les besoins de développement applicatif de leur communauté de développeurs, ça va bien au delà de leur besoins propres, il me semble.

Mais il est vrai, malgré tout que ça donne l'impression d'être moins bien tenu que NeXTStep/OpenStep, mais à cette époque la couverture fonctionnelle était ridicule en comparaison à aujourd'hui... On était capable de connaitre toutes les API smile.gif

Ce message a été modifié par igerard - 16 Jun 2014, 04:46.


--------------------
IPad 5 ou Air, 128 gigas... Superbe, exactement ce que j'attendais en terme de légèreté et de lisibilité.

Si le désir est l'essence même de l'homme, la guerre est l'essence même de la société... (Sponville)
Traité du désespoir et de la béatitude
Le Capitalisme est-il moral
Go to the top of the page
 
+Quote Post
manou
posté 16 Jun 2014, 05:43
Message #19


Adepte de Macbidouille
*

Groupe : Membres
Messages : 65
Inscrit : 18 Jun 2003
Membre no 8 111



Citation (igerard @ 16 Jun 2014, 06:45) *
Le seul truc récent qui m'impressionne autant que cela a pu m'impressionné par le passé, c'est angularJS que je trouve très très bien vu.


AngularJS me fait beaucoup penser à WebObjects. On retrouve la même philosophie et les mêmes paradigmes. Il a du mérite à mon avis à 'décomplexé' un peu Javascript. C'est également un anti-JQuery smile.gif.

De manière générale, Javascript est LE langage qui monte aujourd'hui. Et je pense que Apple l'a compris en lançant swift qui ressemble quelque peu à Javascript muni de preprocesseur comme Coffeescript par exemple. c'est pour cela que swift sera accessible à des développeurs web pourvus que ceux-ci se tapent l'abondance des apis cocoa qui au demeurant sont très bien structurées.

Pour moi le GROS truc de swift et ce qui va faire son adoption rapide c'est playground.
Go to the top of the page
 
+Quote Post
igerard
posté 16 Jun 2014, 07:07
Message #20


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 5 157
Inscrit : 12 Dec 2003
Lieu : Paris
Membre no 12 463



WebObject, WebScript... Y a plus de 15 ans, on faisait déjà des trucs étonnants en combinant le tout avec DHTML... Drag&Drop.... wink.gif

Le truc que je trouve très bien vu avec angularJS, c'est ce 'depliement' à partir de JS lui même, en respectant le pattern MVC.


--------------------
IPad 5 ou Air, 128 gigas... Superbe, exactement ce que j'attendais en terme de légèreté et de lisibilité.

Si le désir est l'essence même de l'homme, la guerre est l'essence même de la société... (Sponville)
Traité du désespoir et de la béatitude
Le Capitalisme est-il moral
Go to the top of the page
 
+Quote Post
DefKing
posté 16 Jun 2014, 08:30
Message #21


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 5 725
Inscrit : 5 Oct 2005
Membre no 47 298



Dire que j'en suis resté à l'assembleur : CTWO, ADD... C'était en 1975... Et au Cobol...

Ce message a été modifié par DefKing - 16 Jun 2014, 08:46.


--------------------
Performa 6400, G4 AGP, iMac G5 20", iMac 21,5 core i3 et iBook G4 14".
Go to the top of the page
 
+Quote Post
Antibiotik
posté 16 Jun 2014, 09:56
Message #22


Macbidouilleur d'argent !
***

Groupe : Membres
Messages : 639
Inscrit : 5 Aug 2003
Lieu : Paris
Membre no 8 932



Citation (MrAwax @ 15 Jun 2014, 18:22) *
Citation (Alizés @ 15 Jun 2014, 15:42) *
Je suis curieuse de savoir pourquoi Apple ne s'est pas encore fait remonter les bretelles avec un tel nom pour son nouveau langage?

La, la, la, la, la, la, la, la, la, la et encore la aussi...
Visiblement, Apple n'a vraiment pas fait dans l'original, cette fois-ci. À quand le premier procès donc?

Euh, pourquoi toutes ces entreprises peuvent utiliser ce nom sans se faire de procès et Apple ne pourrait pas ?
Dans tous ces exemples, il n'y a aucun "langage de programmation/script". Il n'y a aucun risque de confondre Swift (le langage) avec la Suzuki Swift ou l'engin d'épandage agricole.
De plus, la plupart des déboires d'Apple avec les noms étaient liés à des personnes qui avait déposé "iPhone" en s'inspirant de "iPod" et ne l'utilisait pas, attendant de le revendre à un autre.


Si Il y a ça :

http://swift-lang.org/main/

Il semble que ce n'est pas Apple qui est inventé Swift…


--------------------
Je n'aime pas Apple, j'aime l'(ex)MacPro !
Go to the top of the page
 
+Quote Post
igerard
posté 16 Jun 2014, 11:23
Message #23


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 5 157
Inscrit : 12 Dec 2003
Lieu : Paris
Membre no 12 463



Le mot Swift... Sûrement pas smile.gif

Le langage Swift, permettant de coder des applications iOS ou OSX... Sûrement wink.gif

La question est de savoir si ce langage va se retrouver public, en relation avec LLVM, Clang et ObjectiveC...

On peut espérer lors de la release...


--------------------
IPad 5 ou Air, 128 gigas... Superbe, exactement ce que j'attendais en terme de légèreté et de lisibilité.

Si le désir est l'essence même de l'homme, la guerre est l'essence même de la société... (Sponville)
Traité du désespoir et de la béatitude
Le Capitalisme est-il moral
Go to the top of the page
 
+Quote Post
Jaypee
posté 16 Jun 2014, 16:02
Message #24


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 2 486
Inscrit : 29 Aug 2002
Membre no 3 340



La traduction moins connue de swift est "Martinet", l'oiseau producteur de guano bien connu de nos villes.
C'est cette signification qui est utilisée par les deux logos (Apple ou swift-lang)

Le langage ne semble pas révolutionnaire, mais une évolution intégrant la POO et le style fonctionnel, à la manière de Java8, Ceylon, Scala, Groovy, JavaScript...
Le typage statique ne doit pas être lourd, typiquement si on crée une fonction carré(x) -> x*x , le type est implicite, faudrait pas être forcé à produire 3 versions : int, float et double.

La présence du "REPL", appelé "Playground" est très positive, mais ne suffit pas à booster l'audience d'un langage. Sinon tous les langages interprétés seraient préférés.

Scala, par exemple, parallellement aux sources.scala classiques à compiler etc... a aussi la notion de worksheet un fichier de script évalué dès qu'il est sauvegardé. On tape le code... Pomme-S et boom, on a le résultat inséré comme un commentaire en face des lignes de code.

JP

Ce message a été modifié par Jaypee - 16 Jun 2014, 16:13.
Go to the top of the page
 
+Quote Post
Hebus
posté 13 Feb 2020, 10:55
Message #25


Macbidouilleur d'Or !
*****

Groupe : Membres
Messages : 7 134
Inscrit : 24 Sep 2015
Lieu : Pays d'Aix
Membre no 196 570



Swift Playgrounds dispo sous Catalina ... utilisation de Catalyst... Bonne réalisation, utile si on veut apprendre le language et les API sans Xcode smile.gif

https://9to5mac.com/2020/02/11/apple-launch...pp-for-the-mac/

https://apps.apple.com/us/app/swift-playgro...496833156?mt=12

Ce message a été modifié par Hebus - 13 Feb 2020, 10:56.


--------------------
Bobo du Pays d'Aix et Fanboy Apple
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 utilisateur(s) sur ce sujet (1 invité(s) et 0 utilisateur(s) anonyme(s))
0 membre(s) :

 



Nous sommes le : 28th March 2024 - 20:34