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

 C++ Discussion :

Bibliothèque STL , Boost , et design pattern


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Bibliothèque STL , Boost , et design pattern
    Bonsoir ,

    J'en viens à vous car je ne sais plus vers ou me guider .


    J'aimerais comprendre concernant la bibliothèque STL , Boost , et design pattern :

    -Ce qu'ils sont ?

    -Ce qu'ils permettent ?

    Car j'ai beau être curieux , je n'arrive pas à trouver une explication global de ces termes .

    Est-ce que quelqu'un pourrait m'éclairer à leur sujet s'il vous plaît ?

    Merci

  2. #2
    Membre Expert
    Avatar de Klaim
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Août 2004
    Messages
    1 717
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 1 717
    Par défaut
    Citation Envoyé par tchoumo Voir le message
    J'aimerais comprendre concernant la bibliothèque STL , Boost , et design pattern :

    -Ce qu'ils sont ?
    *retrousse ses manches*

    La STL, ou Standard Template Library est donc une bibliotheque qui a ete standardisee et fait donc partie de la Standard Library. Souvent les gens melangent STL et SL et c'est peu important au final. Ce qui est important c'est que c'est, globalement, la bibliotheque standard du C++ et qu'elle est censee etre fournie par les compilateurs qui disent se conformer au standard.
    En gros c'est une bibliotheque qui fait partie du language C++. (il y a des cas extremes ou tu ne peux pas l'utiliser, mais c'est rare de bosser dans ces cas)

    Boost est une collection de bibliotheques diverses qui ont pour but de pousser les limites du C++ (en implementant par exemple une bibliotheque qui permet de generer a la compilation un compilateur pour un language que tu decris dans un language implemente dans le C++ mais qui n'est pas du C++ .............). Elle est aussi souvent le lieu ou naissent et sont couvees les bibliotheques qui seront plus tard integrees au standard C++.

    Note que comme Boost est une collection de bibliotheque, ca touche a pas mal de sujet plus ou moins generaux. Le point commun entre toutes ces bibliotheques c'est que tu es garantie qu'elles ont ete revues part au moins une poignee d'experts avant d'etre integree dans Boost. Autrement dis, c'est une sorte de label de qualite. Je mets ca en gras parceque certains critiquent souvent Boost en le considerant comme une seule bibliotheque alors que ce n'est pas le cas, mais par contre pour chaque version tu as une distribution de toutes les bibliotheques d'un coup, potentiellement mises a jour mais quasimment guaranties de compiler ensemble.

    La plupart des utilisateurs du C++ vont avoir Boost quelque part de disponible parcequ'elle complete souvent les manques de la bibliotheque standard, qui reste assez petite comparee a ce qu'on trouve dans la bibliotheque standard Java ou C# par exemple.

    Les design patterns.... c'est en gros des facon recurrentes de resoudre des problemes recurrents. A force de programmer tu vas souvent te retrouver dans des situations ou tu vas reutiliser une maniere de faire que tu avais deja utilise dans un autre bout de code. C'est plus ou moins ca un design pattern. Des programmeurs en ont repertorie dans un bouquin celebre du meme nom, de maniere a ce qu'on soit plus facilement capable de discuter des problemes et des solutions: si tu donnes des noms a ces patterns, c'es plus facile d'expliquer comment tu vas resoudre tes problemes en les utilisants.

    En gros c'est un outils de communication. Il y a une erreur frequente chez les developeurs qui n'ont pas compris ce point precis, c'est qu'ils ne jurent que par les patterns et duc oup les utilisent comme si c'etait les seules solutions a tous les problemes, ce qui peut amener en realiter d'autres problemes.
    Donc en gros, c'est bien de savoir ce que c'est, surtout pour pouvoir echanger des discussions techniques (comme ici, si on te dis que tu pourrais utiliser une Factory, tout de suite tu auras une idee de quoi on parle et comment la mettre en place). Ce n'est pas du code precis, surtout pas. Meme si il y a des implementations generiques, il vaut mieux juste se concentrer sur les problemes specifiques et trouver des solution specifiques (qui peuvent ou pas coller a un ou plusieurs design patterns).

    -Ce qu'ils permettent ?
    - La liste de tout ce qu'il y a dans la bibliotheque standard: http://en.cppreference.com/w/
    - La liste des bibliotheques dans Boost: http://www.boost.org/doc/libs/ (oui yen a beaucoup)
    - Pour les design patterns il y a ceux du bouquin d'origine du terme et puis d'autres. La page wikipedia resume ca tres bien: http://en.wikipedia.org/wiki/Software_design_pattern



    Car j'ai beau être curieux , je n'arrive pas à trouver une explication global de ces termes .
    Peut etre parceque tu cherchais en francais? Utilises toujours l'anglais pour chercher ce qui a un rapport au code. Tout ce que je viens de dire est sur wikipedia.

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/06/2014, 17h08
  2. Réponses: 4
    Dernier message: 24/02/2009, 12h06
  3. [Observateur] Précisions sur le design pattern Observer [UML]
    Par joquetino dans le forum Design Patterns
    Réponses: 2
    Dernier message: 07/10/2004, 22h35
  4. Les Designs Patterns Entreprise
    Par boulon dans le forum Design Patterns
    Réponses: 4
    Dernier message: 01/09/2004, 19h16
  5. [Design Patterns] Architecture 3 tiers
    Par HPJ dans le forum Design Patterns
    Réponses: 1
    Dernier message: 29/07/2003, 11h49

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