<delect id="53lz1"></delect><cite id="53lz1"><sub id="53lz1"><del id="53lz1"></del></sub></cite>

    <em id="53lz1"><font id="53lz1"><address id="53lz1"></address></font></em>

    <sub id="53lz1"></sub>
    <mark id="53lz1"></mark>

    <font id="53lz1"></font>

    <sub id="53lz1"><menuitem id="53lz1"><mark id="53lz1"></mark></menuitem></sub>

          <thead id="53lz1"></thead>
          首頁>>技術前沿>>B/S,C/S軟件系統開發
          小程序的這些事,你懂嗎?
          作者:西安軟件開發公司 | 原創 來源:西安微信小程序開發 | 時間:2018年8月24日| 點擊:0次 | 【評論】

           

                     我想從技術的角度來談談我對微信小程序的理解,我覺得小程序本身是一個非常優秀的Hybrid App的技術方案。有很多值得學的地方,可以應用到我們Hybrid App的技術方案設計中來。了解和學習小程序技術原理也能更好的優化我們的代碼。

                    

           

          渲染層和邏輯層分離

           

                   相比于之前常見的Hybrid的方案,小程序使用了雙線程模型:小程序的渲染層和邏輯層是是分開的,邏輯層通過JSCore來解析和執行,渲染層是通過webview來渲染。之前的常見Hybrid離線包的方案大多使用webview同時實現頁面的渲染和js的解析。這樣做的的結果就是隔離了js的runtime,在js代碼中無法操作webview中的DOM對象和BOM對象。Js無法做任何和頁面渲染有關的操作。只能通過setData把數據從JsCore傳遞到webview。

           

          獨立的JS運行環境,相比于webview同時處理頁面的渲染和JS的執行帶來了一些好處:

           

                   js無法動態的在頁面插入節點和干預頁面的渲染,解決了安全和管控的問題,否則小程序的上線審核就變得毫無意義。
                   渲染層和邏輯層的分離,減輕了webview的壓力,js的執行和頁面的渲染可以并行,不會出現js執行卡主頁面渲染的情況。
                    多個頁面可以共享一個JS運行環境,數據很方便的共享,整個小程序的生命周期共享同一個上下文,接近App的體驗。


          壞處在于:

                  多了很多webview和JSCore數據傳輸的消耗,數據需要序列化成字符串格式進行傳輸。


          離線包加載

                  離線包加載,常見的Hybrid App通過webview加載H5頁面,前端頁面都是放在服務器端。雖說保證了靈活性。但是加載性能收網速影響大。頁面切換白屏時間長。小程序離線包的加載方式。一次性加載所有的前端資源到本地再解壓。大大提升了用戶體驗。不過微信官方為了防止下載離線包的時間過程,也嚴格限制了小程序包的體積。(分包加載情況下子包大小不能超過2M,也就是初次打開加載的資源不能超過2M)

          多webview架構


                  多webview的頁面架構,小程序每新開一個頁面,都會用一個新的webview來渲染。為了防止webview對內存的消耗。小程序限制層級不能超過10層。

          預加載webview


                  預加載webview,微信會預加載多一個wkwebview(ios平臺)放后臺,用戶打開小程序時省去初始化wkwebview時間。

          此內容DOC下載 此內容PDF下載

          【全文完】
          關鍵詞標簽: 小程序 
          0 ([$-頂稿人數-$])
          0 ([$-踩稿人數-$])

          版權聲明:

          1、弈聰軟件網站內容中凡注明“來源:XXX(非陜西弈聰網站)”的作品,轉載自其它媒體,轉載目的在于傳遞更多信息,其中涉及的網站建設,網站優化,APP開發,微信小程序開發,大數據平臺開發,區塊鏈技術開發等軟件開發技術細節并不代表本站贊同支持其觀點,并不對其真實性負責。對于署名“陜西弈聰”的作品系本站版權所有,任何人轉載請署名來源,否則陜西弈聰將追究其相關法律責任。

          2、本站內容中未聲明為“原創”的內容可能源自其它網站,但并不代表本站支持其觀點,對此帶來的法律糾紛及其它責任與我方無關。如果此內容侵犯了您的權益,請聯系我方進行刪除。

          向日葵大人版视频app欧美日韩在线视频!_老子午夜不卡电影院_最新国产高清Av在线_综合亚洲日韩AV

          <delect id="53lz1"></delect><cite id="53lz1"><sub id="53lz1"><del id="53lz1"></del></sub></cite>

            <em id="53lz1"><font id="53lz1"><address id="53lz1"></address></font></em>

            <sub id="53lz1"></sub>
            <mark id="53lz1"></mark>

            <font id="53lz1"></font>

            <sub id="53lz1"><menuitem id="53lz1"><mark id="53lz1"></mark></menuitem></sub>

                  <thead id="53lz1"></thead>