Plugin

In Data-processing, a plugin is a program which interacts with a principal Logiciel, called program host , to bring new functionalities to him.

The term plugin comes from the Métaphore of the Electrical outlet standardized and indicates an extension envisaged of the functionalities, compared to addition not envisaged initially brought using patches.

Most of the time, these programs are characterized in the following way:

  • They cannot function only because they are only intended to bring a functionality to one or more software
  • They are developed by people not having necessarily a relation with the authors of the principal software.

Terminology

The term plugin or plug-in (deciding) comes from the verb English to plug in which means to connect .

This term being a Anglicism, many French terms were proposed to replace it: external module, plug-in module, plug-in, extension, graft or plugiciel (term suggested by the Office of the French language of Quebec in 1996).

Objectives

All the software is not able to function using plugin , the software in question must be conceived to be able to communicate with external programs according to certain rules which the latter must comply with so that they can exchange information. The objectives of the authors choosing to conceive this kind of software is to be able to add functionalities without having with all to reprogram and also to make it possible to the users to add their own functionalities in an independent way. Ideally, this independence includes the possibility for the principal software of evolving/moving while remaining compatible with the existing plugins; this condition is however far from being always filled.

Advantages

To have a concrete outline of a functionality which then will be possibly integrated into the principal software in an improved version.

Modular software architecture

The plugin can also be the base of a software Architecture modular as it is the case for the platform Eclipse CCP and the bundles OSGi.

In static software architectures, the structure implemented is defined before the launching of the program (for example, in a Fichier of configuration). As example, the interpreter of the language can charge with the plug-ins (to take into account the format ZIP, to give access to a base MySQL, etc) according to the needs described in the file for initialization ( php.ini ).

In truly dynamic architectures, it is very often the application which it even will count the plugins present, by examination of files present in a repertory dedicated to the plugins. The addition and the removal of elements in the repertory make it possible to activate or decontaminate the corresponding plugins. Certain applications allow the starting and the stop of a plugin whereas they are under operation. One then speaks about configuration hot or hot-plug , primarily used in the waiters to manage the fault-tolerance (system RAID). These changes can be started by the user or at the time of an other event within the application. However, this type of architecture quickly becomes complex because of the dependences which can exist between the plugins. To illustrate the concept of architecture dynamic, one can consider the Operating systems where the services systems are comparable with plugins added and withdrawn around Noyau. One also finds the concept of dependences, for example on the level of the bond between a service HTTP and a service TCP/IP.

Examples

  • Among most frequent is those adding the supports of certain formats:
    • Adobe Flash for animations Flash, especially with the format SWF
    • Java for the applet Java, using files with the format class
    • QuickTime for certain formats of sounds and vidéos
  • Microsoft proposes Powertoy, which are plugins for Microsoft Windows.

Part of the modules for the navigators Web such as for example Firefox, Seamonkey (and others of the family Mozilla) are often named as being plugins but are not it; it is about extension S.

See too

Zh-yue: 外掛

Random links:Angelo Tasca | Sigma-álgebra | 1686 | Solar energy | Regiment of Castelnau | Thomas Zorn | Nahum Sonenberg | Vichy