posts - 41,  comments - 90,  trackbacks - 0
          Openlayers項目開發(fā)完成后,需要將系統(tǒng)從開發(fā)環(huán)境轉(zhuǎn)移到生產(chǎn)環(huán)境。

          開發(fā)環(huán)境下,Openlayers框架由上百個獨立的javascript程序文件組成,通過lib目錄中的Openlayers.js
          動態(tài)加載,便于各個功能模塊的開發(fā)調(diào)試。

          Openlayers是一個非常龐大的Web地圖客戶端應(yīng)用框架,提供了很多功能模塊,通常在開發(fā)過程中不會用到全部模塊。
          將系統(tǒng)中用到的獨立javascript程序庫組織成一個Openlayers.js文件,可以減少代碼冗余,加快加載速度,
          同時也便于對代碼進(jìn)行壓縮和重編碼,在一定程度上保護(hù)軟件產(chǎn)品。

          Openlayers提供了代碼組合和壓縮工具,在build目錄下,使用Python腳本實現(xiàn)。運行該工具,需要安裝Python解釋器。
          build文件夾中提供了三種預(yù)設(shè)的配置文件,它們是:
          full.cfg    組合全部代碼
          library.cfg 組合主要代碼
          lite.cfg    組合最小代碼
          項目配置文件建議使用library.cfg或lite.cfg為模板編寫。
          配置文件中定義了四種作用不同的標(biāo)簽:
          [first]    最前執(zhí)行的代碼文件
          [last]     最后執(zhí)行的代碼文件
          [include]  在預(yù)設(shè)配置中加入的代碼文件列表
          [exclude]  從預(yù)設(shè)配置中去除的代碼文件列表
          修改[include]和[exclude]項,生成項目配置文件。

          在命令提示符下,輸入python build.py mycfg my.js(如果是windows系統(tǒng),請將python.exe加入系統(tǒng)Path路徑)
          生成的my.js就是生產(chǎn)版本的Openlayers庫文件,將my.js部署到生產(chǎn)環(huán)境,測試各項功能是否運行正常。

          build過程對代碼文件做了壓縮處理,壓縮率在40%左右,程序結(jié)構(gòu)沒有做任何改動。
          如果你想保護(hù)自己的代碼,建議使用其他工具進(jìn)行二次處理,這里推薦Google的Jscompiler,Google的很多項目都使用該工具進(jìn)行代碼壓縮和優(yōu)化。

          Google Jscompiler的使用方法:
          從http://code.google.com/intl/zh-CN/closure/compiler/下載最新版本。
          Google Jscompiler采用Java編寫,需要安裝Java 6.0運行時或開發(fā)包,如果沒有安裝請到Oracle網(wǎng)站下載。
          解壓下載的zip包,生成compiler-latest目錄,其中compiler.jar是主程序,幫助包含在README中。

          執(zhí)行Google Jscompiler請新打開一個命令提示符窗口,輸入:
          java -jar compiler.jar --help 顯示所有可選參數(shù)說明。
          壓縮編碼單個javascript程序文件,請使用下面的命令:
          java -jar compiler.jar --js=in.js --js_output_file=out.js
          壓縮合并多個javascript程序文件,請使用下面的命令:
          java -jar compiler.jar --js=in1.js --js=in2.js ... --js_output_file=out.js

          經(jīng)過Google Jscompiler處理后的Openlayers庫文件可以再減少20-30%的大小,生成的文件經(jīng)過測試沒有任何問題。
          Google Jscompiler會自動對代碼進(jìn)行分析,自動篩選出邏輯上不可能到達(dá)的代碼,給出提示。
          Google Jscompiler會對代碼邏輯流程重新組合和優(yōu)化,提高瀏覽器上的執(zhí)行效率。
          經(jīng)過Google Jscompiler重新編碼后,Web客戶端的運行速度有明顯提升。

          posted on 2010-08-04 14:44 天狼 閱讀(3500) 評論(1)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 武宁县| 淮安市| 镇康县| 永泰县| 齐河县| 新晃| 饶河县| 都昌县| 周宁县| 玛多县| 航空| 清徐县| 菏泽市| 建阳市| 扬中市| 永吉县| 汪清县| 循化| 清丰县| 淄博市| 郑州市| 松江区| 陈巴尔虎旗| 嵩明县| 扬州市| 沙田区| 上杭县| 营山县| 北辰区| 新丰县| 介休市| 静宁县| 邵武市| 平顺县| 桐城市| 宁津县| 武冈市| 广东省| 宾阳县| 万源市| 武鸣县|