Technopedia Center
PMB University Brochure
Faculty of Engineering and Computer Science
S1 Informatics S1 Information Systems S1 Information Technology S1 Computer Engineering S1 Electrical Engineering S1 Civil Engineering

faculty of Economics and Business
S1 Management S1 Accountancy

Faculty of Letters and Educational Sciences
S1 English literature S1 English language education S1 Mathematics education S1 Sports Education
  • Registerasi
  • Brosur UTI
  • Kip Scholarship Information
  • Performance
  1. Weltenzyklopädie
  2. Plugin — Wikipédia
Plugin — Wikipédia 👆 Click Here! Read More..
Un article de Wikipédia, l'encyclopédie libre.
(Redirigé depuis Extension (logiciel))
Page d’aide sur l’homonymie

Pour les articles homonymes, voir add-on.

Page d’aide sur l’homonymie

Cet article concerne les modules compilés chargeables sur demande. Pour les modules intégrés en JavaScript ou XUL, voir Extension (logiciel).

Cet article est une ébauche concernant l’informatique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.
Copie d'écran de la liste des plugin par défaut proposée par Mozilla.

En informatique, un plugin ou plug-in, aussi nommé module d'extension, module externe, greffon, plugiciel, ainsi qu'add-in ou add-on[1], est un logiciel conçu pour être greffé à un autre logiciel à travers une interface prévue à cet effet, et apporter à ce dernier de nouvelles fonctionnalités.

Le terme plugin provient de la métaphore de la prise électrique standardisée, et souligne le fait que le logiciel hôte est conçu pour accueillir des logiciels étendant ses fonctionnalités, par opposition aux ajouts non prévus initialement apportés à l'aide de correctifs (patchs).

La plupart du temps, un plugin :

  • ne peut pas fonctionner seul, car ses fonctionnalités ne prennent sens qu'au sein du logiciel hôte ;
  • peut être mis au point sans concertation avec les auteurs du logiciel hôte.

Terminologie

[modifier | modifier le code]

Le terme plugin ou plug-in (se prononçant /ˈplʌg.ɪn/[2]) vient du verbe anglais to plug in qui signifie « brancher », composé de plug (prise, fiche, bouchon) et de in (dans).

Ce terme étant un anglicisme, de nombreux termes français ont été proposés pour le remplacer : module d’extension (terme recommandé en France par la DGLFLF[3] et par la Communauté française de Belgique[4]), module externe, greffon (dont l'étymologie signifie stylet) ou encore plugiciel[5]. (terme proposé par l’Office québécois de la langue française en 1996 et approuvé par l'Académie française en 2009[réf. nécessaire]). La forme abrégée « extension » acceptée par la DGLFLF peut conduire à des confusions avec l'extension de nom de fichier, ou l'extension de logiciel, qui ont d'autres significations.

Objectifs

[modifier | modifier le code]

Tous les logiciels ne sont pas capables de fonctionner à l'aide de plugin, le logiciel en question doit être conçu pour pouvoir communiquer avec des programmes extérieurs selon certaines règles que ces derniers doivent respecter pour qu'ils puissent échanger des informations. Les objectifs des auteurs choisissant de concevoir ce genre de logiciel est de pouvoir ajouter des fonctionnalités sans avoir à tout reprogrammer et également de permettre aux utilisateurs d'ajouter leurs propres fonctionnalités de manière indépendante. Idéalement, cette indépendance inclut la possibilité pour le logiciel principal d'évoluer tout en restant compatible avec les plugins existants ; cette condition est cependant loin d'être toujours remplie.

Avantages

