Portlets, Widgets, and APIs.
I was at a meting last week at which I heard several terms used that were mysterious to me. While I had a general understanding of portals, I needed definitions of portlets, widgets, and APIs.
IBM definition of a Web portal: "Portals provide a secure, single point of interaction with diverse information, business processes, and people, personalized to a user's needs and responsibilities." One way to think about portals is that they provide a consistent and uniform way to interact with applications in the same way that Window managers (like Microsoft Windows) interact with operating systems. A portal is a central place for making all types of information accessible to a defined audience. Portals can be roughly broken down into two major classifications: the enterprise information portal and the content management portal. Most portals combine both functions. myU is a portal--it enables participants to asynchronously get personalized information, interact with friends and colleagues, and create and distribute dynamic Web content. See https://www.myu.umn.edu/metadot/index.pl
Portlets are pluggable user interface components that are managed and displayed in a Web portal. Portlets produce fragments of markup code that are aggregated into a portal page. Portlets, according to the WebSphere Portal site, are "visible active components users see within their portal pages... In the simplest terms, a portlet is a Java servlet that operates inside a portal." Portlet applications include e-mail, weather reports, discussion forums, and news.
A Web widget is a portable chunk of code that can be installed and executed within any separate HTML-based Web page by an end user without requiring additional compilation. They are akin to plugins or extensions in desktop applications. Other terms used to describe a Web Widget include Gadget, Badge, Module, Capsule, Snippet, Mini and Flake. Web Widgets often but not always use Adobe Flash or JavaScript programming languages.
An application programming interface (API) is a source code interface that a computer system provides in order to support requests for services to be made of it by a computer program. API stands for Application Programming Interface. Windows APIs are the function calls that are the fundamental building blocks of Windows programming. Each time Windows is loaded, or whenever Windows programs are run, many API calls are made. API calls manage memory, create and destroy windows, read keyboard and mouse actions, draw graphics, etc.
The term API is used in two related senses:
A coherent interface consisting of several classes or several sets of related functions or procedures.
A single entry point such as a method, function, or procedure.
-- Peggy Johnson, Associate University Librarian