Extension (computing) ▪ Sale
Extension (computing)
Mozilla Firefox displaying a list of installed plug-ins

In computing, a plug-in (or plugin) is a software component that adds a specific feature to an existing software application. When an application supports plug-ins, it enables customization. The common examples are the plug-ins used in web browsers to add new features such as search-engines, virus scanners, or the ability to utilize a new file type such as a new video format. Well-known browser plug-ins include the Adobe Flash Player, the QuickTime Player, and the Java plug-in, which can launch a user-activated Java applet on a web page to its execution a local Java virtual machine.

Add-on (or addon) is the general term for what enhances an application. It comprises snap-in, plug-in, extension, and theme. An extension add-on tailors the core features of an application by adding an optional module, whereas a plug-in add-on would tailor the outer layers of an application to personalize functionality.

Purpose and examples [edit]

Applications support plug-ins for many reasons. Some of the main reasons include:

Specific examples of applications and why they use plug-ins:

Mechanism [edit]

Extension (computing)
Example Plug-In Framework

As shown in the figure, the host application provides services which the plug-in can use, including a way for plug-ins to register themselves with the host application and a protocol for the exchange of data with plug-ins. Plug-ins depend on the services provided by the host application and do not usually work by themselves. Conversely, the host application operates independently of the plug-ins, making it possible for end-users to add and update plug-ins dynamically without needing to make changes to the host application.

Open application programming interfaces (APIs) provide a standard interface, allowing third parties to create plug-ins that interact with the host application. A stable API allows third-party plug-ins to continue to function as the original version changes and to extend the life-cycle of obsolete applications. The Adobe Photoshop and After Effects plug-in APIs have become a standard and competing applications such as Corel Paint Shop Pro have adopted them.

Compared to extensions [edit]

Extensions differ slightly from plug-ins. Plug-ins usually have a narrow set of abilities. For example, the original impetus behind the development of Mozilla Firefox was the pursuit of a small baseline application, leaving exotic or personalized functionality to be implemented by extensions to avoid feature creep. This is in contrast to the "kitchen sink" approach in its predecessors, the Mozilla Application Suite and Netscape 6 and 7. Therefore, after integration, extensions can be seen as part of the browser itself, tailored from a set of optional modules.

Firefox also supports plug-ins using NPAPI. When the browser encounters references to content a plug-in specializes in, the data is handed off to be processed by that plug-in. Since there is generally a clear separation between the browser and the plug-in, the results are discrete objects embedded within a webpage. The same distinction between plug-ins and extensions is in use by other web browsers, such as Microsoft Internet Explorer, where a typical extension might be a new toolbar, and a plug-in might embed a video player on the page. Since plug-ins and extensions both increase the utility of the original application, Mozilla uses the term "add-on as an inclusive category of augmentation modules that consists of plug-ins, themes, and search engines.

History [edit]

Plug-ins appeared as early as the mid 1970s, when the EDT text editor running on the Unisys VS/9 operating system using the Univac 90/60 series mainframe computer provided the ability to run a program from the editor and to allow such a program to access the editor buffer, thus allowing an external program to access an edit session in memory. The plug-in program could make calls to the editor to have it perform text-editing services upon the buffer that the editor shared with the plug-in. The Waterloo Fortran compiler used this feature to allow interactive compilation of Fortran programs edited by EDT.

Very early PC software applications to incorporate plug-in functionality included HyperCard and QuarkXPress on the Macintosh, both released in 1987. In 1988, Silicon Beach Software included plug-in functionality in Digital Darkroom and SuperPaint, and Ed Bomke coined the term plug-in.

Currently, programmers typically implement plug-in functionality using shared libraries compulsorily installed in a place prescribed by the host application. HyperCard supported a similar facility, but more commonly included the plug-in code in the HyperCard documents (called stacks) themselves. Thus the HyperCard stack became a self-contained application in its own right, distributable as a single entity that end-users could run without the need for additional installation-steps.

Frameworks [edit]

Software developers can use the following plug-in frameworks (organized here by programming language) to add plug-in ability to programs:

C [edit]

C++ [edit]

Objective-C [edit]

Delphi [edit]

Java [edit]

PHP [edit]

Python [edit]

.NET [edit]

See also [edit]

References [edit]

  1. Mozilla Firefox plugins – Description of the difference between Mozilla Firefox plugins and extensions under the general term add-on.
  2. Wordpress Plug-in API – Description of the Wordpress Plug-in architecture.
  3. Photoshop Plug-ins – Description of the significant impact of Photoshop Plug-in Architecture.
  4. EDT Text Editor Reference Manual, Cinnaminson, New Jersey: Unisys Corporation, 1975

Popular search requests

Extension (computing) is an object of interest for many people. For example, the people often search for Extension (computing) website, Extension (computing) blog, Extension (computing) online, Extension (computing) information, Extension (computing) photo, Extension (computing) picture, Extension (computing) video, Extension (computing) movie, Extension (computing) history, Extension (computing) news, Extension (computing) facts, Extension (computing) description, Extension (computing) detailed info, Extension (computing) features, Extension (computing) manual, Extension (computing) instructions, Extension (computing) comparison, Extension (computing) book, Extension (computing) story, Extension (computing) article, Extension (computing) review, Extension (computing) feedbacks, Extension (computing) selection, Extension (computing) data, Extension (computing) address, Extension (computing) phone number, download Extension (computing), Extension (computing) reference, Extension (computing) wikipedia, Extension (computing) facebook, Extension (computing) twitter, Extension (computing) 2013, Extension (computing) 2014, Extension (computing) in the United States, Extension (computing) USA, Extension (computing) US, Extension (computing) in United Kingdom, Extension (computing) UK, Extension (computing) in Canada, Extension (computing) in Australia, etc.