[modifier | modifier le code]
  • Alléger le noyau de fonctionnalités secondaires, ce qui en allège la maintenance et diminue la surface de vulnérabilité aux attaques de sécurité.
  • Modulariser le développement des fonctionnalités annexes en équipes indépendantes.
  • Donner accès, pour une même fonction, à différentes solutions (chacune dans un plugin différent) : différentes implémentations ou algorithmes, différentes ressources mises en œuvre, différents publics, différents degrés de complexité, différents coûts (gratuit ou payant), etc.
  • Avoir un aperçu concret d'une fonctionnalité qui sera ensuite éventuellement intégrée au logiciel principal dans une version améliorée.

Architecture logicielle modulaire

[modifier | modifier le code]

Le plugin peut aussi être la base d’une architecture logicielle modulaire comme c’est le cas pour la plate-forme Eclipse et les bundles OSGi.

Dans les architectures logicielles statiques, la structure mise en œuvre est définie avant le lancement du programme (par exemple, dans un fichier de configuration). À titre d’exemple, l’interpréteur du langage PHP peut charger des plugins (pour prendre en compte le format ZIP, pour permettre l’accès à une base MySQL, etc.) selon les besoins décrits dans le fichier d’initialisation (php.ini).

Dans les architectures véritablement dynamiques, c’est l’application qui va elle-même recenser les plugins présents, bien souvent par examen de fichiers présents dans un répertoire dédié aux plugins. L’ajout et la suppression d’éléments dans le répertoire permet d’activer ou de désactiver les plugins correspondants. Certaines applications permettent le démarrage et l’arrêt d’un plugin alors qu’elles sont en fonctionnement. On parle alors de configuration à chaud ou hot-plug. Ces changements peuvent être déclenchés par l’utilisateur ou à l’occasion d’un autre évènement au sein de l’application. Toutefois, ce type d’architecture devient vite complexe du fait des dépendances qui peuvent exister entre les plugins. Pour illustrer le concept d’architecture dynamique, on peut considérer les systèmes d’exploitation où les services systèmes sont comparables à des plugins ajoutés et retirés au noyau. On retrouve également la notion de dépendances, par exemple au niveau du lien entre un service HTTP et un service TCP/IP.

Standalone

[modifier | modifier le code]

Certains plugins peuvent aussi être utilisés comme logiciel à part entière, on dit alors qu'ils sont Standalone.

Exemples

[modifier | modifier le code]

Navigateurs

[modifier | modifier le code]

Parmi les plus fréquents se trouvent ceux ajoutant les supports de certains formats dans les navigateurs :

  • Adobe Flash pour les animations Flash, surtout au format SWF ;
  • Java pour les applets Java, utilisant des fichiers au format class ;
  • QuickTime pour certains formats de sons et de vidéos ;
  • Google plugin pour la visualisation Google Earth.

Microsoft proposait jusqu'à Windows XP des powertoys, qui sont des plugins pour Microsoft Windows.

Une partie des modules pour les navigateurs Web comme Firefox ou Seamonkey (et autres de la famille Mozilla) sont souvent nommés comme étant des plugins mais ne le sont pas, il s'agit d'extensions.

Bureau

[modifier | modifier le code]

De nombreux logiciels pour la plateforme Gnome sont extensibles, via des plugins. Notamment, evince, eog, Nautilus et gedit, qui proposent tous une interface de programmation en Python pour ajouter des fonctionnalités au logiciel (de façon dynamique).

Production audio

[modifier | modifier le code]
Article détaillé : Plug-in audio.

Les logiciels de composition musicale ou production sonore, comportent différents systèmes de plugins, tels que AU, DSSI, LADSPA, LV2 ou VST, permettant un nombre important de combinaisons. Des gestionnaires de systèmes de plugins, permettent d'utiliser dans des logiciels ne supportant que certains types de plugins audio, les autres types de plugins.

Multimédia

[modifier | modifier le code]

Le lecteur multimédia VLC propose aussi une interface de programmation en Lua pour ajouter (dynamiquement) des fonctionnalités, comme le téléchargement automatique de sous-titres ou de paroles de chansons. Plus généralement, les lecteurs multimédia, audio et vidéo proposent généralement ce type de systèmes pour gérer des nouveaux formats, différents types d'entrées (télécommande, réseau, etc) ou sortie (paroles de chanson, etc).

