Bonjour

Bonjour,

Je suis un programmeur amateur peu doué mais motivé (du code crade mais qui fait ce que je veux) :D

Pas beaucoup d'expérience en dev, quelques applications personnel en java sur android, beaucoup de bash script sous linux (pas vraiment le choix) et depuis peu Objective-C sur Mac.

J'utilise MPD (musicpd.org) depuis pas mal de temps mais mon client favoris ne sera plus développé pour les Mac (Cantata) donc je me suis mis en tête de faire le mien et je me suis lancé.

Voila voila. :)

Réponses

  • klogklog Membre

    Bonjour Harlo... Ha bein j'ai répondu à ta question sur NSCollectionView avant de te dire bonjour...

  • @Harlo a dit :
    Bonjour,

    Je suis un programmeur amateur peu doué mais motivé (du code crade mais qui fait ce que je veux) :D

    Bienvenu ..

    et depuis peu Objective-C sur Mac.

    Euh .. oublie ça très vite, surtout si tu débute. Swift est beaucoup plus facile à apprendre pour un novice.

  • HarloHarlo Membre
    14 févr. modifié #4

    Non merci, j'ai tenté ma chance ici (et j'ai eu raison) parce que ça vire au harcèlement avec Swift...
    Tu ne peux plus poser une question sans qu'on te sorte swift, tu as beau préciser que c'est en objective on te file quand même une réponse en swift uniquement.

    J'ai la tête dure, plus on me harcèle et plus je me braque (à ne pas prendre de façon personnel)

    On m'a tellement soulé avec Swift qu'une chose est certaine, JAMAIS !

    Et en quoi c'est mal de s'attaquer à ce qu'il y a de plus compliqué dès le début ?
    On commet 10x fois plus d'erreur ce qui fait qu'on apprend 10x plus vite ?

  • Et en quoi c'est mal de s'attaquer à ce qu'il y a de plus compliqué dès le début ?

    Ta formulation laisse à penser que l'Objective-C est le Best of Best de la programmation pour les pros et Swift un produit allégé moins puissant pour les noobs. Rien n'est plus faux.

    On commet 10x fois plus d'erreur ce qui fait qu'on apprend 10x plus vite ?

    Avec l'Objective-C, la syntaxe est 10x plus compliqué. On commet 10x plus d'erreurs et on apprend 10x moins vite.

    Mais bon, si ce langage "parle" à tes oreilles, tant mieux pour toi. Le plus important est d'être à l'aise avec son outil de développement. Il reste sur ce forum assez de pratiquants à l'ancienne pour répondre à tes attentes.

  • @Harlo a dit :
    On m'a tellement soulé avec Swift qu'une chose est certaine, JAMAIS !

    C'est un vrai argument ça ! :D

    @Harlo a dit :
    Et en quoi c'est mal de s'attaquer à ce qu'il y a de plus compliqué dès le début ?
    On commet 10x fois plus d'erreur ce qui fait qu'on apprend 10x plus vite ?

    Hummm... Peut être qu'Apple voit l'avenir dans ce langage ? ;)
    Mais tu es libre de faire ce que tu veux, @Draken t'a juste donné un conseil (qui est loin d'être absurde). Si tu aimes Objective-C, bah... go !

  • HarloHarlo Membre

    Ben, objective-c n'est pas rebutant et quand j'ai pris des sources de logiciel existant pour apprendre y'a eu comme un très GROS problème.

    Je prend un source objective C qui a 10 ans, je le compile et ça fonctionne. Dans le pire des cas 2 - 3 bricoles dépréciées à modifier.

    Je prend un source Swift qui a 3 and, il faut que je télécharge Xcode version x pour le passer en Swift 2, télécharger un Xcode version y pour le passer en version 3 et ensuite le dernier pour le convertir à la version d'Xcode actuel.
    Et la conversion est très mauvaise, ça se passe toujours mal.
    Si je suis obligé de quasiment tout réécrire à chaque nouvelle version de swift, je ne vois vraiment pas l'intérêt.

    Pour faire une analogie je vois une application objective comme un meuble d'ébéniste et une application Swift comme un meuble ikéa, l'un est fait pour durer et l'autre ne doit surtout pas durer, les finitions doivent être bâclé pour être axé sur le rendement uniquement.

    Je m'arrête là, j'en aurais pour plusieurs page à écrire pourquoi objective et pas swift.

  • A priori la version 5 de Swift est plus mature...
    Du coup, je vais peut-être y passer mais sans grand enthousiasme, les ! et autres ? m'énervent un peu.
    Mais c'est vrai que certaines syntaxes de l'Objective C sont lourdes.

  • DrakenDraken Membre
    14 févr. modifié #9

    La syntaxe de Swift est stable depuis la version 4. La version 5 compilera le code 4 sans sourciller. Tu sais, Eric, les ! m'énervent aussi beaucoup, peut-être pas pour les mêmes raisons que toi..

    Ceci dit, je suis en pleine étude du Kotlin en ce moment. C'est pas mal, assez proche de Swift. Il y a même des ! et des ?.

  • klogklog Membre

    Bein moi, tant que Swift n'est pas directement compatible avec C/C++, je resterai à l'écart... Du coup Harlo, je suis content qu'un ardent défenseur d'Objective-C rejoigne le forum :wink:

  • ;)

    Swift c'est pas pensé pour faire de bonnes applications de tout façon, c'est fait pour qu'il y en ai beaucoup plus sur le store d'apple (faut pas oublier les 30% de commission, apple c'est son propre avenir qu'il voit).

    Perso j'aime pas kotlin non plus, je le vois du même oeil que swift :p et ce que j'aime bien avec objective-C c'est qu'il y a tout plein de choses qui fonctionnent de la même façon qu'en java. T'es pas trop dépaysé.
    Les objets sont bien plus rapide à créer en objective aussi, j'avoue que c'est assez agréable et rend moins feignant :) et je le trouve beaucoup plus flexible
    La seule chose un poil perturbante ce sont les [ ] mais on s'y fait très vite.

  • tabliertablier Membre
    15 févr. modifié #12

    Ben, SWIFT j'ai essayé de m'y mettre et je n'accroche absolument pas ! je n'arrive pas à comprendre pourquoi ! Alors je continue avec Obj-C que je pratique depuis sont apparition chez Apple ! Et puis SWIFT est parait-il plus court à écrire ce qui fait gagner du temps au pisseur de code. je suis à la retraite depuis 15 ans, alors le temps, hein ! Ceci dit, SWIFT parait combler certains manques de l'Obj-C et avoir quelques nouveautés intéressantes.
    Petit conseil, Harlo, IL NE FAUT JAMAIS DIRE JAMAIS !!!

  • @Harlo a dit :
    ;)

    Swift c'est pas pensé pour faire de bonnes applications de tout façon,

    J'attends avec impatience que tu développe ton propos.

  • Bien le bonjour et bienvenue Harlo.

    La vie d'un développeur est constellé d'apprentissage de nouveau langage.

    Il faut reconnaître à Swift (maintenant mature) qu'il offre de nombreux avantages par rapport à l'Objective C. Plus sûr, plus rapide, plus concis, plus fonctionnel... (certains points peuvent être pondérés évidemment). Il permet de plus de s'attaquer au C# et à Kotlin sans être trop dépaysé.
    Cependant j'adore aussi l'Objective C mais surtout le C qui fait parti de mes premières amours.

  • tabliertablier Membre
    15 févr. modifié #15

    @Draken a dit :
    La syntaxe de Swift est stable depuis la version 4. La version 5 compilera le code 4 sans sourciller. Tu sais, Eric, les ! m'énervent aussi beaucoup, peut-être pas pour les mêmes raisons que toi..

    Les syntaxes on les apprends et après ce n'est plus un problème. J'en ai tellement apprise depuis 1966, qu'une de plus ou de moins, Boaf !! Quand à dire que c'est stable !! Je dirais que ça parait stable pour les 3 à 4 ans qui viennent, car comme pour l'Obj-C il y aura toujours des évolutions amenées par l'expérience.

  • @tablier a dit :
    Les syntaxes on les apprends et après ce n'est plus un problème. J'en ai tellement apprise depuis 1966, qu'une de plus ou de moins, Boaf !! Quand à dire que c'est stable !! Je dirais que ça parait stable pour les 3 à 4 ans qui viennent, car comme pour l'Obj-C il y aura toujours des évolutions amenées par l'expérience.

    Stable, ça veux dire que les futurs versions de Swift compileront le code écrit actuellement, sans protester. Et c'est tant mieux, les changements de syntaxe entre les versions 1, 2 et 3 étaient pour le moins exaspérants.

  • Joanna CarterJoanna Carter Membre, Modérateur

    @Harlo a dit :
    Swift c'est pas pensé pour faire de bonnes applications de tout façon, c'est fait pour qu'il y en ai beaucoup plus sur le store d'apple (faut pas oublier les 30% de commission, apple c'est son propre avenir qu'il voit).

    Quoi ??? :D

    Swift n'a rien à voir avec l'App Store. Les applis, écrites en Objective-C, C++ et Swift sont toutes acceptables. Pour les applis macOS, on peut même les distribuer sans le store.

    Je suis consultante en programmation pour plus de 28 and et j'écris les applis pour iOS et macOS pendant plus de 8 ans. Mes dernières applis sont écrites en Swift et je les ai sorti plus rapidement que les précédentes en Objective-C. Pourquoi? Parce que le langage est plus facilement lisible et contient plus de fonctionnalités.

    En tant que tu es amateur, tu n'as pas de pression sur le temps ou de soucis de qualité mais pour eux qui sont pros, le choix est évident.

  • klogklog Membre

    @Joanna Carter a dit :
    En tant que tu es amateur, tu n'as pas de pression sur le temps ou de soucis de qualité mais pour eux qui sont pros, le choix est évident.

    Désolé d'être lourd, mais les pros ont besoin d'un langage compatible avec C et C++... Ca me parait le B-A-BA lorsqu'on souhaite par exemple utiliser des APIs externes. Donc non Joanna, le choix est très très loin d'être évident pour un pro :wink:

  • LarmeLarme Membre
    15 févr. modifié #20

    Bienvenu !

    Ne t'inquiètes pas, je suis aussi très attaché à mon Objective-C, même si j'fais du Swift au boulot maintenant depuis un peu moins d'un an.

    Le truc vraiment cool avec le Swift, c'est de pouvoir écrire des scripts (qu'on peut par exemple intégrer aux Build Phases), car il faut avouer que c'est bien plus simple pour parser du JSON ou faire plein d'autre choses que en Bash. Et cela évite d'avoir à apprendre un autre language (Ruby, Perl, Python, etc.) pour ça.

    Juste un conseil cependant, apprends juste à lire du Swift. Ne t'inquiètes pas, je conseille l'inverse à ceux qui ne jurent que par le Swift en leur disant d'apprendre à lire de l'Objective-C. Pourquoi ? Tout simplement car la réponse à ta question sera peut-être disponible que dans l'autre language. Et donc adapter la réponse à ton language (car on utilise quand même Cocoa(Touch) derrière).

  • klogklog Membre
    15 févr. modifié #21

    Je n'y vois pas mention du C++... Trop limité...

  • Joanna CarterJoanna Carter Membre, Modérateur

    C'est bien possible d'accéder un framework C++ de Swift mais, comme avec les autres langues, il faut construire un "wrapper" en C

    http://www.swiftprogrammer.info/swift_call_cpp.html

  • HarloHarlo Membre
    15 févr. modifié #23

    Obejctive-C vaincra \o/ \o/ \o/ :p o:)

  • Joanna CarterJoanna Carter Membre, Modérateur

    @Harlo a dit :
    Obejctive-C vaincra \o/ \o/ \o/ :p o:)

    Bah tu es comme les Brexiteers - tu t'abuses :D

  • klogklog Membre
    15 févr. modifié #25

    @Joanna Carter a dit :
    C'est bien possible d'accéder un framework C++ de Swift mais, comme avec les autres langues, il faut construire un "wrapper" en C

    http://www.swiftprogrammer.info/swift_call_cpp.html

    Ouai je sais tout ça... Mais quand tu as par exemple une API C++ de plus de 400 objets, basée sur une norme officielle, il n'est pas question d'écrire une passerelle, à moins de vouloir y consacrer 90% de son temps de dev.

    Par ailleurs, avec C++ j'ai la garantie d'être au plus proche du métal quand j'en ai besoin, d'avoir un contrôle total sur le degré d'optimisation que je veux consacrer à mon code... Ce qui n'est pas encore le cas de Swift, même s'il y a, je le concède, du mieux par rapport à Objective-C. Je bascule allègrement entre Objective-C++ et C++ en fonction de mes besoins. Et au moins, j'ai la certitude qu'il me sera plus facile de réutiliser la partie en C++ si macOS venait à se casser la gueule, et qu'il me faille aller voir ailleurs si l'herbe est plus verte.

    Je vous rappelle aussi qu'Apple elle-même fait usage du C++ dans ses APIs les plus modernes et récentes. Le shading language de Metal est construit sur C++ pas sur Swift.

  • muqaddarmuqaddar Administrateur

    Les goûts et les couleurs...

    J'adore la nouveauté mais parfois j'en ai marre d'apprendre. On fait vraiment un métier où on passe son temps à apprendre... et à se confronter à des nouveaux problèmes à cause des nouveautés.

    Apprendre, c'est génial, mais parfois on a juste envie de gagner du temps et de mettre en production.

    L'idéal c'est d'être payé pour apprendre, sans pression et sans délais, mais ça n'existe pas.

    Bref, tout ça est compliqué.

  • @Eric P. a dit :
    A priori la version 5 de Swift est plus mature...

    C'est vrai ! plus mature que le 4, la 3, ....etc. Mais probablement moins mature que la 6, la 7 ....etc. Et personne aujourd'hui ne peux dire que la syntaxe n'évoluera pas ! Voir l'exemple de l'Obj-C et de ses syntaxes qui ont évoluées presque continument. Essayer de modifier votre code de 2005 et de le compiler, vous allez rigoler !!!!

  • 2005 je ne sais pas mais 2008 j'ai fait et ça passe comme une lettre à la poste.

    Avec swift, à peine 3 ans et ça ne passe plus du tout.

  • //
    // AppDelegate.h
    // MPD Client
    //
    // Created by Harlo on 01/02/2019.
    // Copyright © 2019 Harlo Inc. All rights reserved.
    //

    Ben voila, 15 jours en partant de 0 pour avoir une application fonctionnel, c'est pas si terrible Objective-C :)

    Par contre c'est assez tordu Xcode, y'a des truc que j'ai pas bien compris comme le "Bind to" qui complique tout...
    Pourquoi faire en 1 ligne ce que tu peux faire en 5 click et 30 lignes dans plusieurs fichiers différent :|

    Faire ses applis c'est comme faire la cuisine, c'est quand même meilleurs que tu le fais toi même :D

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