剛才在看百度輕應用,看着看着,漸漸的就理解了為什么出現了腳本程序,以及腳本程序的優點。
一個C/C++程序,包含啟動碼,程序代碼,堆棧,數據資源,鏈接庫等。這樣的一個程序,小也要10K左右,大的,幾百兆甚至上G也很常見。
但是,有些特殊的應用,不但變化多,還要及時調整,而且其任務可能很簡單。這樣的應用,也是程序。
但是如果用常規的模式,每個服務傳遞過來一個可執行應用程序,文件有點大,而且很麻煩。
而腳本程序,只要安裝了腳本代碼的解釋器(瀏覽器),對面發送腳本文件過來,在這面就會快速進行編譯,並且調用本地的功能函數,而不必以應用程序函數的形式將其打包過來。其傳動代價,僅僅是一個文本罷了。
這個思想,和動態鏈接庫有點相近的地方,就是,自己的函數不必包含所有的功能函數,運行環境會提供的。
常規程序的運行環境是系統;腳本程序的運行環境是瀏覽器。
而百度輕應用,應該也是這種思想,建立一個應用程序解釋平台,然后開發人員編寫相應的腳本程序供用戶選擇,這樣在使用無線設備,如手機平板的時候就能很高效的下載腳本代碼,然后在解釋器上運行。而解釋器充分利用本機的資源,創建一個相應的臨時應用程序,功能絕對不會差很多。
畢竟,一個在android平台上運行的apk程序,所能操控的硬件資源受硬件的設置,就這么強的功能;而同樣平台上的解釋器程序,能用的資源也是這些,不會多,也不會少。所以將一些應用以腳本程序的形式來運行,確實會不錯。
以上都是我個人的理解。如果是這樣的話,那么百度輕應用,不過是舊詞新唱罷了~