Force.com Services

Force.com can be divided into four major services: database, business logic, user interface, and integration. Technically, many more services are provided by Force.com, but these are the high-level categories that are most relevant to new Force.com developers.

Database

Force.com is built around a relational database. It allows the definition of custom tables containing up to 800 fields each. Fields contain strongly typed data using any of the standard relational database data types, plus rich types such as currency values, picklists, formatted text, and phone numbers. Fields can contain validation rules to ensure data is clean before being committed and formulas to derive values, like cells in a spreadsheet. Field history tracking provides an audit log of changes to chosen fields.

Custom tables can be related to each other, allowing the definition of complex data schemas. Tables, rows, and columns can be configured with security constraints. Data and metadata are protected against accidental deletion through a “recycling bin” metaphor. The database schema is often modifiable instantly, without manual migration. Data is imported from files or other sources with free tools, and application programming interfaces (APIs) are provided for custom data-loading solutions.

Data is queried via a SQL-like language called Salesforce Object Query Language (SOQL). Full-text search is available through Salesforce Object Search Language (SOSL).

Business Logic

Apex is the language used to implement business logic on Force.com. It allows code to be structured into classes and interfaces, and it supports object-oriented behaviors. It has strongly typed collection objects and arrays modeled after Java.

Data binding is a first-class concept in Apex, with the database schema automatically imported as language constructs. Data manipulation statements, trigger semantics, batch processing, and transaction boundaries are also part of the language.

The philosophy of test-driven development is hardwired into the Force.com platform. Methods are annotated as tests and run from a provided test harness or test API calls. Test methods are automatically instrumented by Force.com and output timing information for performance tuning. Force.com prevents code from being deployed into production that does not have adequate unit test coverage.

User Interface

Force.com provides two approaches for the development of user interfaces: page layouts and Visualforce. Page layouts are inferred from the data model, including validation rules, and then customized using a What You See Is What You Get (WYSIWYG) editor. Page layouts feature the standard Salesforce look and feel. For many applications, Page layouts can deliver some or all of the user interface with no development effort.

Visualforce allows developers to build custom user interfaces. It consists of a series of XML markup tags called components with their own namespace. As with Java Server Pages (JSP), ASP.NET, Velocity, and other template-processing technologies, the components serve as containers to structure data returned by the Controller, a class written in Apex. To the user, the resulting Web pages might look nothing like Salesforce, or adopt its standard look and feel. Visualforce components can express the many types and styles of UIs, including basic entry forms, lists, multistep wizards, Ajax, mobile applications, and content management systems. Developers can create their own components to reuse across applications.

User interfaces in Visualforce are public, private, or some blend of the two. Private user interfaces require a user to log in before gaining access. Public user interfaces, called Force.com Sites, can be made available to anonymous users on the Internet.

Integration

In the world of integration, more options are usually better, and standards support is essential. Force.com supports a wide array of integration technologies, almost all of them based on industry-standard protocols and message formats. You can integrate other technologies with Force.com using an approach of configuration plus code. Here are some examples:

Image Web services—Apex Web Services allows control of data, metadata, and process from any platform supporting SOAP over Hypertext Transfer Protocol (HTTP), including JavaScript. This makes writing composite applications that combine Force.com with technology from other vendors in many interesting and powerful ways possible. Force.com’s Web services API has evolved over many years, spanning more than 20 versions with full backward compatibility.

Image REST—The Force.com database is accessible via REST calls. This integration method is much lighter weight than Web services, allowing Web applications to query and modify data in Force.com with simple calls accessible to any development language.

Image Business logic—Business logic developed in Apex can be exposed as a SOAP or REST service, accessible with or without a Force.com user identity. For SOAP services, Force.com generates the Web Service Definition Language (WSDL) from your Apex code. Additionally, Force.com converts WSDL to Apex bindings to allow access to external Web services from within the platform.

Image Inbound and outbound email—You can create virtual email inboxes on Force.com and write code to process the incoming email. Sending email from Force.com is also supported.

Image Mashups—Force.com provides an API for making HTTP requests, including support for client-side certificates, Secure Sockets Layer (SSL), proxies, and HTTP authentication. With this, you can integrate with Web-based resources, everything from static Web pages to REST services returning JavaScript Object Notation (JSON).

Image Across Salesforce customers—Salesforce-to-Salesforce (S2S) is a publish-and-subscribe model of data sharing between multiple Force.com environments. If the company you need to integrate with already uses Force.com and the data is supported by S2S, integration becomes a relatively simple configuration exercise. There is no code or message formats to maintain. Your data is transported within the Force.com environment from one tenant to another.

If your requirements dictate a higher-level approach to integration, software vendors like IBM’s Cast Iron Systems, Informatica, MuleSoft, SnapLogic, and Jitterbit offer adapters to Force.com to read and write data and orchestrate complex transactions spanning disparate systems.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.133.142.2