• # et Objective-C?

    Posté par  . Évalué à -3.

    Good News Everyone!!

    swift 2.0 OpenSource c'est bien, mais quid d'Objective-C?
    Swift 1.0 et Objective-C peuvent cohabiter dans la même application, et si seulement l'un des 2 est opensource (et donc implémentable sur d'autres systèmes) ça rendra compliqué le portage des applications "hybrides", non?

    Et ce n'est pas GNUStep qui va combler le manque si?

    • [^] # Re: et Objective-C?

      Posté par  . Évalué à 9.

      le compilo objective c de clang a toujours été open source c'est quoi le problem au juste?

      Linuxfr, le portail francais du logiciel libre et du neo nazisme.

      • [^] # Re: et Objective-C?

        Posté par  . Évalué à 0.

        je suis noob, je ne sais pas programmer. mais il me semblait qu'Objective-C n'était pas portable hors des système Apple, que seul GNUStep s'en approchait.

        • [^] # Re: et Objective-C?

          Posté par  . Évalué à 7.

          Je crois qu'il est facile de confondre le langage Objective-C avec les classes/API qui font sa force et qui ne sont disponibles que sur Mac ou iOS.

          • [^] # Re: et Objective-C?

            Posté par  . Évalué à 3.

            oui, c'est ce que j'ai fini par comprendre. toute la série des API CoreImage, Core.etc, SpriteKit……. ne sont dispo que sur OSX iOS,

            • [^] # Re: et Objective-C?

              Posté par  . Évalué à 2. Dernière modification le 09 juin 2015 à 08:58.

              Malheureusement, de nombreux programmeurs de métier tombent dans le même panneau.

              Un langage de programmation, c'est une syntaxe qui permets de donner des ordres à un machine.
              Une bibliothèque (ou library en anglais) c'est un ensemble de raccourcis permettant de donner des phrases à une machine.
              Un cadriciel (arf, j'avoue, je ne parviens pas à mieux traduire ce terme en moins de 3 minutes!!! ok, donc, framework…. mais snif quoi) est un ensemble de bibliothèques permettant de traduire une façon de penser dans un langage qui n'a pas été prévu pour, ainsi que d'y ajouter des fonctionnalités.

              C'est une définition personnelle et improvisée pour te répondre, à toi de juger de l'imbécilité de ma réponse.
              Par exemple, Qt ou WxWidgets sont des cadriciels pour le langage C++ qui permettent une approche «complètement» objet à un langage qui se contente d'être orienté objet.
              Pour ma part, je ne saurait te recommander qu'une chose: ne pense que par toi-même. N'utilise ces cadriciels que quand tu ne sais pas quoi utiliser d'autre, car, de mon opinion très personnelle, ils finiront par te bloquer. Bien sûr, être bloqué peut parfois être une bonne chose…. cela dépends de l'existant, et c'est un sujet de gestion de projet, pas de programmation.

              En l'occurrence, ObjC c'est pas la propriété d'apple (ou p'tet que c'set libre, je sais plus exactement). Par contre, gnustep est libre, mais à une alternative non-libre (ben vi, je connais pas le nom de cette alternative, je sais juste que c'est elle qui est utilisée par l'objC sous apple….'fin, je m'embrouille moi-même la)

              J'espère avoir aidé plus qu'embrouillé….

              • [^] # Re: et Objective-C?

                Posté par  . Évalué à 3.

                mais à une alternative non-libre (ben vi, je connais pas le nom de cette alternative, je sais juste que c'est elle qui est utilisée par l'objC sous apple

                je pense que tu parles de Cocoa :
                https://fr.wikipedia.org/wiki/Cocoa_%28Apple%29

                « Le pouvoir des Tripodes dépendait de la résignation des hommes à l'esclavage. » -- John Christopher

                • [^] # Re: et Objective-C?

                  Posté par  . Évalué à 2.

                  Ouaip. Je peux pas me rappeler tout le temps de tous les frameworks de tous les langages. Merci du rafraîchissement.

              • [^] # Re: et Objective-C?

                Posté par  . Évalué à 3.

                Un langage de programmation, c'est une syntaxe qui permets de donner des ordres à un machine.
                Une bibliothèque (ou library en anglais) c'est un ensemble de raccourcis permettant de donner des phrases à une machine.

                Pas tout à fait. Si un compilateur annonce qu'il se conforme à la norme C11, ça signifie non seulement qu'il va compiler les constructions du langage C (révision de 2011), mais aussi qu'il connaît la bibliothèque standard et fournit une implémentation (qui peut être repompée d'ailleurs, mais ce n'est pas le problème).

                Donc si un compilateur annonce qu'il compile de l'Objective-C, je m'attends à ce que ce qui est considéré comme la bibliothèque standard d'Obj-C soit aussi fournie par le compilateur, sinon l'implémentation est incomplète.

                • [^] # Re: et Objective-C?

                  Posté par  . Évalué à 2.

                  La frontiere est tres floue, et le runtime ne fait techniquement pas partie du langage. Mais comme la seule implementation reellement utilisee est celle d'apple, les gens ont tendance a considerer que libObjc fait partie du language, et certains poussent le bouchon jusqu'a considerer que CoreFoundation/Foundation en font partie, meme si CF est en fait une api c. Libobjc est clairement indispensable, mais ya pas mal de trucs qui sont pas forcement clair, genre ARC, les magouilles de tagged pointers qui interdisent l'acces a isa, le toll free bridging entre CF et foundation, etc.

                  Le compilo d'apple gruge clairement la dessus, et les litterals sont par exemple tres fortement lies a certaines classes de Foundation, idem pour le subscripting.
                  Et pour rajouter au bordel ya pas de root class dans le language, mais tout le monde herite de NSObject quand meme.

                  Bref, c'est un gros bordel.
                  Swift s'en sort un peu mieux, mais avec le bagage de compatibilite objc, c'est un peu le merdier quand meme.

                  Linuxfr, le portail francais du logiciel libre et du neo nazisme.

                  • [^] # Re: et Objective-C?

                    Posté par  . Évalué à 3.

                    D'accord, mais même pour les langages qui sont standardisés mais pas forcément normés (genre Java), le créateur (Sun/Oracle) définit une spec quelque part, y compris ce qui compte comme la bibliothèque standard. Qu'Apple s'arrange pour que ses compilos aient une compatibilité facilitée pour passer de Objective-C à Swift c'est très bien. Que MS s'arrange pour que les WinForms marchent bien avec .Net c'est très bien. Tant que la bibliothèque standard officielle est officiellement implémentable sans passer par une plate-forme spécifique, moi ça me va.

                    • [^] # Re: et Objective-C?

                      Posté par  . Évalué à 3. Dernière modification le 12 juin 2015 à 18:01.

                      La librairie standard Objective-C est standardisée : c’est OpenStep (dont une implémentation libre est GNUstep, et il me semble que Apple a libéré des bouts de son implémentation).

                      Cocoa c’est grosso-modo OpenStep + une tétrachiée d’API propriétaires.

  • # Plus d'infos

    Posté par  . Évalué à 2.

  • # Timing

    Posté par  (site web personnel) . Évalué à 5.

    Est-ce qu'il aura la même destinée que HyperCard, que OpenDoc, etc ?

    Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

    • [^] # Re: Timing

      Posté par  . Évalué à 1.

      HyperCard continue d'exister mais sans Apple : "Aujourd'hui, le logiciel Livecode édité par la société RunRev incorpore tout le langage HyperTalk, et le modernise (adaptation à OS X et aux versions récentes de Microsoft Windows, serveur Web, etc.)2."

      • [^] # Re: Timing

        Posté par  (site web personnel) . Évalué à 2.

        Oui, j'ai un collègue qui l'avait acheté et monté des manips avec (en 2013 LiveCode a même été libéré) - perso j'étais passé un temps à SuperCard (commercial, payant, mais plus avancé en terme de fonctionnalités). Mais globalement la façon de procéder d'Apple a coulé cet outil qui était sur Mac un pendant du basic de l'AppleII: le truc installé en standard qui permettait à des débutants de se mettre à la programmation.

        Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

        • [^] # Re: Timing

          Posté par  (site web personnel) . Évalué à 4.

          oui, HyperCard c'est Bill Atkinson un mec aussi génial que Wozniak, enterré par Steve Jobs (bon, c'est lui qui a finalement rejoint la tombe en premier, il avait pourtant d'autres atouts :/).

          Il y a de bons concepts, cela se retrouve dans d'autres produits, mais pas pareil. Heureusement que Tim Berners Lee ne bossait pas pour Apple :-)

  • # Moinssage

    Posté par  . Évalué à 7.

    Je ne comprends pas pourquoi ce journal en forme de scoop est moinssé alors qu'au final c'est une excellent nouvelle pour le libre.

    Voici un article un peu plus fouillé sur cette annonce:
    http://www.infoq.com/news/2015/06/swift-opensourced

    Au programme donc:
    * une implémentation avec une licence OSI compliant
    * une ABI
    * L'inscrire au Developper Account est maintenant gratuite
    et des nouveauté techniques par rapport à la v1

    Je me réjouis qu'Apple n'ait pas reproduit la même erreur que Rebol

    • [^] # Re: Moinssage

      Posté par  . Évalué à 6.

      Je ne comprends pas pourquoi ce journal en forme de scoop est moinssé

      ce n'est pas un journal, c'est un tweet

      au final c'est une excellent nouvelle pour le libre.

      c'est surtout une bonne nouvelle pour apple qui va se faire mousser avec ça. Swift restera cantonné à mac os x à mon avis. Sans framework autour (cocoa pour apple), ça ne servira pas à grand chose, si seul le compilateur est porté sous Linux. Et si du développement se fait par dessus, ça servira surtout à Apple.

      « Le pouvoir des Tripodes dépendait de la résignation des hommes à l'esclavage. » -- John Christopher

      • [^] # Re: Moinssage

        Posté par  (site web personnel) . Évalué à 3.

        Ben quoi pas besoin de cocoa, il suffira de faire un binding GTK pour profiter de ce sympathique langage sous Linux. Franchement swift c'est plutot pas mal comme langage.

        • [^] # Re: Moinssage

          Posté par  . Évalué à 5.

          Si on veut un langage sympathique pour faire de la GUI GTK, y'a aussi Vala.

          "Quand certains râlent contre systemd, d'autres s'attaquent aux vrais problèmes." (merci Sinma !)

        • [^] # Re: Moinssage

          Posté par  . Évalué à 2.

          Il a quoi comme avantage particulier ?

          • [^] # Re: Moinssage

            Posté par  (site web personnel) . Évalué à 8.

            Il y a une pomme sur la boite.

            Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

            • [^] # Re: Moinssage

              Posté par  . Évalué à 2.

              Et moi qui pensait que c'était un oiseau …

      • [^] # Re: Moinssage

        Posté par  (site web personnel) . Évalué à 7.

        Peu importe s'ils se font mousser avec, tant qu'ils jouent les règles du jeu du libre, c'est dans l'intérêt de tous !

        Les autres se font mousser avec de l'open source et c'est bien, mais pas Apple ???

        Sun s'est bien fait mousser avec Open Office, mais en attendant ils ont tout revendu a Oracle et on a vu l'étendue catastrophique du code !!

        • [^] # Re: Moinssage

          Posté par  (site web personnel) . Évalué à 4.

          on a vu l'étendue catastrophique du code !

          surtout les commentaires en allemand… (déjà visibles auparavant, c'était du libre complet contrairement à StarOffice…)
          et surtout un process fermé (jira interne) que LibreOffice a permis d'exploser (go-ooo devenant la référence de la communauté tant sur Linux qui l'avait largement adopté bien avant, que sur windows, dont certains utilisateurs me parlent encore de OOo en 2015… ceux épris du syndrôme de Stockholm prenant leur temps à se libérer, il faut croire…).

          Concernant Sun, je suis assez content qu'ils soient morts, au vu de leurs pratiques schizoprhénes concernant le libre. La reprise par Oracle n'a pas empêché que LibreOffice émerge et c'est cela qu'il faut retenir comme réussite àmha (il y en a d'autres concernant java8 àmha aussite, mais c'est un autre sujet).

    • [^] # Re: Moinssage

      Posté par  (site web personnel) . Évalué à 5.

      Je suis plutôt d'accord, c'est rigolo le Apple Bashing mais quand y'a une bonne nouvelle, il faut le remarquer !

      Il n'y a rien de négatif de vouloir libérer Swift avec un support Linux natif !

      On râle pour de l'open source et quand on l'a on critique !!

    • [^] # Re: Moinssage

      Posté par  (site web personnel) . Évalué à 2.

      Le Developper Account a toujours été gratuit à ma connaissance ; c'est la publication des applications qui était payante.

      • [^] # Re: Moinssage

        Posté par  (site web personnel) . Évalué à 4.

        Oui et Non, l'Apple ID pour voir les API était gratuit mais il fallait payer pour le convertir en Developer Account et avoir des clefs pour signer les appli et les envoyer sur le téléphone.

        Maintenant c'est payant que pour publier.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.