編程--先後端分離

1.前端後端關注點前端

1).前端: 頁面表現,速度流暢,兼容性,用戶體驗
2).後端: 高併發/高可用/高性能,安全,存儲,業務

2.WEB先後端分離(前端靜態化、後端數據化、平臺無關化,架構分離化)後端

1).未分離時期
    A).存在問題
        a).前端沒法單獨調試
        b).前端不可避免會遇到後臺代碼
2).半分離時期(Ajax 與 SPA(Single-page application)應用結合方式)(瀏覽請求---RESTFUL接口---返回JSON數據,解析,渲染)
    A).存在問題
        a).JS存在大量冗餘,在業務複雜的狀況下,頁面的渲染部分的代碼,很是複雜
        b).返回JSON數據比較大的狀況下,渲染的十分緩慢,會出現頁面卡頓的狀況
        c).SEO很是不方便,因爲搜索引擎的爬蟲沒法爬下JS異步渲染的數據,致使這樣的頁面,SEO會存在必定的問題
        d).資源消耗嚴重,在業務複雜的狀況下,一個頁面可能要發起屢次HTTP請求才能將頁面渲染完畢(移動端影響大)
 3).分離時期(前端View/Controller | 後端Model,業務處理/數據)
        A).存在問題
            a).人員問題(後端學習成本--VUE.JS/NODE.JS)
            b).產品迭代週期問題(新增了接口制定流程/先後端聯調流程)
            c).前端須要學習業務(視覺交互+業務)
        B).存在優點
            a).前端JS能夠作很大部分的數據處理工做,對服務器的壓力減少到最小
            b).後端錯誤不會直接反映到前臺,錯誤界面較爲友好
            c).後端很難去探知前臺頁面的分佈狀況,而這又是JS的強項;JS又是沒法獨立和服務器進行通信。先後端各盡其職能夠最大程度的減小開發難度

3.NODE.JS(Ryan Dahl、2009.5)安全

1).特色(獨特異步、非阻塞I/O)    適合運用在高併發、I/O密集、少許業務邏輯的場景
2).NODE做爲中間件優點
    A).適配性提高(後端專一本身的業務邏輯開發,前端專一產品效果開發)
    B).響應速度提高(分擔簡單邏輯運算,靈活)
    C).性能獲得提高(內網階段拼接多個後臺API數據)

4.VUE.JS(尤雨溪、2014.2) | REACT.JS(FACEBOOK、2013.3)服務器

1).共同點
    A).基於Virtual DOM模型
    B).提供了響應式 (Reactive) 和組件化 (Composable) 的視圖組件
    C).將注意力集中保持在覈心庫,而將其餘功能如路由和全局狀態管理交給相關的庫
2).REACT優勢與缺點
    A).優勢
        a).靈活性和響應性
        b).虛擬DOM
        c).豐富的JavaScript庫
        d).可擴展性
        e).不斷髮展
        f).WEB或移動平臺
    B).缺點
        a).陡峭的學習曲線
3).VUE優勢與缺點
    A).優勢
        a).易於使用(基於HTML的標準模板)
        b).更順暢的集成
        c).更好的性能,更小的尺寸
        d).簡單的學習曲線(HTML、JavaScript)
        e).適應性(提供無障礙的遷移,簡單有效的結構和可重用的模板)
    B).缺點
        a).可能會出現大規模應用程序開發方面的問題
相關文章
相關標籤/搜索