Visualforce vs Lightning

導語:
很多人在最初構建系統的時候都會有疑惑,這個系統的畫面用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開發的時候

學得必教,按需採用,隨時更新。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章