Over the past several years,
Salesforce has created a comprehensive platform for building on-demand applications.
Like other sophisticated application development platforms, the
Force.com platform offers separate tools for defining:
- The structure of the data—that is, the data model
- The rules that detail how that data can be manipulated—that
is, the business logic
- The layouts that specify how that data should be displayed—that
is, the user interface
While the tools for building the data model
and business logic for applications are powerful solutions that run
natively on
Force.com platform servers, the existing tools for defining user interfaces
have had certain limitations:
-
Page layouts, the point-and-click tool that allows application
developers to organize fields, buttons, and related lists on record
detail pages, do not provide much flexibility in how sets of information
are displayed. Fields must always appear above related lists, buttons
must always appear above fields, and s-controls and custom links can
only be placed in particular areas.
-
S-controls, the tool that allows application developers
to display custom HTML in a detail page or custom tab, provide more
flexibility than page layouts, but:
- Execute from within a browser, causing poor performance if displaying
or updating values from more than a few records at a time
- Do not provide an easy way to give custom user interface elements
the same look-and-feel as standard Salesforce pages
- Require developers to enforce field uniqueness and other metadata
dependencies on their own
For these reasons, Salesforce has introduced Visualforce, the next-generation solution for building sophisticated custom
user interfaces on the Force.com platform.