Leopard Technology Series for Developers

Eddy58Eddy58 Membre
06:42 modifié dans Actualités #1
C'est le premier article d'une série destinée aux développeurs pour en savoir plus sur les entrailles du Leopard. :)

Réponses

  • AntilogAntilog Membre
    06:42 modifié #2
    Et voici la suite:
    http://developer.apple.com/leopard/overview/tools.html.

    L'article n'est pas tout à  fait clair (à  mon avis) sur un sujet:
    Il me semble comprendre que le garbage collector est du type "tout ou rien", si on choisit de l'utiliser, il faut changer la façon dont on gère la mémoire.

    J'aurais aimé un système où:
    - On continue de gèrer ses objets par alloc/release/autorelease...
    - On peut utiliser le garbage collector pour récupérer éventuellement les oublis de libération.

    Ca aurait été sympa et efficace (à  condition que le ramassage de miettes soit plus rapide s'il y a peu de miettes, ce qui n'est pas forcément évident).

    Enfin, pour l'instant, rien n'est sûr, j'ai peut-être mal compris, comme souvent  B)
  • ClicCoolClicCool Membre
    06:42 modifié #3
    En dehors des sources direct de chez Apple y'a aussi ici qu'on en apprend un peu plus.

    Et surprise j'y vois une forme de retour de la multiple inheritance dont la perte m'avais tellement posé de soucis au moment du passage de C++ à  Obj-C.
    Et c'est bizarre mais je m'en réjouis moins que j'aurais cru ...

    Y'avait un autre truc que j'adorais en C++, c'est la surcharge d'opérateur et il parait que ça fait aussi parti de l'Obj-C 2.0 ....
  • AliGatorAliGator Membre, Modérateur
    06:42 modifié #4
    A partir du moment où tu peux faire de l'Objective-C++, tu pourras retrouver toutes les joies du C++ et de l'aspect réellement POO qu'on n'a pas en Obj-C de par sa dérivation du C.
    - surcharge d'opérateurs
    - templates
    - héritage multiple (quoique c'est pas une pratique très propre !)
    - méthodes virtuelles
    - ...
  • décembre 2006 modifié #5
    Intéressant ton document ;)

    Les protocoles concrets n'ont pas grand chose à  voir avec l'héritage multiple du C++. Ils permettraient de définir une implémentation pour un protocole, et les classes qui adoptent ce protocole adopteeraient également cette implémentation par défaut. C'est donc la combinaison d'une classe et de méthodes n'appartenant à  aucune classe. Par rapport à  ce qui existe, ça reviendrait à  taper l'implémentation par défaut dans un fichier externe et faire un #include de ce fichier dans les implémentations des classes qui adoptent le dit protocole. Alors qu'en C++ c'est une combinaison de 2 classes.

    Tu as vu où que les opérateurs pouvaient être surchargés en obj-c 2? Suis pas au courant.

    dans 1165335305:
    aspect réellement POO qu'on n'a pas en Obj-C de par sa dérivation du C.

    Parce que le C++ ne dérive pas du C?
  • AliGatorAliGator Membre, Modérateur
    06:42 modifié #6
    dans 1165335420:

    Parce que le C++ ne dérive pas du C?
    Tssssss si tu commences à  pinailler :D
  • ClicCoolClicCool Membre
    décembre 2006 modifié #7
    dans 1165335420:

    Tu as vu où que les opérateurs pouvaient être surchargés en obj-c 2? Suis pas au courant.


    C'est là  le Pb!
    J'arrivie pas à  retrouver cette foutue page que j'avais lue en diagonale en me prométtant d'y revenir....
    Je suis pas du tout sur que la source était fiable
    Je l'ai bien vu quelque part mais où ???

    P'tet dans un forum de Cocoa-Anisé ? :P

    [EDIT] je penses savoir où j'ai lu ça et, à  la réflexion, ça avait l'air d'une libre et mauvaise interprétation de ce que permetraient les properties.
    dsl

  • MalaMala Membre, Modérateur
    06:42 modifié #8
    Mea Culpa!  ::) Ce serait pas ma faute avec ma vue trouble sur les properties dans un post de macbidouille?  :fouf):

    Bon du coup, tant qu'a parler de (sur)charge, celle là  elle est pour moi...  :p   :p :p :p


  • AntilogAntilog Membre
    06:42 modifié #9
    Sur le même sujet, probablement à  partir de la même source:
    http://andymatuschak.org/articles/2006/08/27/clues-to-objective-c-2-0
Connectez-vous ou Inscrivez-vous pour répondre.