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

Langages de programmation Discussion :

[Terminologie] Framework, biblothèque, librairie...


Sujet :

Langages de programmation

  1. #1
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Points : 9 944
    Points
    9 944
    Par défaut [Terminologie] Framework, biblothèque, librairie...
    Bonjour,

    Je me pose des questions sur la bonne terminologie à employer lorsque l'on parle de divers "outils" d'aide au développement que l'on trouve sur le net, en particulier dans mon domaine : le web front-end. Voilà les différents que je connais et ce que cela désigne selon ma propre compréhension des choses :

    framework : assez gros, beaucoup de fonctions, a un impact majeur sur la structure et le style du code en aval
    bibliothèque : fournit un panel de fonctions bien qu'ayant un rôle spécifique au sein du projet
    librairie : idem que bibliothèque, mais ça serait plus une confusion avec l'anglais "library"
    package : propre à certains langages comme Java, où il suffit d'une règle import pour exploiter les différentes fonctions
    module : semblable à package, en insistant sur le fait que l'on peut ajouter et retirer ce module sans impact sur le reste du projet ; il est donc auxiliaire, accessoire.

    1) Est-ce que je me trompe sur certaines définitions ?
    2) Est-ce que j'en oublie ?
    3) Comment appelle-t-on des bouts de code assez courts avec un rôle spécialisé, comme une bibliothèque qui n'aurait qu'une seule fonction ?

  2. #2
    Expert confirmé Avatar de DonQuiche
    Inscrit en
    Septembre 2010
    Messages
    2 741
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 2 741
    Points : 5 493
    Points
    5 493
    Par défaut
    Bonjour.

    Les trois premiers sont corrects. J'aurais dit que la bibliothèque couvre un problème précis et bien circonscrit tandis que le framework est, littéralement, un "cadre de travail" intégré et vaste par-dessus lequel on bâtit généralement une grande partie du projet.

    Pour package, je dirais simplement que c'est l'équivalent Java d'une bibliothèque, à savoir une collection d'objets Java plutôt qu'une simple collection de fonctions comme l'est une bibliothèque C. Autrement dit c'est bel et bien une bibliothèque et ce mot est souvent utilisé à la place de "package". L'équivalent en C# est "assemblée" (assembly).

    Pour module, attention, le sens varie grandement d'un contexte à l'autre même si on garde toujours l'idée de modularité (mais une biblothèque partage ce trait). En PHP on désigne par "module" les composants natifs (souvent écrits en C) chargés directement au niveau du serveur Apache par opposition aux bibliothèques et frameworks écrits en PHP et interprétés de la même façon que ton code.

    En revanche s'il est fréquent de voir des logiciels PHP capables de gérer l'absence de certains modules, ce n'est pas systématique et donc pas constitutif du concept de "module". On préfère donc le vocable "modulaire" à "optionnel" puisque tous les modules ne sont pas optionnels du point de vue d'un code PHP.

  3. #3
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 575
    Points
    41 575
    Par défaut
    "module" est un terme très ambigu en effet. En C ou C++, on l'emploie souvent comme synonyme plus court de "unité de compilation". Mais en terminologie Windows, un module est un fichier .exe ou .dll dans la mémoire d'un processus, et en terminologie *n*x un module est un module du noyau...

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 330
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 330
    Points : 36 849
    Points
    36 849
    Par défaut
    Salut,
    Dans un contexte de développement, "framework" et "librairies" sont des composants qu'on utilise, dont on dépend.

    "package"/"module"/"class" sont les composants qu'on écrit.
    Ceci dit, la terminologie dépendra alors du langage utilise.
    - W

Discussions similaires

  1. [GPL / AGPL / LGPL] Framework et Librairie
    Par chris78125 dans le forum Général Java
    Réponses: 1
    Dernier message: 27/07/2011, 15h24
  2. Question a propos des frameworks (et librairies) .net
    Par feldene dans le forum Framework .NET
    Réponses: 1
    Dernier message: 29/08/2010, 21h31
  3. Creation d'un framework de librairies javascript et css
    Par thaundeadboss dans le forum Général Conception Web
    Réponses: 6
    Dernier message: 10/02/2010, 11h42
  4. Création Framework / librairie
    Par jc44 dans le forum Langage
    Réponses: 2
    Dernier message: 10/08/2006, 13h00
  5. [1.x] [Librairies] recherche d'un framework pour debuter
    Par amin1425 dans le forum Symfony
    Réponses: 8
    Dernier message: 06/12/2005, 14h29

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