Building Applications with Force.com and VisualForce(Dev401)(十八):Visualforce Pages: Introduction to Visualforce
Dev401-020:Visualforce Pages: Introduction to Visualforce
Course Objectives
1.Understand the benefits of using static resources and use them in pages.
2.Construct partial page refreshes using AJAX with Visualforce tags.
3.Create simple custom components.
4.Understand the concepts behind controllers, including their functionality and capabilities.
Assumptions
1.You have attention to detail.
2.You have basic HTML or XML skills.
3.You have an understanding of Force.com at the administrator level.
4.You are ready to learn.
Module Agenda
1.Visualforce Overview
2.Visualforce Basics
Two Types of Force.com User interface Technologies
1.page Builder
- UI generated automatically, not technical skill required
- Limited control over look and feel, but all Uis are consistent
- Limited/no control of UI behavior
2.Visualforce
- UI generated by developer/technologist
- Full control of UI behavior
- Full 'pixel level control over UI
Visualforce
1.Visualforce was officially released as part of the Summer '08 release.
2.It allows developers to completely replace the standard page layouts within the Salesforce UI with completely custom pages.
3.It uses Apex to incorporate advanced business logic functionality.
Visualforce Inline Editor
1.Visualforce offers a user-friendly, split-screen development environment.
- Simply click Save to immediately test your code!
- The inline editor also includes auto-completion and limited syntax highlighting, as well as online documentation.
- Access to the inline editor is available only in Development Mode.
1.Visualforce pages are ultimately rendered into markup.
2.This means that developers can include:
- Visualforce tags
- Force.com expressions
- HTML
- JavaScript
- Flash
- Any other code that can execute within an HTML page on Force.com
3.However, Visualforce often includes components (tags) that provide shortcuts that do the same thing with about 90% fewer lines of code that s-controls.
Visualforce Component Rendering
1.Each Visualforce component tag generates markup or other Web-enabled code behind the scenes to create the page.
2.The simplest example of this the image componet:
- this <apx:image id= "theImage" value="/img/myiamge.gif" width="220" height ="55"/>
- Becomes this:<img id= "theImage" value="/img/myiamge.gif" width="220" height ="55"/>
3.In most other examples, the component generats much more code and simplifies development.
4.To view the resulting code from any Visualforce page, right-click the page and select View Source.
Visualforce Benifits
1.Visualforce understands Salesforce metafdata and provides access to the respective user interface elements.
- For example, it automatically adds a calendar picker date entry fields.
2.It is hosted by Salesforce and tightly coupled with the Force.com platform.
- Because of this, Visualforce pages display the same performance as standard Salesforce pages.
3.Many Visualforce components automatically recreate the standard Salesforce look and feel.
4.Visualforce pages are automatically ungraded to the next Salesforce release.
5.Visualforce separates the view of information from the navigation control and the data model.
- It conforms to the Model-View -Controller development pattern.
First, a primer on Model-View-Controller
1.Model:Business data and the rules for how to use the data
2.View:user interface details
3.Controller:manages the interactions between view & model
Visualforce Pages
1.A canvas similar to standard Web development model.
2.Composed of HTML, Page tags and merge fields.
3.Ability to reference any CSS, Flex, Flash, AJAX or other Web technology.
4.Supports standard query strings for parameters, referenced via /apex/pageName URL syntax.
5.Composed on the server, not the client.
Visualforce Components(Tags)
1.Create complex standard UI elements, such as detail areas and related lists,with a single tag.
2.Built in data biding to Salesforce data.
3.Special UI elements to handle common design solutions, such as templates and data iterations.
4.Built in AJAX functionality supporting partial page refresh.
5.Over 65 components at GA.
6.Accessed through <apex:tag> syntax.
Visualforce Controllers
1.Controllers contain the logic and data reference a page uses
2.As they are created in Apex, that have full access to Apex functionality(API,Web Service,etc)
3.Pages interact with controllers through components that call data or actions.
4.Can be used to maintain state across page interactions(in wizards, for example)
Visualforce Standard Controllers
1.Standard Controllers
- Are available for all APP entities/objects, such as Account, Contact, Opportunity, etc.,as well as custom objects.
- Provide access to standard Salesforce data and behavior.
. Standard object record data.
. Standard actions like save,edit,delete.
- Are referenced by using:
<Apex;page standardController = "Contact">
Visualforce Custom Controllers
1.Custom Controllers
- Are coded to create custom behaviors or non-standard data sets.
- Can be used to create wizards or leverage callouts
- Are invloked by using:
<apex;page controoler="MyController">
Visualforce Controller Extensions
1.Controller Extensions
- Add custom behavior or additional data to controllers
- Are Invoked by using: ,apex:page standardController="Contact", extensions="MyClass, MyOtherClass">
Expressions and Data Biding
1.Visualforce uses the expression syntax (also found in merge field,formuala and s-controls) to bind components to salesforce data and actions in the page's controller.
- All content in {!...} will be evaluated as an expression.
-{!$user.Firstname} shows the current user's first name in a page.
- data context is provided to controllers by yhe ID parameter, just as in standard pages.
.https://na1.salesforce.com/mypage?id=001000000007Erj
Versioning
1.Visualforce pages and components are version-ed.
2.Previous versions of Visualforce elements remain available after new implementations are introduced,ensuring that your code works with the new release.
3.The version settings tab displays the version of each page or component.
Visualforce namespaces
1.Standard tags begin with the word apex
- Ex: <apex;page>
Apex is the namespace
2.Custom tags begin with the letter c
- Ex:<c;customtag>
c is the namespace
3.Application developers can register custom namespaces to be displayed with custom tags instedd of the letter c.
- Ex:<thirdpartcompany;customtag>
thirdpartcompany is the namespace
Incorporating Visualforce Pages
1.Visualforce pages can be incorporated into your Salesforce UI by:
- Creating links to reference the unique page URL.
- Overriding standard buttons to route to the new page
- Creating custom tables for the new page.
- Creating custom buttons and linked to route to the new page.
- Embedding pages into page layout(similar to inline s-controls).
- Adding pages to a dashboard.
- Using pages as custom help for a custom object.
Exercise 1-1: Creating a Visualforce Hello World
1.Goal(s):
- Create a simple Visualforce page.
2.Scenario:
- Universal Containers wants to get started using Visualforce. They need to understand the very basics of how to develop new pages.
3.Task:
- Enable Development Mode.
- Create a simple new page.
- Update the page to include the user name.
- Update the page to display Position detail information.
- Update the page to remove unwanted related lists.
- Update the page to create a form to edit position data.
Force.com Sites
1.Public, unauthenticated Web sites
2.Accessed from branded domain names
3.Built with Visualforce pages
4.From data and content in a Salesforce application
Force.com Site Use Cases
1.Build and run new Web applications with Force.com Sites
- Consumer reviews
- Hotel concierge service
- Event registration sites
2. Transform business applications into Websites
- Recruiting portal
3.Extend your Salesforce CRM applicaitons
- Interactive Web-to-lead forms
- Campaign landing pages
4.Run your corporate web site on our service
- Public Web sites
- Intranets
Module Review
1.What kind of content can be included in a Visualforce page?
Web content,Visualforce tags, Expression
2.What is the MVC pattern and how does it relate to Visualforce?
Model-View-Controller
3.What do {!expressions} refer to when used in Visaulforce components?
Data binding
4.What are the ways that Visaulpages can be in corporate into the rest of your user interface?
Overwrite
5.Is it always necessary to know Apex to create Visualforce pages? When does it become necessary?
No. Customization
6.What are some differences between Visualforce and s-controls?
Building Applications with Force.com and VisualForce(Dev401)(十八):Visualforce Pages: Introduction to Visualforce的更多相关文章
- Building Applications with Force.com and VisualForce(Dev401)(十六):Data Management: Introduction to Upsert
Dev401-017:Data Management: Introduction to Upsert Module Objectives1.Define upsert.2.Define externa ...
- Building Applications with Force.com and VisualForce (DEV401) (二四):JavaScript in Visualforce
Dev401-025:Visualforce Pages: JavaScript in Visualforce Module Objectives1.Describe the use of AJAX ...
- Building Applications with Force.com and VisualForce(Dev401)(十):Designing Applications for Multiple Users: Building Business Processes that You Want
Dev401-011: Building Business Processes that You Want Course Objectives1.Describe the capabilities o ...
- Building Applications with Force.com and VisualForce (DEV401) (四):Building Your user Interface
Dev 401-004:Application essential:Building Your user Interface: Module Agenda1.Custom Applications2. ...
- Building Applications with Force.com and VisualForce (DEV401) (三):Application Essential:Building Your Data Model
Dev 401-003:Application Essential:Building Your Data Model Object Relationships1.Link two objects- P ...
- Building Applications with Force.com and VisualForce (DEV401) (二) : Application Essentials:Designing Application on the Force.com Platform
Dev 401-002:Application Essentials:Designing Application on the Force.com Platform Course Objectives ...
- Building Applications with Force.com and VisualForce(Dev401)(七):Designing Applications for Multiple users:Managing your users' experience I
Dev 401-007 Designing Applications for Multiple users: Managing your users' experience part 1 Module ...
- Building Applications with Force.com and VisualForce (DEV401) (二五):Visualforce Controller
Dev401-026:Visualforce Pages: Visualforce Controller Module Objectives1.Identify the functionality ...
- Building Applications with Force.com and VisualForce (DEV401) (二一):Visualforce Componets (Tags) Library Part 1
Dev401-022:Visualforce Pages: Visualforce Componets (Tags) Library Part 1 Module Objectives1.List ke ...
随机推荐
- PHP manual-mysqli-connections-翻译
PHP manual-mysqli-connections MySQL服务器支持使用不同的传输层进行连接. 连接可以使用TCP / IP,Unix域套接字或Windows命名管道. 主机名localh ...
- Oracle密码验证函数与Create Profile
今天看到了一个oracle密码函数的东西,就在网上找文档自己做测试,刚开始看不懂,最后做完记录一下 密码函数的作用就是要将用户密码进行限制,比如申请一个网站的账号的时候,密码会要求你不少于8位,必须要 ...
- GO - if判断,for循环,switch语句,数组的使用
1.if - else if - else的使用 package main import "fmt" func main() { // 1.简单使用 var a=10 if a== ...
- nginx如何连接多个服务?
记录一下: 刚开始用nginx部署,在项目文件内touch了一个nginx.conf配置文件,然后将这个conf文件软链接到nginx的工作目录中 sudo ln -s /home/ubuntu/xx ...
- Mac结合Docker开发
Mac结合Docker开发 前几天在看Java并发实战时,在Mac上写了一个示例,结果运行后无法按照书本上运行.主要是有些命令,在Mac和Linux是有区别的,比如top, Mac上是不支持-Hp,意 ...
- python实验一
安徽工程大学 Python程序设计实验报告 班级物流管理191 姓名彭艺 学号3190505139成绩 日期 2020年3月3日 指导老师 修宇 实验名称 ...
- js的变量——基本类型保存在栈中,引用类型保存在堆中
javascript的基本类型:Undefined,Null,Boolean,Number,String 引用类型:Object,Array,Function 基本类型值在内存中占据固定大小,被保存在 ...
- 网络编程技术-----6、I/O复用实现并发服务器
网络编程技术-----6.I/O复用实现并发服务器 一.实验要求 服务器: 服务器等待接收客户的连接请求,一旦连接成功则显示客户地址,接着接收客户端的名称并显示:然后接收来自该客户的字符串,对 ...
- python3编写程序,根据输入的行列数值,生成相应的矩阵(其中元素为随机数)。
代码如下: import random n = int(input("请输入行:")) m = int(input("请输入列:")) x = y = 0 wh ...
- Head First设计模式——生成器和责任链模式
生成器 生成器模式:封装一个产品的构造过程,并允许按步骤构造. 现又一个度假计划指定,需要指定度假每一天的活动.旅馆.用餐.门票等等事情,但是每个客人的度假计划可能不太一样.例如天数.活动类型.用餐等 ...