IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apple Discussion :

Quel langage choisir pour Mac ? Java , C#/Mono, Ruby, Pascal ? Python ? [Débat]


Sujet :

Apple

  1. #41
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    par experience, penser optimiser son code pour chaque machine est un doux reve. il vaut vraiment mieux conserver un seul unique source code et implement par ci par la des ajouts de fonctionalités propres a la machine.
    Chaque effort sera reversé a l'ensemble des plateformes, et l'ensemble progressera plutot que d'avoir tendance a diverger.

    J'ai eu l'experience justement du produit similaire sur mac et pc, a la fin les possibilités d'evolutions n'etaient pas du tout les memes, le produit pc a subsisté mais le produit mac s'est eteint. du coup plus de version mac, c'est dommage. Pourquoi ne pas vouloir unifier les efforts de developpement ? c'est tellement plus coherent.

    l'avenir est aux produits multi-plateforme, VLC et firefox en sont les meilleurs exemples.

  2. #42
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    308
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 308
    Points : 373
    Points
    373
    Par défaut
    Je ne pense pas que FireFox et VLC soient des exemples très représentatifs, d'un côté il s'ait d'un lecteur de vidéo et de l'autre d'un navigateur internet, il y a beaucoup d'autres types de logiciels.

    Ensuite, si on pousse un peu plus loin ton raisonnement, le fait que l'avenir soit au multiplateforme... Si tous les logiciels sont multiplateformes, et qu'ils font tous la même chose, quel est alors l'intérêt d'avoir des plateformes différentes ?

    Je ne vois pas l'intérêt de faire une application multiplateforme si c'est pour ignorer les capacités de chaque machine, de laisser tomber les outils d'optimisation qui permettent de montrer l'existence même de la plateforme...

    PS : il est d'ailleurs amusant que tu parles de FireFox comme exemple d'applications multiplateformes alors qu'apparemment FireFox 3 pour Mac sera une version Cocoa...

  3. #43
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    je choisis Macosx parce qu'il me permet de faire du developement avec les memes outils que linux, parce qu'il a une gestion de l'os et des logiciels plus innovante que les autres systemes, il permet d'allier la puissance d'un unix avec une interface super jolie avec des effets super cools.

    Pour moi 90% des logiciels ne requiert pas de maitriser toutes les apis systemes a 100%. Par exemple un soft 3d, il faut opengl et beaucoup d'algorithme ... mais quoi vraiment de particulier ?
    autre exemple: une appli de gestion database... bon bah la carrement rien non plus... limite on peut le faire en Java (c'est bon je rigole)

    apres pour tout ce qui est vraiment specifique (mais perso j'ai du mal a voir vraiment ce qui peut etre tres tres specifique a une machine) alors il faut se tourner vers le language preconisé par l'implementeur du systeme...

    mais imagine pour un meme logiciel, le faire en .NET sur windows, en objective C pour mac et en C++ pour linux, et un petit java pour essayer par un stagiaire...

    tu trouves pas que le cout va etre dementiel ? sans compter l'architecture du soft qui va etre differente ... et les possibilités d'evolutions ? (mais aussi les perfs)

    par exemple un soft de compta va exporter avec excel sur windows et sur Numbers sur Mac, ne peut-on pas imaginer que juste les modules d'export soient specifiques ? puis un module PDF qui restera commun ?

  4. #44
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    le probleme est que Objective-C n'est vraiment finalement que pour Mac.
    En tant que developper d'application, je pense que l'avenir est au multi-plateforme (regardez les meilleures applis: VLC, FIREFOX, PHOTOSHOP, DREAMWEAVER, FLASH ...). J'adore le mac, mais les applications doivent etre multi-plateformes. Le choix est plutot entre Java et C++ (avec Qt ou autres)

    perso j'ai choisi, je prefere le natif et Qt est vraiment innovatif et les developpeurs paraissent vraiment tous cool (voir leurs blogs).
    La vrai portabilité à 100% n'existe pas. C'est aussi un doux rêve. Nous avons des problèmes par rapport auX comportementS du double-clic d'une application Java en fonction qu'elle était sous Linux, Windows ou Mac...
    Et c'est pourtant des fonctionnalités de base.

    Donc tout dépend, de l'application, de la cible et des contraintes environnantes. La personne qui a créé ce sujet parlait de développer principalement des applications POUR MacOSX. Dans ce cas le langage de choix est Objectif-C.

  5. #45
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    [...]
    tu trouves pas que le cout va etre dementiel ? sans compter l'architecture du soft qui va etre differente ... et les possibilités d'evolutions ? (mais aussi les perfs)

    par exemple un soft de compta va exporter avec excel sur windows et sur Numbers sur Mac, ne peut-on pas imaginer que juste les modules d'export soient specifiques ? puis un module PDF qui restera commun ?
    Pourtant parfois c'est nécessaire et c'est le cas.
    De plus si la conception est bien faîte, l'architecture sera très semblable et réutilisable. Ça c'est déjà vu.

    Mais cependant, tu as raison sur le fait que si tu vises à faire un logiciel sous toute plateforme, il est impératif de considérer le facteur coût de maintenance. Et là, un langage commun est bien plus pertinente. Donc du C avec du QT, ou du Java, ou du ocaml avec wxwidget, est probablement une meilleure solution que de l'Objectif-C sur Mac, et du C++ sous Windows et Linux.

  6. #46
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 17
    Points : 21
    Points
    21
    Par défaut Un livre pour adopter Cocoa/objective-C
    Cocoa/objective-C impose des contraintes entre les différentes versions de mac OS.
    Java est plus dans l'air du temps.
    ...

    Un livre de référence sur COCOA/OBJECTIVE-C, traduit de son édition américaine, avec un forum, en anglais, très actif pour la résolution des travaux de réalisation:
    "Cocoa par la pratique" par Aaron HILLEGASS aux éditions Eyrolles.
    http://www.editions-eyrolles.com/Liv...ar-la-pratique

  7. #47
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    308
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 308
    Points : 373
    Points
    373
    Par défaut
    Citation Envoyé par code barre invalide! Voir le message
    Cocoa/objectifC impose des contraintes entre les différentes version de mac OS.
    Java est plus dans l'air du temps.
    Si c'est pour faire du développement essentiellement Mac je déconseille le Java, si c'est pour utiliser Java avec Cocoa là je recommande d'abandonner direct.
    Ensuite, j'aimerais bien savoir quelles contraintes ça impose... À part quelques méthodes et classes qui sont ajoutées dans les versions plus récentes de Mac OS X... L'essentiel fonctionne de la même manière qu'avec les différentes versions de Java...

  8. #48
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 17
    Points : 21
    Points
    21
    Par défaut contraintes existentielles
    C'est toi qui le dis.

    Mon message porte sur un livre, l'as-tu lu?

  9. #49
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    308
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 308
    Points : 373
    Points
    373
    Par défaut
    Citation Envoyé par code barre invalide! Voir le message
    C'est toi qui le dis.

    Mon message porte sur un livre, l'as-tu lu?
    Oui

  10. #50
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par code barre invalide! Voir le message
    Java est plus dans l'air du temps.
    Plus dans l'air du temps ne veut pas dire bon.
    En fait, Java est plus connu, mais objective-C est bien plus « propre » pour un langage orienté-objet.

    Comme PsychoH13, je me demande de quelles contraintes tu parles qui ne pourraient pas exister en Java ? Java est très fatiguant pour sa gestion propre du CTRL. Il y a surement des moyens d'arranger ça, mais toujours est-il que ça nous a bien fait suer lors d'un projet multiplateforme en Java (pas de cocoa donc).

    Java c'est comme le C++ : il faut le connaître (parce que c'est dans l'air du temps comme tu dis) mais si je pouvais l'abandonner je n'en serais pas dérangé pour le moins du monde ^_^

  11. #51
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 17
    Points : 21
    Points
    21
    Par défaut contraintes existentielles
    Salut,
    Je suppose qu'en Amérique du nord l'utilisation de cocoa/Objective-C est plus répandue qu'en France où le nombre de sociétés s'en servant est vraiment faible.Quelqu'un en connait-il une (exceptée spécialisée/développeuse mac)?
    Objective-C est le c++ reservé du mac, continuera-t-il d'exister si Apple l'abandonne?

    Les contraintes dépendent de l'environnement; java est plus pertinent, destiné à des usages multiples (API,MVC=>Struts). La programmation Obj-C est liée à un seul outil(project builder/xtools) par version du système: c'est peu.

    Par ailleurs je trouve ce langage, cocoa/objective-C, intéressant et agréable.

    D'autre part, pourquoi bannir cocoa/java? Bien sûr il est bogué et incomplet mais il n'est pas mal qu'en même.

  12. #52
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    308
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 308
    Points : 373
    Points
    373
    Par défaut
    Pourquoi bannir Cocoa/Java ? Et bien parce que toutes les nouveautés à partir de Tiger ne sont plus portées en Java, ce qui signifie que ce langage est abandonné par Apple pour Cocoa et qui risque donc à terme de ne plus être utilisable du tout.
    De plus, il s'agit d'un bridge c'est-à-dire que le code Java (déjà pas super efficace) appelle du code Objective-C par dessous ce qui rend l'application plus lente.
    La seule raison pour laquelle Java a été proposé par Apple était d'attirée les développeurs Java vers Cocoa, pour ensuite les faire passer tranquillement vers Objective-C en arrêtant le support du bridge...

    Sinon, je doute fortement qu'Objective-C soit abandonné de si tôt par Apple, l'un des indices qui me le font affirmer c'est pour commencer le fait qu'Apple a sorti une nouvelle version d'Objective-C, ensuite tous les frameworks d'Apple (notamment les cores) sont écrits soit en Objective-C, soit en C pour une incorporation transparante dans du Cocoa/Objective-C.

  13. #53
    Membre à l'essai
    Inscrit en
    Octobre 2007
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 17
    Points : 21
    Points
    21
    Par défaut Objective-C au piquet pour aspect promo flagrant
    Donc, je me demande qu'elle va être l'utilité de cocoa/python et de cocoa/ruby dans Léopard; si c'est uniquement de la promo et qu'ils sont abandonnés dans deux ans autant s'en passer immédiatement.

    Au fait, un pont par dessous est un tunnel. (rires)

    @+

  14. #54
    Inactif  
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    1 958
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 1 958
    Points : 2 467
    Points
    2 467
    Par défaut
    Citation Envoyé par code barre invalide! Voir le message
    [...]
    Objective-C est le c++ reservé du mac, continuera-t-il d'exister si Apple l'abandonne?
    C'est une très bonne question. Étonnant donné que Objective-C vient de NeXTStep en fait, et qu'Apple l'a acquis parce qu'ils en appréciaient le design (en plus de l'argument économique de dire qu'il fallait un langage pour MacOSX), je te dirais : oui, qqun le reprendra. Mais bon, il est possible que même avec ces qualités, ils tombent dans l'oubli le plus total comme l'ont été de très bon langage avant lui, dont SmallTalk, son père spirituel. D'ailleurs GNUstep l'a en langage système de base.

    Les contraintes dépendent de l'environnement;[...]
    En fait tu donnes là LA réponse.
    On choisit le langage en fonction du problème.
    Si qqun se destine à ne développer que pour MacOSX, autant profiter des avantages de Cocoa/Objective-C. Si c'est pour le porter, il vaut mieux passer par Java pour simplifier le remaniement par la suite.

  15. #55
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    308
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 308
    Points : 373
    Points
    373
    Par défaut
    Citation Envoyé par code barre invalide! Voir le message
    Donc, je me demande qu'elle va être l'utilité de cocoa/python et de cocoa/ruby dans Léopard; si c'est uniquement de la promo et qu'ils sont abandonnés dans deux ans autant s'en passer immédiatement.
    Ce n'est que marketing ! Python et ruby sont des langages à la mode, Apple prodigue donc des bridges pour ces langages pour attirer vers Cocoa les développeurs de tout bord. Le premier objectif est d'attirer les fans de Ruby et Python vers le framework d'Apple, ensuite le deuxième objectif est d'attirer ces nouveaux développeurs Cocoa vers le langage préféré de la plateforme... Tout ça n'est que marketing. Et si Apple le fait c'est tout simplement parce que beaucoup de développeurs sont retissants à changer de langage.
    Donc Apple se sert de ces langages pour adoucir la transition, mais il n'en reste pas moins qu'Apple préférerait qu'un développeur programme directement en Objective-C/Cocoa plutôt qu'en Python/Cocoa ou Ruby/Cocoa...

  16. #56
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    308
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 308
    Points : 373
    Points
    373
    Par défaut
    Citation Envoyé par Garulfo Voir le message
    C'est une très bonne question. Étonnant donné que Objective-C vient de NeXTStep en fait, et qu'Apple l'a acquis parce qu'ils en appréciaient le design (en plus de l'argument économique de dire qu'il fallait un langage pour MacOSX), je te dirais : oui, qqun le reprendra. Mais bon, il est possible que même avec ces qualités, ils tombent dans l'oubli le plus total comme l'ont été de très bon langage avant lui, dont SmallTalk, son père spirituel. D'ailleurs GNUstep l'a en langage système de base.
    Je pense surtout que c'est Steve Jobs en revenant à Apple qui a ramené toutes les technologies que son entreprise avait faite : NeXTSTEP qui a fusionné avec Mac OS Classic pour devenir Mac OS X, OpenStep qui est devenu Cocoa et bien-sûr Objective-C qui allait de pair avec OpenStep et surtout dont la license était détenue par NeXT.

    Les choix de design et économiques ont été plutôt fait par NeXT et Apple a simplement repris l'œuvre.

    En ce qui concerne GNUStep, sachez simplement que ce projet est en train d'être poursuivit au travers du projet Étoilé (en anglais dans le texte) qui se base donc sur GNUStep mais en plus moderne, ar malheureusement ce pauvre GNUStep commence à se faire vieillot surtout au niveau de l'apparence.

  17. #57
    Membre expérimenté
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 354
    Détails du profil
    Informations personnelles :
    Âge : 49
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 354
    Points : 1 419
    Points
    1 419
    Par défaut
    C++/Qt et hop vous etes compatibles avec toutes les plateformes et vous pouvez encore ecrire du code specifique ä la plateforme.

  18. #58
    Membre averti

    Inscrit en
    Février 2003
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 154
    Points : 310
    Points
    310
    Par défaut
    Citation Envoyé par epsilon68 Voir le message
    C++/Qt et hop vous etes compatibles avec toutes les plateformes
    4000€ pour un licence potable (support de deux systèmes d'exploitation, bdd, xml, etc) ça donne tout de même matière à réfléchir.

    Citation Envoyé par epsilon68 Voir le message
    et vous pouvez encore ecrire du code specifique ä la plateforme.
    Quid de la compatibilité Objective-C++? De plus en plus de frameworks d'OSX sont en Obj-C.

  19. #59
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    308
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 308
    Points : 373
    Points
    373
    Par défaut
    Citation Envoyé par Mala Voir le message
    Quid de la compatibilité Objective-C++? De plus en plus de frameworks d'OSX sont en Obj-C.
    Tu peux même dire que tous les nouveaux frameworks sont en Objective-C (et à fortiori C), seuls quelques vieux frameworks sont dans d'autres langages.

  20. #60
    Membre averti

    Inscrit en
    Février 2003
    Messages
    154
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 154
    Points : 310
    Points
    310
    Par défaut
    Citation Envoyé par PsychoH13 Voir le message
    Tu peux même dire que tous les nouveaux frameworks sont en Objective-C (et à fortiori C), seuls quelques vieux frameworks sont dans d'autres langages.
    Certains nouveaux frameworks Obj-C passent toujours par du C pure pour tout ce qui est petites routines usuelles. Mais attendons Léopard pour pouvoir en parler librement (NDA oblige).

Discussions similaires

  1. Quel langage choisir pour un soft commercial ?
    Par AnTaReS7364 dans le forum Langages de programmation
    Réponses: 11
    Dernier message: 16/07/2006, 22h21
  2. [Débutant] Quel langage choisir pour débuter ?
    Par Invité dans le forum Débuter
    Réponses: 15
    Dernier message: 05/07/2004, 22h13
  3. Quel langage choisir pour lire sur le port série ?
    Par Nico76 dans le forum Windows
    Réponses: 7
    Dernier message: 28/04/2004, 10h42
  4. quel langage choisir pour mon interface graphique
    Par mrom34 dans le forum Langages de programmation
    Réponses: 6
    Dernier message: 09/03/2004, 19h12
  5. quel langage choisir pour faire de script sous windows
    Par pas05 dans le forum Langages de programmation
    Réponses: 7
    Dernier message: 18/11/2002, 22h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo