Carbon

macvelottemacvelotte Membre
07:40 modifié dans Actualités #1
J'ai un programme C (CodeWarrior) qui fonctionne parfaitement sous Classic.

Comment faire pour le "carboniser" ?

J'ai bien "learning carbon" de O'Reilly, mais je n'en tire rien !

:(

Réponses

  • AliGatorAliGator Membre, Modérateur
    07:40 modifié #2
    ???

    Mais qu'est ce que tu veux Carboniser ?
    Il fait des appels à  des fonctions ToolBox, ton programme C ?
    Quels appels spécifiques il emploie ?
    Quels bibliothèques, quels headers utilise-t-il qui ferait qu'il ne fonctionne pas sous OSX ?
  • Eddy58Eddy58 Membre
    07:40 modifié #3
    Tu as le nécessaire ici. Tu trouveras un guide de portage sous Carbon et un guide de portage de projets CW vers Xcode. :)
  • macvelottemacvelotte Membre
    07:40 modifié #4
    Il y a un exemple donné dans le CarbonPorting guide :
    " InitGraf((Ptr)  &qd.thePort);"

    qui est une modification de InitGraf(&qd.thePort) ;

    Or cette modification est refusée : "qd" pas défini
    J'ai inclus Carbon.lib dans les librairies.
    >:(
  • VeillardVeillard Membre
    07:40 modifié #5
    J'ai carbonisé un vieux programme qui fonctionnait sous Classic, je peux te dire que c'est la galère. Depuis que je me suis mis à  Cocoa, j'ai réécrit en deux mois que j'ai fait en deux ans sous Carbon.
    Après si tu veux intégrer du Carbon dans du Coca, c'est autre chose. Mais personnellement, Carbon, c'est du passé...
  • macvelottemacvelotte Membre
    07:40 modifié #6
    Sans aucun doute, Favouille ...

    Mais j'ai réécrit en Cocoa un programme (calcul des décimales de pi) C-CodeWarrior : c'est un échec complet quant au résultat : vitesse d'execution multipliée par 100 !

    J'aimerais donc essayer de voir ce que ça donne via carbon ...
    peut-être ais-je tord ?
  • AliGatorAliGator Membre, Modérateur
    07:40 modifié #7
    Cf l'autre post, mais si pour toi la conclusion de ton test c'est que l'ObjC est 100x plus lent que le C vu ce que tu as écrit, c'est pas gagné pour porter pour Carbon alors !

    Faudrait plutôt reréfléchir à  l'implémentation de ton algo de façon bien plus efficace, car il y a un sacré paquet d'optimisations réalisables dans ton code ObjC rien que pour convertir ton NSArray en chaà®ne.
    Alors sur l'algo de calcul des décimales proprement dit, je n'ose pas imaginer si tu l'as fait dans la même foulée  ;) :P
    Il y a franchement de quoi faire 100x mieux côté optimisation je pense : donc en conclusion, il est peut-être préférable que tu creuses un peu côté Cocoa pour optimiser ton code et mieux utiliser les objets Cocoa et la gestion de la mémoire etc, plutôt que d'essayer d'apprendre à  porter ton programme sous Carbon : ça te prendra autant voir moins de temps, et en plus ça te perfectionnera en Cocoa au lieu de t'apprendre Carbon qui est de plus en plus du passé  ;) :o
  • macvelottemacvelotte Membre
    07:40 modifié #8
    OK Aligator ...

    je pense que tu as raison.

    A moi de jouer, si j'ose dire !
Connectez-vous ou Inscrivez-vous pour répondre.