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 :

Est-il possible et pratique de développer en C++ sur et pour MAC OS tout en étant pérenne


Sujet :

Apple

  1. #1
    Membre confirmé

    Inscrit en
    Août 2007
    Messages
    300
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 300
    Points : 527
    Points
    527
    Par défaut Est-il possible et pratique de développer en C++ sur et pour MAC OS tout en étant pérenne
    Désolé pour mon ignorance crasse pour tout ce qui concerne Mac OS ...
    Est-il possible et pratique de développer en C++ sur et pour MAC OS tout en étant pérenne (dev 64 bits, accès aux API récentes)? J'ai vaguement cru comprendre qu'Objective-C était obligatoire pour profiter de Cocoa, mais je crois comprendre aussi que Objective-C n'est qu'une simple couche fine au dessus de GCC... Donc il parait possible de porter un gros projet C++ hors IHM, et de faire juste la partie boutons en Objective-C sans problème de lien puisque tout passerait par GCC.
    Mais je ne vois pas bien comment ça fonctionne. Doit-on utiliser XCode? Si oui, est-ce un IDE confortable pour le C++? (au moins complétion de code, explorateur de classe, contrôle de GCC en mode C++...). Si non, y-a-t-il d'autres outils de développement C++ conçus pour la productivité? (càd un peu plus que gcc/man en ligne de commande...)
    Enfin, j'apprécierais quelques avis subjectifs: si nous choisissons la voie la plus simple en passant par Qt, nos clients auront-ils vraiment l'impression d'avoir une application Mac, ou le fait qu'il s'agit d'un portage est-il perceptible?
    "Maybe C++0x will inspire people to write tutorials emphasizing simple use, rather than just papers showing off cleverness." - Bjarne Stroustrup
    "Modern C++11 is not your daddy’s C++" - Herb Sutter

  2. #2
    Membre expérimenté
    Avatar de FloMo
    Homme Profil pro
    Freelance iOS
    Inscrit en
    Juillet 2004
    Messages
    726
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Deux Sèvres (Poitou Charente)

    Informations professionnelles :
    Activité : Freelance iOS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 726
    Points : 1 511
    Points
    1 511
    Par défaut
    Citation Envoyé par ac_wingless Voir le message
    Désolé pour mon ignorance crasse pour tout ce qui concerne Mac OS ...
    Pas de soucis

    Citation Envoyé par ac_wingless Voir le message
    Est-il possible et pratique de développer en C++ sur et pour MAC OS tout en étant pérenne (dev 64 bits, accès aux API récentes)? J'ai vaguement cru comprendre qu'Objective-C était obligatoire pour profiter de Cocoa, mais je crois comprendre aussi que Objective-C n'est qu'une simple couche fine au dessus de GCC... Donc il parait possible de porter un gros projet C++ hors IHM, et de faire juste la partie boutons en Objective-C sans problème de lien puisque tout passerait par GCC.
    Il y a un a une couche d'accès à Cocoa via C++ : c'est d'ailleurs celle utilisée par Qt. Mais Objective-C est clairement plus efficace.

    Objective-C est une surcouche au C, à l'instar du C++ grosso-modo, permettant d'apporter le support de l'objet entre autres.

    Citation Envoyé par ac_wingless Voir le message
    Mais je ne vois pas bien comment ça fonctionne. Doit-on utiliser XCode? Si oui, est-ce un IDE confortable pour le C++? (au moins complétion de code, explorateur de classe, contrôle de GCC en mode C++...). Si non, y-a-t-il d'autres outils de développement C++ conçus pour la productivité? (càd un peu plus que gcc/man en ligne de commande...)
    Dans les alternatives, il y a donc Qt.
    Sinon, XCode est franchement pas mal, avec des liens vers la doc, de l'auto-complétion, une interface à GDB, des outils de performances, etc...

    Citation Envoyé par ac_wingless Voir le message
    Enfin, j'apprécierais quelques avis subjectifs: si nous choisissons la voie la plus simple en passant par Qt, nos clients auront-ils vraiment l'impression d'avoir une application Mac, ou le fait qu'il s'agit d'un portage est-il perceptible?
    Qt fait bien son boulot en limitant les dégâts, mais une application Mac est pensée pour le Mac. Il y a des guidelines très pointus en termes d'interface.

    Et j'oubliais : Objective-C, c'est vraiment du bonheur à programmer.
    "Il est plus facile de décomposer un problème en ses éléments, forcément plus simples, que de le traiter en sa totalité." (R. Descartes)

    Freelance iOS

  3. #3
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Citation Envoyé par ac_wingless Voir le message
    ...Donc il parait possible de porter un gros projet C++ hors IHM, et de faire juste la partie boutons en Objective-C sans problème de lien puisque tout passerait par GCC.
    ... Enfin, j'apprécierais quelques avis subjectifs: si nous choisissons la voie la plus simple en passant par Qt, nos clients auront-ils vraiment l'impression d'avoir une application Mac, ou le fait qu'il s'agit d'un portage est-il perceptible?
    J'ai fait des tests de programme utilisant Qt (via PyQt) et l'interface est visuellement identique au système natif. Par contre pour les raccourcis je ne sais pas si un moyen universel existe de les traiter ou s'il faut les redéfinir suivant l'architecture, je n'ai pas encore essayer.

    Il y a une application faite avec Qt sur cette page si tu veux voir si le rendu te satisfait.

    L'avantage de Qt est le côté multi-plateforme, après si tu veux juste faire une application uniquement pour les Mac, autant utiliser les solutions Mac.

  4. #4
    Membre expérimenté Avatar de Ceylo
    Profil pro
    Étudiant
    Inscrit en
    Janvier 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Âge : 33
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 216
    Points : 1 312
    Points
    1 312
    Par défaut
    Personnellement je vois nettement la différence entre une application créée avec Qt ou Cocoa (un peu la même idée que Java vs Objective-C).

    Déjà en un petit coup d'oeil sur les screens de l'appli montrée par rambc..
    - tu peux voir que les "onglets" que Qt propose pour Mac OS X sont mal adaptés par rapport à ce qui était voulu : trop larges, centrés au lieu d'être à gauche.
    - de même une barre d'outils intégrée de cette façon est nettement différente de ce qu'on trouve généralement comme barre d'outil : http://i.zdnet.com/blogs/smultron1.png
    - pour avoir testé, les barres de défilement avec Qt ne sont pas non plus fluides comme avec les applis Cocoa : en fait le système de scrolling est fait par unités entières parce que la plupart des souris permettent de faire du scrolling par palliers. Sous Mac OS X c'est géré par valeur réelle donc tu peux avoir un scrolling de 0.0443 par exemple. Au final ça donne un scrolling parfaitement fluide.

    Enfin bref, on peut considérer que ce sont des détails, mais en ce qui me concerne j'apprécie beaucoup plus les interfaces faites avec Cocoa (sans compter qu'elles sont généralement plus réactives).

  5. #5
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2 937
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2 937
    Points : 4 358
    Points
    4 358

  6. #6
    Membre chevronné

    Profil pro
    Account Manager
    Inscrit en
    Décembre 2006
    Messages
    2 301
    Détails du profil
    Informations personnelles :
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Account Manager

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 301
    Points : 1 752
    Points
    1 752
    Par défaut
    Citation Envoyé par Spootnik Voir le message
    Personnellement je vois nettement la différence entre une application créée avec Qt ou Cocoa (un peu la même idée que Java vs Objective-C).
    Il me semble que les dernières version de Qt pour Mac s'appuient sur Cocoa. Il faudrait voir cela sur des projets récents mais là je ne suis pas certain de ce que je dis.

  7. #7
    Membre éprouvé Avatar de Ragmaxone
    Homme Profil pro
    Responsable systèmes de distribution
    Inscrit en
    Août 2007
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Pologne

    Informations professionnelles :
    Activité : Responsable systèmes de distribution

    Informations forums :
    Inscription : Août 2007
    Messages : 441
    Points : 1 001
    Points
    1 001
    Par défaut
    pour ce qui est de guidelines citées plus haut, rien de mieux que de fouiller la doc Apple. (là http://developer.apple.com/ tu choisis ton "camp", tu t'inscrits — gratuit — et tu fouille dans la doc : par exemple Human Interface Guidelines http://developer.apple.com/mac/libra...Guidelines.pdf

    Y a plein d'autres docs et l'interface de Xcode est pratique pour y accéder.

  8. #8
    Membre confirmé

    Inscrit en
    Août 2007
    Messages
    300
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 300
    Points : 527
    Points
    527
    Par défaut
    Je vous remercie tous pour ces éclaircissements!
    "Maybe C++0x will inspire people to write tutorials emphasizing simple use, rather than just papers showing off cleverness." - Bjarne Stroustrup
    "Modern C++11 is not your daddy’s C++" - Herb Sutter

  9. #9
    Membre éprouvé Avatar de Ragmaxone
    Homme Profil pro
    Responsable systèmes de distribution
    Inscrit en
    Août 2007
    Messages
    441
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Pologne

    Informations professionnelles :
    Activité : Responsable systèmes de distribution

    Informations forums :
    Inscription : Août 2007
    Messages : 441
    Points : 1 001
    Points
    1 001
    Par défaut
    j'ai fouillé un peu la doc Apple ces jours ci et je suis tombé sur des "guides" vraiment bien, par exemple IB_UserGuide, ça donne un très bon avant goût de Interface Builder dans les premiers chapitres (par encore lu la suite)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Est-il possible et légal de développer ce plugin en JS ?
    Par Sophie 2015 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 26/06/2015, 08h52
  2. Est-il possible de faire du développement pour BlackBerry en environnement Ubuntu ?
    Par arnaud.tlse dans le forum Développement Mobile en Java
    Réponses: 2
    Dernier message: 25/05/2011, 09h52
  3. est-il possible d'utiliser Mysql et du php sur un cd-rom??
    Par swan dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 01/05/2011, 16h23
  4. Réponses: 4
    Dernier message: 17/06/2008, 20h34
  5. Est-il possible de forcer l'activation du JAVASCRIPT sur un Navigateur
    Par L8O8L dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 17/07/2007, 13h39

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