Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 11 sur 11
  1. #1
    Membre Expert
    Inscrit en
    novembre 2004
    Messages
    2 554
    Détails du profil
    Informations forums :
    Inscription : novembre 2004
    Messages : 2 554
    Points : 1 984
    Points
    1 984

    Par défaut Livres sur la méta programmation, boost MPL et autres joyeusetés

    [EDIT] Cette discussion est un fork suite à ce message[/EDIT]

    Citation Envoyé par Alp Voir le message
    Boost.MPL [...] (y'a un bouquin qui porte quasiment que sur cette lib...).
    Lequel ?

  2. #2
    Expert Confirmé Sénior

    Homme Profil pro Emmanuel Deloget
    Développeur informatique
    Inscrit en
    septembre 2007
    Messages
    1 894
    Détails du profil
    Informations personnelles :
    Nom : Homme Emmanuel Deloget
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : septembre 2007
    Messages : 1 894
    Points : 4 140
    Points
    4 140

    Par défaut

    Citation Envoyé par oodini Voir le message
    Lequel ?
    [ame="http://www.amazon.fr/Template-Metaprogramming-Concepts-Techniques-Beyond/dp/0321227255"]C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond: Amazon.fr: David Abrahams, Aleksey Gurtovoy: Livres anglais et ?trangers@@AMEPARAM@@http://ecx.images-amazon.com/images/I/516I5LcsEEL.@@AMEPARAM@@516I5LcsEEL[/ame]

    Si je ne m'abuse. Je sais qu'il y a de longs chapitres sur boost, mais je ne me rappelle plus leur sujet.

    Sinon, le Modern C++ Programming d'Alexandrescu aborder les typelist dans les grandes largeurs.
    [FAQ des forums][FAQ Développement 2D, 3D et Jeux][Si vous ne savez pas ou vous en êtes...]
    Essayez d'écrire clairement (c'est à dire avec des mots français complets). SMS est votre ennemi.
    Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Café. C'est dépassé tout ça.
    Et si vous êtes sages, vous aurez peut être vous aussi la chance de passer à la télé. Ou pas.

    Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.

  3. #3
    Membre Expert
    Inscrit en
    novembre 2004
    Messages
    2 554
    Détails du profil
    Informations forums :
    Inscription : novembre 2004
    Messages : 2 554
    Points : 1 984
    Points
    1 984

    Par défaut

    C'est un trait, en gros, non ?

  4. #4
    Alp
    Alp est déconnecté
    Expert Confirmé Sénior
    Avatar de Alp
    Homme Profil pro
    Inscrit en
    juin 2005
    Messages
    8 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : juin 2005
    Messages : 8 586
    Points : 10 409
    Points
    10 409

    Par défaut

    Certains traits sont des métafonctions. D'autres pas exactement, ou alors plusieurs à la fois, mais pas que. Par exemple certains traits renvoient des informations que via des fonctions statiques, et là on ne parle plus de métafonction.

  5. #5
    Alp
    Alp est déconnecté
    Expert Confirmé Sénior
    Avatar de Alp
    Homme Profil pro
    Inscrit en
    juin 2005
    Messages
    8 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : juin 2005
    Messages : 8 586
    Points : 10 409
    Points
    10 409

    Par défaut

    Citation Envoyé par Emmanuel Deloget Voir le message
    C++ Template Metaprogramming: Concepts, Tools, and Techniques from Boost and Beyond: Amazon.fr: David Abrahams, Aleksey Gurtovoy: Livres anglais et ?trangers

    Si je ne m'abuse. Je sais qu'il y a de longs chapitres sur boost, mais je ne me rappelle plus leur sujet.
    C'est bien celui-là. Il parle de traits, métafonctions, wrappers de types "integral", de séquences et itérateurs (compile-time biensûr), d'algorithms (idem), de vues et adaptateurs d'itérateurs, de diagnostic (compile-time toujours), de franchir la limite entre compile-time et runtime, et enfin de DSELs !

  6. #6
    Membre Expert
    Inscrit en
    novembre 2004
    Messages
    2 554
    Détails du profil
    Informations forums :
    Inscription : novembre 2004
    Messages : 2 554
    Points : 1 984
    Points
    1 984

    Par défaut

    Et lequel est le plus ardu ?
    Celui là, ou celui de notre psychopathe issu des Carpates ?

  7. #7
    Alp
    Alp est déconnecté
    Expert Confirmé Sénior
    Avatar de Alp
    Homme Profil pro
    Inscrit en
    juin 2005
    Messages
    8 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : juin 2005
    Messages : 8 586
    Points : 10 409
    Points
    10 409

    Par défaut

    Je dirais celui-là. Les deux sont "mind blowing" si t'as jamais trop fait le genre de trucs qu'ils expliquent. J'ai lu les deux à peu de temps d'intervalle (quelques mois), y'a bien 4 ans de ça maintenant...
    Modern C++ Design même si ça parle beaucoup de templates, t'as quand même de l'OO auquel te raccrocher. Dans celui sur Boost.MPL, t'as pas trop ça, c'est vraiment axé métaprogrammation *à fond*!

  8. #8
    Membre Expert
    Inscrit en
    novembre 2004
    Messages
    2 554
    Détails du profil
    Informations forums :
    Inscription : novembre 2004
    Messages : 2 554
    Points : 1 984
    Points
    1 984

  9. #9
    Alp
    Alp est déconnecté
    Expert Confirmé Sénior
    Avatar de Alp
    Homme Profil pro
    Inscrit en
    juin 2005
    Messages
    8 586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : juin 2005
    Messages : 8 586
    Points : 10 409
    Points
    10 409

    Par défaut

    Aucun des 3 n'apporte la même chose. Bien sûr, ils se recoupent tous un peu, sur les traits principalement, qui est un des éléments de base de la métaprogr. Celui que tu viens de mentionner te fait découvrir les templates jusqu'à un certain point. Celui d'Alexandrescu te montre comment passer d'une utilisation basique des templates à l'utilisation intelligente des templates dans ton design logiciel, pour rendre tes architectures plus génériques, souples, etc. Celui d'Abrahams & Gurtovoy est lui dédié à la métaprogrammation, c'est à dire l'utilisation des templates @ compile-time.

  10. #10
    Membre Expert Avatar de Flob90
    Homme Profil pro Florian Blanchet
    Etudiant en Optique
    Inscrit en
    août 2004
    Messages
    1 202
    Détails du profil
    Informations personnelles :
    Nom : Homme Florian Blanchet
    Âge : 24
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Etudiant en Optique

    Informations forums :
    Inscription : août 2004
    Messages : 1 202
    Points : 2 473
    Points
    2 473

    Par défaut

    Je trouve que MC++D se lit très bien, la facon dont Alexandrescu explique les choses donne l'impression que tout ce qu'il fait découle naturellement. Je pense que c'est peut-être le premier des trois à lire. Il ne nécessite pas de gros prérequis sur la syntaxe (certain points sont rappelés au besoin), il introduit des concepts assez fort, et l'utilisation pratique de ce qu'il explique est direct (les éléments développés répondent à des problèmes classiques).

    Pour le Vandevoorde, il est très interessent, mais comme il va assez loin dans la description de la syntaxe des templates ca donne quelques passages très "norme" (pas des plus passionant à lire). Et une partie du bouquin pert un peu de son interêt si on a lu MC++D.

    Pour celui d'Abrahams, il faut quand même avoir déjà manipulé les templates avant de se lancer dedans, et avoir été confronté à des problèmes qui doivent être résolues à la compilation donne un plus grand interet au livre (on voit se dessiner des solutions à des problèmes grace aux éléments décrit). Une partie du livre est consacré aux éléments de base de la méta-prog, la suite à la description des éléments de boost.mpl (pas de détail sur le "comment" ses éléments sont codé). Et la fin présente comment jouer avec la limite entre compile time et runtime, en partie grace à la méta-prog.
    "We can solve any problem by introducing an extra level of indirection" Butler Lampson

    "N'importe quel problème peut être résolu en introduisant un niveau d'indirection supplémentaire" Butler Lampson (traduction libre)

  11. #11
    Membre Expert
    Inscrit en
    novembre 2004
    Messages
    2 554
    Détails du profil
    Informations forums :
    Inscription : novembre 2004
    Messages : 2 554
    Points : 1 984
    Points
    1 984

    Par défaut

    Citation Envoyé par Flob90 Voir le message
    Pour le Vandevoorde, il est très interessent, mais comme il va assez loin dans la description de la syntaxe des templates ca donne quelques passages très "norme" (pas des plus passionant à lire).
    Comme il a été écrit avec Jossutis, peut-être est-ce dans le même esprit que celui sur la bibliothèque standard ?

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •