Visualforce vs Lightning

利稳
2023-12-01

导语:
很多人在最初构建系统的时候都会有疑惑,这个系统的画面用VF好呢还是Lightning好呢。VF画面和Lightinng画面到底有哪些区别?
这篇文章就是想要解释这个问题,但是因为水平有限所以只能说尽力。
Lightning仍然在不停的完善中,仍然没有达到完善的地步,与其说Lighting没有达到完善的地步,不如说SFDC本身也是在不停的完善中,这种始终处于不满和发展中的状态,才是万事万物最根本的状态。
随着网络和移动设备的不断更新换代,Salesforce系统也需要支持不同设备,不同网络的需求,同时画面的多样性同样变得越来越重要。
例如现在的画面的校验往往都是客户端直接返回结果很少能看见需要刷新一下画面才能看到,
我个人的理解Salesforce就是为了解决这个问题所以研发出来了Lightning这个框架。

Visualforce

VF是以画面为中心,我们要在一个画面上完成数据的操作,从而反应到DB里边去,但是他的画面十分单调,渲染起来十分困难,因为他依赖于服务器端的相应,往往使用起来比较慢而且加载过多东西还会崩掉。
UI Generation
	服务器端-客户端

Workflow
用户发送请求
服务器端处理画面请求生成HTML返回给客户端的浏览器
浏览器显示HTML
客户操作画面提交之后回到第一步
Advantages
真实可靠
容易实现,开发迅速
可以很容易的把大的Application拆分成小的画面
所有资源与Metadata整合
Disadvantages
客户交互有限
有延迟
Continue using Visualforce
- 当开发一个以画面为中心的,并且有少量的交互的画面的时候
- 如果你决定使用第三方前端框架(AngularJS or React )的时候(VF可以当作容器)
- 如果你的客户用的一直是Classic版本的话
- 如果要用使用不用授权可以访问网页的时候(Lightning暂时不支持这个访问)
- 如果你有需求需要将画面显示成PDF的时候(Lightning暂时不支持)
- 如果你往一个用VF开发的系统里添加功能的时候。

Lightning

lighting是以App为中心,在客户端用Javascript为客户提供多种多样的体验,最后用Apex和Salesforce系统通信。他能很好的支持桌面App和Mobile。

UI Generation
客户端
Workflow
客户发送App或者组件的请求
App或者组件的集合(bundle)返回给客户端
浏览器加载App或者组件的集合(bundle)
JS生成画面
当客户和画面进行交互时JS根据需求修改App或者组件的集合(bundle)并返回到第一步
Advantages
无论是交互还是速度都大大都提升了客户体验性。
遵循Salesforce的用户体验原则
资源都和metadata关联,提高开发人员的体验(Console)
Disadvantages
学习起来比VF难一些
开发起来比VF复杂一些
Lightning components仍然有些功能不支持
out-of-the-box components仍然有数量限制
When you should use Lightning

  • 当开发手机端画面的时候
  • 当需要大量JS来提高客户交互体验的时候
  • 当没有足够的开发人员并且需求用Lightning App Builder能够实现的时候
  • 开发原形的时候
  • 开发一个社区的时候(Community)
  • 当你准备投入一个新的技术或者第一次使用Salesforce开发的时候

学得必教,按需采用,随时更新。

 类似资料:

相关阅读

相关文章

相关问答