Extension (computing) is also an object of commercial interest. For example, many people are interested in Extension (computing) offers, Extension (computing) buy, Extension (computing) sell, Extension (computing) sale, Extension (computing) discounts, discounted Extension (computing), Extension (computing) coupon, Extension (computing) promo code, Extension (computing) order, to order Extension (computing) online, to buy Extension (computing), how much for Extension (computing), Extension (computing) price, Extension (computing) cost, Extension (computing) price list, Extension (computing) tariffs, Extension (computing) rates, Extension (computing) prices, Extension (computing) delivery, Extension (computing) store, Extension (computing) online store, Extension (computing) online shop, inexpensive Extension (computing), cheap Extension (computing), Extension (computing) for free, free Extension (computing), used Extension (computing), and so on.

Information source: wikipedia.org

Do you want to know more? Look at the full version of the Extension (computing) article.

HOT DESIGNS
Premium designs
Designs by country
Designs by U.S. state
Most popular designs
Newest, last added designs
Unique designs
Cheap, budget designs
Design super sale

DESIGNS BY THEME
Accounting, audit designs
Adult, sex designs
African designs
American, U.S. designs
Animals, birds, pets designs
Agricultural, farming designs
Architecture, building designs
Army, navy, military designs
Audio & video designs
Automobiles, car designs
Books, e-book designs
Beauty salon, SPA designs
Black, dark designs
Business, corporate designs
Charity, donation designs
Cinema, movie, film designs
Computer, hardware designs
Celebrity, star fan designs
Children, family designs
Christmas, New Year's designs
Green, St. Patrick designs
Dating, matchmaking designs
Design studio, creative designs
Educational, student designs
Electronics designs
Entertainment, fun designs
Fashion, wear designs
Finance, financial designs
Fishing & hunting designs
Flowers, floral shop designs
Food, nutrition designs
Football, soccer designs
Gambling, casino designs
Games, gaming designs
Gifts, gift designs
Halloween, carnival designs
Hotel, resort designs
Industry, industrial designs
Insurance, insurer designs
Interior, furniture designs
International designs
Internet technology designs
Jewelry, jewellery designs
Job & employment designs
Landscaping, garden designs
Law, juridical, legal designs
Love, romantic designs
Marketing designs
Media, radio, TV designs
Medicine, health care designs
Mortgage, loan designs
Music, musical designs
Night club, dancing designs
Photography, photo designs
Personal, individual designs
Politics, political designs
Real estate, realty designs
Religious, church designs
Restaurant, cafe designs
Retirement, pension designs
Science, scientific designs
Sea, ocean, river designs
Security, protection designs
Social, cultural designs
Spirit, meditational designs
Software designs
Sports, sporting designs
Telecommunication designs
Travel, vacation designs
Transport, logistic designs
Web hosting designs
Wedding, marriage designs
White, light designs

E-COMMERCE DESIGNS
Magento store designs
OpenCart store designs
PrestaShop store designs
CRE Loaded store designs
Jigoshop store designs
VirtueMart store designs
osCommerce store designs
Zen Cart store designs

CMS DESIGNS
Flash CMS designs
Joomla CMS designs
Mambo CMS designs
Drupal CMS designs
WordPress blog designs
Forum designs
phpBB forum designs
PHP-Nuke portal designs

ANIMATED WEBSITE DESIGNS
Flash CMS designs
Silverlight animated designs
Silverlight intro designs
Flash animated designs
Flash intro designs
XML Flash designs
Flash 8 animated designs
Dynamic Flash designs
Flash animated photo albums
Dynamic Swish designs
Swish animated designs
jQuery animated designs

WEBSITE DESIGNS
WebMatrix Razor designs
HTML 5 designs
Web 2.0 designs
3-color variation designs
3D, three-dimensional designs
Artwork, illustrated designs
Clean, simple designs
CSS based website designs
Full design packages
Full ready websites
Portal designs
Stretched, full screen designs
Universal, neutral designs

CORPORATE ID DESIGNS
Corporate identity sets
Logo layouts, logo designs
Logotype sets, logo packs
PowerPoint, PTT designs
Facebook themes

VIDEO, SOUND & MUSIC
Video e-cards
After Effects video intros
Special video effects
Music tracks, music loops
Stock music bank

GRAPHICS & CLIPART
Pro clipart & illustrations, $19/year
5,000+ icons by subscription
Icons, pictograms

 
Extension (computing) Sale - Buy now!
Super Offers
Super Offers
Custom Logo Design $149  ▪  Web Programming  ▪  ID Card Printing  ▪  Best Web Hosting  ▪  eCommerce Software  ▪  Add Your Link
© 1996-2013 MAGIA Internet StudioAboutPortfolioPhoto on DemandHostingAdvertiseSitemapPrivacyMaria Online