Plugin frameworks

[modifier | modifier le code]

Plusieurs frameworks permettent aux développeurs d’ajouter des plugins dans divers langages de programmation à leurs applications.

Pour le C++, il y a FxEngine Framework, qui permet le traitement de flux de données, et le framework Qt. Sur Delphi, le TMS Plugin Framework est supporté. Pour Java sont offerts deux plugins du projet Eclipse, soit le Java Plugin Framework (JPF) et le Rich Client Platform (RCP). Pour Python, on retrouve plusieurs options: Setuptools, Hive ERP Framework[6], Sprinkles et Envisage. On retrouve aussi beaucoup de frameworks pour .NET, comme Visual Assist, AL Platform, Mono Add-ins, Plux.NET[7] et Managed Extensibility Framework. Enfin, il y a aussi Symphony[8] pour PHP.

Notes et références

[modifier | modifier le code]
  1. ↑ (en) « Plug-in - software », sur Encyclopedia Britannica (consulté le 11 mai 2023).
  2. ↑ (en) « Plug-in », sur lexico.com, Oxford English Dictionary (consulté le 5 juillet 2020).
  3. ↑ Commission d’enrichissement de la langue française, « module d'extension », sur FranceTerme, ministère de la Culture (consulté le 5 juillet 2020).
  4. ↑ « Banque de données terminologique, domaine informatique », Service de la langue française de la Communauté française de Belgique (consulté le 30 septembre 2012).
  5. ↑ « plugiciel », Grand Dictionnaire terminologique, Office québécois de la langue française (consulté le 5 juillet 2020)
  6. ↑ (en) Tutorials Point, « Hive - Introduction », sur tutorialspoint.com (consulté le 17 septembre 2020)
  7. ↑ (en) Markus Jahn, Markus Löberbauer, Reinhard Wolfinger et Hanspeter Mössenböck, « Plux.NET - A Dynamic Plug-in Platform for Desktop and Web Applications in .NET », sur ase.jku.at, 2012 (consulté le 17 septembre 2020)
  8. ↑ (en) Symfony, « Jour 20 : Les Plugins (symfony 1.4 legacy version) », sur symfony.com (consulté le 11 mai 2023).

Voir aussi

[modifier | modifier le code]

Sur les autres projets Wikimedia :

  • plugin, sur le Wiktionnaire

Articles connexes

[modifier | modifier le code]
  • Extension (Mozilla)
  • Extension (logiciel)
  • Standalone
  • icône décorative Portail d’Internet
  • icône décorative Portail de l’informatique
Ce document provient de « https://fr.teknopedia.teknokrat.ac.id/w/index.php?title=Plugin&oldid=223321226 ».
Catégories :
  • Terminologie du logiciel
  • Interface de programmation
Catégories cachées :
  • Wikipédia:ébauche informatique
  • Article à référence nécessaire
  • Portail:Internet/Articles liés
  • Portail:Médias/Articles liés
  • Portail:Société/Articles liés
  • Portail:Informatique/Articles liés
  • Portail:Technologies/Articles liés

  • indonesia
  • Polski
  • الرية
  • Deutsch
  • English
  • Español
  • Français
  • Italiano
  • مصر
  • Nederlands
  • 本語
  • Português
  • Sinugboanong Binisaya
  • Svenska
  • Українска
  • Tiếng Việt
  • Winaray
  • 中文
  • Русски
Sunting pranala
Pusat Layanan

UNIVERSITAS TEKNOKRAT INDONESIA | ASEAN's Best Private University
Jl. ZA. Pagar Alam No.9 -11, Labuhan Ratu, Kec. Kedaton, Kota Bandar Lampung, Lampung 35132
Phone: (0721) 702022
Email: pmb@teknokrat.ac.id