New Visual Dev Tool Unveiled at Dreamforce
- By John K. Waters
Developers will soon have a new set of tools for building custom user interfaces, complements of hosted customer relationship management solution provider Salesforce.com. Unveiled last week at the company's semi-annual Dreamforce conference, Visualforce is designed to allow developers to use the company's Apex language to create new interfaces for their Salesforce.com apps. With Visualforce, developers can build user interfaces in HTML, AJAX, or Adobe's Flash.
Salesforce plans to include Visualforce as a service within its development platform, which was rebranded at the show as Force.com. The company now groups all of its Apex components under the Force.com banner.
Apex is a Java-like programming language designed to allow developers to write code that runs on the Salesforce.com servers, with no additional infrastructure requirements. It's designed to allow them to develop apps and features deployed entirely on demand. Applications built with Apex code are supported by the Salesforce.com multitenant environment, eliminating the need for operating systems, databases, app and Web servers, data centers, or other infrastructure software.
During his conference-opening keynote, Salesforce.com CEO Marc Benioff described Force.com as a "platform-as-a-service," a new model that he said will give customers the ability to run multiple applications within in the same Salesforce instance with identical security settings, data models and user interfaces. Benioff told attendees that Force.com would be available sometime late next year.
"Platform-as-a-service," explains David Bradshaw, principal analyst at Ovum, refers to an online platform combined with the application development, data storage and other tools required to run multitenanted massively scalable applications.
Visualforce "adds spice to the mix," Bradshaw says. It's "a tool for building user interfaces that [are] quite different from the traditional Salesforce look and feel, and that also can run on different devices...," he explains -- everything from kiosks to mobile phones. "Visualforce removes a major restriction on the appeal of Salesforce's platform to third-party developers. Until now, any applications on the Salesforce platform had to look like Salesforce's own applications.… This doesn't matter too much for applications on the AppExchange because [they're] targeted on the Salesforce customer base, either directly (they are extensions to Salesforce's capabilities) or indirectly (they are aimed at the Salesforce user base). In contrast, Visualforce makes it possible to write 'independent' applications that look nothing like 'traditional' Salesforce applications and that can be aimed at a wider audience."
Visualforce relies on a page-based model built on current Web presentation technology. It adds a component library for incorporating common interface elements. And it leverages the data, logic and workflow capabilities found in the Force.com platform. Stretching the metaphor to the breaking point, Benioff called Visualforce a "user-interface-as-a-service," because it's designed to allow developers to create a unique user experience for any device or OS. "You can rip apart pages and put them back together anyway you want," Benioff said.
Visualforce's feature list includes:
- Pages, which allow developers to create pages using standard Web technologies.
- Components, which allow companies to assemble current user interface elements in a new UI.
- Logic Controllers for creating user interface behavior.
Visualforce was unveiled at the Dreamforce show, but the company released only a developer preview so far. Salesforce plans to make the tool generally available in the fourth quarter.
John K. Waters is a freelance writer based in Silicon Valley. He can be reached