WWDC 2019: SwiftUI

muqaddarmuqaddar Administrateur
juin 2019 modifié dans Actualités #1

Apple annonce un nouveau framework UI pour épauler/remplacer UIKit et AppKit, écrit en Swift.
Certainement la meilleure annonce de cette WWDC.

https://developer.apple.com/xcode/swiftui/

«1

Réponses

  • klogklog Membre

    Si déjà ça ne remplace pas obligatoirement AppKit et UIKit, c'est un bon début :D

  • muqaddarmuqaddar Administrateur

    @klog a dit :
    Si déjà ça ne remplace pas obligatoirement AppKit et UIKit, c'est un bon début :D

    ça les complétera, et à mon avis SwiftUI ne doit pas avoir trop de contrôles pour le moment.

  • LarmeLarme Membre

    Oui, ça complète : https://developer.apple.com/tutorials/swiftui/interfacing-with-uikit
    D'ailleurs, j'trouve cette page de "tuto" scrollable plutôt sympa.

  • klogklog Membre

    @Larme a dit :
    Oui, ça complète : https://developer.apple.com/tutorials/swiftui/interfacing-with-uikit
    D'ailleurs, j'trouve cette page de "tuto" scrollable plutôt sympa.

    Ha ouai, l'est bien beau ce tuto...

  • muqaddarmuqaddar Administrateur

    @Larme a dit :
    Oui, ça complète : https://developer.apple.com/tutorials/swiftui/interfacing-with-uikit
    D'ailleurs, j'trouve cette page de "tuto" scrollable plutôt sympa.

    J'imagine qu'à terme l'objectif que quand-même de n'avoir que SwiftUI, sinon ça va être un bordel sans nom !

  • @muqaddar a dit :

    @Larme a dit :
    Oui, ça complète : https://developer.apple.com/tutorials/swiftui/interfacing-with-uikit
    D'ailleurs, j'trouve cette page de "tuto" scrollable plutôt sympa.

    J'imagine qu'à terme l'objectif que quand-même de n'avoir que SwiftUI, sinon ça va être un bordel sans nom !

    J'espére bien ..

  • LarmeLarme Membre

    De la même manière que Swift a été adapté...
    Maintenant, c'est indiqué iOS 13+ (mais peut-être un translator?)

  • C'est pas tout, ils ont intégré un framework qui est un peu un équivalent à RxSwift pour les connaisseurs: https://developer.apple.com/documentation/combine

  • Perso je suis pas fan, ça fait penser aux apps UWP sur windows.
    Des interfaces vraiment basiques pour avoir le même comportement sur tous les devices

  • klogklog Membre
    juin 2019 modifié #11

    @muqaddar a dit :

    @Larme a dit :
    Oui, ça complète : https://developer.apple.com/tutorials/swiftui/interfacing-with-uikit
    D'ailleurs, j'trouve cette page de "tuto" scrollable plutôt sympa.

    J'imagine qu'à terme l'objectif que quand-même de n'avoir que SwiftUI, sinon ça va être un bordel sans nom !

    Je n'ose pas y croire : ce serait une très mauvaise nouvelle pour les concepteurs d'applications pro sur Mac...

  • muqaddarmuqaddar Administrateur

    @devulder a dit :
    Perso je suis pas fan, ça fait penser aux apps UWP sur windows.
    Des interfaces vraiment basiques pour avoir le même comportement sur tous les devices

    La démo était basique... il faut voir le reste.

  • muqaddarmuqaddar Administrateur

    @klog a dit :

    @muqaddar a dit :

    @Larme a dit :
    Oui, ça complète : https://developer.apple.com/tutorials/swiftui/interfacing-with-uikit
    D'ailleurs, j'trouve cette page de "tuto" scrollable plutôt sympa.

    J'imagine qu'à terme l'objectif que quand-même de n'avoir que SwiftUI, sinon ça va être un bordel sans nom !

    Je n'ose pas y croire : ce serait une très mauvaise nouvelle pour les concepteurs d'applications pro sur Mac...

    A terme = 10 ans dans ma tête...
    SwiftUI aura autant évoluer que Swift les 5 dernières années d'ici là.

  • MalaMala Membre, Modérateur

    AppKit, UIKit, Marziplan (aka Catalyst) et maintenant SwiftUI. Et sinon, il y a un pilote dans l'avion?

  • muqaddarmuqaddar Administrateur

    @Mala a dit :
    AppKit, UIKit, Marziplan (aka Catalyst) et maintenant SwiftUI. Et sinon, il y a un pilote dans l'avion?

    Faire avec le présent et préparer le futur... c'est la base de l'informatique même si parfois on en a plein le c... des histoires de compatibilité et de mise à jour des API.

  • @muqaddar a dit :

    @Mala a dit :
    AppKit, UIKit, Marziplan (aka Catalyst) et maintenant SwiftUI. Et sinon, il y a un pilote dans l'avion?

    Faire avec le présent et préparer le futur... c'est la base de l'informatique même si parfois on en a plein le c... des histoires de compatibilité et de mise à jour des API.

    C'est un secteur hyper dynamique c'est ça qui est intéressant je trouve. Mais je ne jurerai pas ne pas en avoir plein de le dos dans 20 ans...

  • muqaddarmuqaddar Administrateur

    @Pyroh a dit :

    @muqaddar a dit :

    @Mala a dit :
    AppKit, UIKit, Marziplan (aka Catalyst) et maintenant SwiftUI. Et sinon, il y a un pilote dans l'avion?

    Faire avec le présent et préparer le futur... c'est la base de l'informatique même si parfois on en a plein le c... des histoires de compatibilité et de mise à jour des API.

    C'est un secteur hyper dynamique c'est ça qui est intéressant je trouve. Mais je ne jurerai pas ne pas en avoir plein de le dos dans 20 ans...

    A chaque nouvelle version de Swift, de UIKit, de Rails, des outils serveurs... sont lot d'incompatibilités. C'est pesant à la longue.

  • klogklog Membre

    @muqaddar a dit :

    @Pyroh a dit :

    @muqaddar a dit :

    @Mala a dit :
    AppKit, UIKit, Marziplan (aka Catalyst) et maintenant SwiftUI. Et sinon, il y a un pilote dans l'avion?

    Faire avec le présent et préparer le futur... c'est la base de l'informatique même si parfois on en a plein le c... des histoires de compatibilité et de mise à jour des API.

    C'est un secteur hyper dynamique c'est ça qui est intéressant je trouve. Mais je ne jurerai pas ne pas en avoir plein de le dos dans 20 ans...

    A chaque nouvelle version de Swift, de UIKit, de Rails, des outils serveurs... sont lot d'incompatibilités. C'est pesant à la longue.

    'tain carrément...
    (Tu peux ajouter OpenGL et OpenCL deprecated)

  • MalaMala Membre, Modérateur

    @Pyroh a dit :
    C'est un secteur hyper dynamique c'est ça qui est intéressant je trouve. Mais je ne jurerai pas ne pas en avoir plein de le dos dans 20 ans...

    Le secteur est certes dynamique mais avec Apple c'est juste qu'il n'y a pas de réelle synergie dans les devs et cela ne date pas d'hier. Perso ça fait bientôt 20 ans que je devs et j'en ai juste marre de cette absence de cohésion d'ensemble. Le pire c'est qu'on nous vend des trucs "gorgeous" et que 2 ans après c'est déjà aux oubliettes. OpenCL évoqué par klog en a été un très bon exemple. Deux ans après sa sortie Apple sortait de nouveaux portables qui ne le supportaient même plus (Mac book Air 2011 alors que le 2010 oui)...

    Et que dire de Swift? Passé l'élégance du concept, cela reste un langage de niche peu performant et que seuls des fanboys peuvent défendre. 5 versions en 5 ans! 5 ans de Béta quoi...

  • klogklog Membre
    juin 2019 modifié #20

    @Mala a dit :

    @Pyroh a dit :
    C'est un secteur hyper dynamique c'est ça qui est intéressant je trouve. Mais je ne jurerai pas ne pas en avoir plein de le dos dans 20 ans...

    Le secteur est certes dynamique mais avec Apple c'est juste qu'il n'y a pas de réelle synergie dans les devs et cela ne date pas d'hier. Perso ça fait bientôt 20 ans que je devs et j'en ai juste marre de cette absence de cohésion d'ensemble. Le pire c'est qu'on nous vend des trucs "gorgeous" et que 2 ans après c'est déjà aux oubliettes. OpenCL évoqué par klog en a été un très bon exemple. Deux ans après sa sortie Apple sortait de nouveaux portables qui ne le supportaient même plus (Mac book Air 2011 alors que le 2010 oui)...

    Yep ! A minima une direction de moyen terme serait bienvenue (Moi, Apple, déclare solennellement que dans 5 ans on abandonne Objective-C, qu'on remplace par Swift, qui d'ici là sera capable de connexion avec C et C++... Du coté Cocoa, bein ce sera SwiftUI, donc arrêtez tout de suite AppKit, parce que vous allez vous foutre dedans jusqu'au cou; coté procos, il est possible qu'on bascule un jour sur de l'ARM, aussi, pensez à en tenir compte dans votre code de bas niveau les amis)... Au lieu de ça on doit jouer les devins. J'ai des années de code accumulé et des applications qui font plusieurs centaines de milliers de lignes... J'ai tout simplement besoin d'un horizon un poil dégagé (et d'un peu de repos).

    Et que dire de Swift? Passé l'élégance du concept, cela reste un langage de niche peu performant et que seuls des fanboys peuvent défendre. 5 versions en 5 ans! 5 ans de Béta quoi...

    Holala tu vas te faire des amis Mala ! :D
    Bon sans aller aussi loin, j'aimerai vraiment que ce langage (qui n'est pas assez bas niveau pour pisser du code optimisé) soit un peu plus ouvert...

  • MalaMala Membre, Modérateur

    @klog a dit :
    Holala tu vas te faire des amis Mala ! :D

    J'assume totalement mes propos. o:)

  • @Mala a dit :

    @klog a dit :
    Holala tu vas te faire des amis Mala ! :D

    J'assume totalement mes propos. o:)

    Cible en acquisition. Préchauffage des tubes de lancement. 5, 4, 3, 2 ....

  • PyrohPyroh Membre
    juin 2019 modifié #23

    @Mala a dit :

    Et que dire de Swift? Passé l'élégance du concept, cela reste un langage de niche peu performant et que seuls des fanboys peuvent défendre. 5 versions en 5 ans! 5 ans de Béta quoi...

    >

    On a dit pareil de JavaScript en son temps...
    Pour le côté beta c'était plus ou moins affiché depuis le début. ABI pas stable, obligation de bundler le runtime avec les applications, etc.. Seul un fou pouvait penser le contraire.

    Il n'en reste pas moins un langage très agréable à utiliser et assez moderne.
    Mais comparé à du C ou C++ c'est lent. Comme le C est lent par rapport à du bon vieil assembleur écrit amoureusement à la main. Mais l'emballage ça ralentit tout et ça rigidifie un peu l'ensemble.

    C'est pareil que les mecs qui gueulent en usine parce qu'on expert sécu a mis un carénage sur les machines...

  • MalaMala Membre, Modérateur

    @Pyroh a dit :
    Pour le côté beta c'était plus ou moins affiché depuis le début. ABI pas stable, obligation de bundler le runtime avec les applications, etc.. Seul un fou pouvait penser le contraire.

    Et il faut être fou encore aujourd'hui pour lui voir un réel avenir sauf à regarder le nombril des iBidules.

    @Pyroh a dit :
    Il n'en reste pas moins un langage très agréable à utiliser et assez moderne.

    Oui Pyroh comme je le disais c'est un langage élégant on est bien d'accord. Pour le reste Apple s'est encore une fois enfermée dans ses excès. C'est un langage encore plus fermé et confidentiel que ne l'était l'objective-C et sans aucune roadmap claire comme l'a évoqué klog.

    En ce qui concerne le C/C++/Assembleur le gros avantage c'est qu'ils couchent très bien ensembles (tout comme avec l'objective-C d'ailleurs). Et il faut arrêter de croire que l'assembleur n'est plus utilisé et fait partie du passé. Rien que dans l'embarqué on l’utilise encore très souvent aujourd'hui. Il suffit d'aller faire un tour sur Arduino par exemple. Mieux encore, le C (dont le gap en perte de performances est relativement négligeable) permet même de taper directement dans les registres CPU (timer hardware, gestion d'interruptions matérielles, etc).

    Bref, aujourd'hui plus que jamais Apple s'enferme sur un langage de niche et ne semble tirer aucune leçon. La routine quoi...

  • muqaddarmuqaddar Administrateur

    @Mala a dit :

    @Pyroh a dit :
    Pour le côté beta c'était plus ou moins affiché depuis le début. ABI pas stable, obligation de bundler le runtime avec les applications, etc.. Seul un fou pouvait penser le contraire.

    Et il faut être fou encore aujourd'hui pour lui voir un réel avenir sauf à regarder le nombril des iBidules.

    T'es dur.
    Déjà Swift est OpenSource contrairement à Objective-C, ce qui attire + de monde.
    Ensuite, il s'est trouvé une place côté technos serveur, c'est un gros plus également.
    Swift n'est pas du tout "confidentiel".

  • CéroceCéroce Membre, Modérateur
    juin 2019 modifié #26

    @Mala a dit :
    et sans aucune roadmap claire comme l'a évoqué klog.

    https://github.com/apple/swift-evolution

  • CéroceCéroce Membre, Modérateur

    Pour le reste, je vous laisse vos propos. Vous lire me rappelle 2001, quand les développeurs regrettaient la bonne vieille Toolbox, et tiraient à boulets rouge sur Objective-C, ce langage exotique avec plein de crochets.

  • muqaddarmuqaddar Administrateur

    @Céroce a dit :
    Pour le reste, je vous laisse vos propos. Vous lire me rappelle 2001, quand les développeurs regrettaient la bonne vieille Toolbox, et tiraient à boulets rouge sur Objective-C, ce langage exotique avec plein de crochets.

    Tu parles de la YellowBox ?

  • PyrohPyroh Membre
    juin 2019 modifié #29

    Je vois bien ton point de vue @Mala mais ça ne me choque pas plus que ça.
    Comme l'on dit mes compères au-dessus de ce post Swift ça n'est pas que pour les appareils Apple c'est aussi le serveur, c'est open-source et Google l'utilise pour TensorFlow. Pas mal de gens qui travaillent aussi dans le sens d'une ouverture vers Android.

    Après il ne faut pas se leurrer on va aller de plus en plus vers ce genre de langages poussés par des entreprises et plus ou moins enchaînés. Mais à la limite tu t'en tape quand ça te permet de faire tourner ton business. Mon travail de tous les jours c'est la consultance SAP et j'utilise des merveilles de technologie comme l'ABAP ou le Javascript SAPUI5-flavored. Deux belles saloperies que je ne souhaite à personne d'utiliser mais je m'en tape parce que ça fait bouillir la marmite —et je n'ai pas vraiment le choix que de les utiliser de toute façon.

    Pour Apple c'est pareil, tu veux faire des sous avec des applications qui supportent les dernier raffinement que les utilisateurs attendent ? Tu utilise Swift. C'est tout. Après libre à toi d'utiliser autre chose et de t'amuser sur ton temps libre, c'est aussi fait pour ça. Mais évite peut-être d'être condescendant avec des gens qui au final ne font que leur travail. Je parle ici de ceux que tu appelle les fanboys.

    Objective-C est mourant. Swift peut s'interfacer avec le C sans soucis et tout est en place pour l'interfacer avec encore plus de langages, pourquoi pas le C++ aussi à terme. Au pire si tu as raison il aura la même place qu'a l'Obj-C aujourd'hui et dans 25 ans y'aura des gens pour le pleurer et dire que le Blean c'est trop de la merde et trop destiné aux produits Huawei et qu'au moins à l'époque le JS ça c'était un langage et y'a plus rien pour s'interfacer correctement avec l'HTML9 maintenant !

    Je pense que tu vois où je veux en venir même si tu as raison sur un point ASM, C et C++ te permettent de vraiment maîtriser la puissance de calcul de la machine. Mais il vaut mieux utiliser les outils qui existent pour la réalité augmentée, le machine learning et autres gadgets qui font qu'une app qui en est privée a du mal à trouver des clients et leurs devs à manger.

  • LeChatNoirLeChatNoir Membre, Modérateur

    Mala, c'est un puriste :)
    Après, faut bien avouer que le passage à Swift a fait mal. Apple aurait très bien pu faire évoluer Objective-C...

  • J'avoue avoir ressenti une fatigue de Swift avant la WWDC.
    C'est un langage qui change tout le temps, et ça devient compliqué de suivre si on n'est pas de dans à 100%.
    C'est un langage agréable mais il attire beaucoup les experts et les gardiens du temple.

Connectez-vous ou Inscrivez-vous pour répondre.