Introduction to Plug-ins

Previous page...

Although current versions of Web browsers are pretty versatile, and are getting more powerful each year, there are still limitations to what they can do.

To use and display many file formats you need to install special plug-ins or define specific helper applications.

This page looks at the development of plug-in technologies and considers the advantages and disadvantages of using them.

Plug-ins require the installation of additional software in your system.


How are Plug-ins used?

Multimedia
This includes players for audio, video, animations, and multimedia presentations.

VRML
VRML plug-ins display three-dimensional, online "worlds" created using the Virtual Reality Modelling Language. These "worlds" are filled with 3-D objects that you can move around and through, and you can (occasionally) interact with.

Business
Plug-ins are now available for many business uses. The Adobe Acrobat PDF (portable document format) viewer is a typical example. Others include Excel spreadsheet viewers and Word document viewers. Many business applications are designed specifically for intranet use.

Plug-ins enable you to customise your browser so that it can interact with third-party products and industry media standards. Plug-ins supplement and complement other technologies such as OLE and Java.


Enhancing the Browser

Early in the development of the Web, it became obvious that website developers and Web users needed greater variety of content than Web browsers could provide. Text, graphics, and HTML elements were too limited for many people's needs.

A browser's built-in capabilities are limited to generic file formats such as GIF and JPEG images. The range of widely supported generic file types is slowly growing. For instance the, Internet Explorer and Netscape Navigator now support a range of sound formats, but sometimes you may wish to view a file format that is not supported.

There are two ways to do this:

  • Plug-ins offer a way of including just about any content type.

  • Helper applications can be defined that deal with the file types instead of the browser.

    Plug-ins and helper applications both view content that the browser cannot handle. They both function in essentially the same way. When the browser comes across a file type that it does not support, it checks its preferences to see whether a plug-in or helper application has been defined that can handle the file type. If there is a plug-in or a helper application that can do the job it is launched and it deals with the file.

    These plug-ins and helper applications can be seen as components in an object-oriented web, which is included in the next section.


    An Object-Orientated Web

    As far as the Web is concerned, anything that's embedded within an HTML page is considered an object.

    Graphics, hyperlinks, text, forms, multimedia files, even the HTML tags themselves are all objects.

    For many of the common object types such as GIF, JPG, and HTML, the browser itself can handle the object type. It is possible to reconfigure most browsers to have other common types handled by other helper programs or plug-ins.

    Before a browser can tell whether it can display a file itself or whether it needs a helper application or plug-in, it must determine the object type it's dealing with.

    Browsers identify files on the Web by their MIME type.


    MIME Types

    MIME stands for Multipurpose Internet Mail Extensions, although this is a little misleading. MIME type definitions are not just for Internet mail, they are used to identify any file that can be transmitted over the Internet.

    Web pages usually consist of a collection of several files, rather than just a single file. For example, the text portion is usually a single HyperText Markup Language (HTML) text file, and each graphic is a separate .GIF or JPEG format file. When your browser reads a Web page, the server sends all this data as a stream, identifying each section with a MIME type definition.

    A MIME type definition consists of two parts:

    type/subtype

    For example:

    image/gif

    Before sending a file to a browser, a server sends the MIME type definition for that file. The browser reads this definition and looks to see whether it can handle the file internally, or whether a helper application or plug-in is defined for the file.

    For this system to work properly, the server must know the correct MIME type definition to transmit to the browser for each file type. the Web administrator handles this setup.

    In the example above the server would be told to transmit any file ending with .GIF to the browser with an image/gif MIME type.

    In the browser preferences you can set the MIME types and the helper applications and plug-ins that handle them. In Netscape Navigator you choose Edit, Preferences and Applications. In Internet Explorer you choose Edit, Preferences and File Helpers.

    In the preferences you can define how the browser deals with a file type that it cannot handle itself. You generally have the following options:

    1. Define a helper application
    2. Use a plug-in
    3. Save the file to disk
    4. Ask the user each time what to do

    With most plug-ins and helpers this MIME business is of no interest to the user because MIME type registration for plug-ins is taken care of automatically during installation.


    Installing and using a Plug-in

    Installing a plug-in is much easier than setting up a helper application. You don't have to worry about defining MIME types as most plug-ins are self-installing. Some plug-ins are supplied as compressed files that you must uncompress before you install them. For a few plug-ins, you must move some files to the proper directories manually.

    Some browsers can automatically assist you in the installation of plug-ins if you come across a file type you don't have a plug-in for. They will direct you to the source of a suitable plug-in or install one automatically when prompted.

    You activate a plug-in only by opening a Web page that initiates it. Often you don't even see the plug-in at work.

    When the browser launches, it notes any available plug-ins but does not load any into memory. So a plug-in uses up memory only when needed. You should still be aware of memory allocation, because several plug-ins may be in use at any one time.


    The appearance of Plug-ins

    A plug-in may work in one of three ways:

    Embedded as a window within your Web page
    Example: The Shockwave plug-in which plays Director movies appears as a rectangular shape in the Web page.

    Full-screen, taking over the entire browser window
    Example: The Adobe Acrobat viewer is a full-screen plug-in that incorporates its own control bar.

    Hidden with no visible elements
    Examples of hidden plug-ins include audio players or file decompression engines.

    Sometimes a plug-in proves so useful that it becomes included in the browser. The audio capabilities of many browsers developed in this way.


    Setting Helper Applications

    Helper applications are another way of dealing with files that your browser cannot handle. Most browsers allow you define external stand-alone programs as helper applications for specific MIME types. The browser launches the helper application when it encounters a file of the defined MIME type.

    For example, if you encounter a file of Rich Text Formal (RTF) format and your browser cannot view it you can specify which other application can try to deal with it.

    In your browser preferences you can set the helper application for .rtf files to be Word or Claris Works, for instance. You must obviously have some idea which applications may be able to handle the file.

    Now if you browse a Web page that contains an RTF file the browser will launch the application you have defined as helper for the .rtf MIME type.


    Helper Applications vs. Plug-ins

    After helper applications launch, they run within their own windows as usual.

    Plug-ins, however, run within the browser's window and appear to be part of the Web page. If there are any additional controls needed by the plug-in, they appear embedded in the Web page.

    Helper applications have many of the same uses and advantages as plug-ins:

    • They extend your browser's capability to deal with more file types

    • They load into memory only when needed

    • You can install only the helper applications that you need

    However, helper applications have some disadvantages:

    • They are often obtrusive, big and unwieldy

    • They are not integrated into your Web browser so you have to learn how to use each one

    • They are not standardised so Web page developers can't design pages with their use in mind

    Plug-ins are small, task-specific, standardised, integrated and generally easy to use. In fact after installing many applications you will not notice that you are using them.


    Security and Privacy concerns

    Some people have concerns about the potential system security problems that plug-ins present. Plug-ins can have access to data on your computer system so the possibility of a malicious or badly written plug-in damaging your data is a real one.

    To demonstrate we have chosen one of the most well-known and trustworthy developers to demonstrate plug-ins. Be aware that there are cowboy developers, as there are in every trade, and that their products are not always as safe as these.

    Back to Top of Page

    © 2003 Ashley Preston 

    Computeach International Ltd

  •