隨筆-57  評(píng)論-129  文章-0  trackbacks-0

           

          JSA 1.0 Alpha發(fā)布,壓縮效率提高大約10%


          壓縮算法改進(jìn):

          實(shí)現(xiàn)了自己的文本壓縮算法
          • 提高了壓縮比率以及解壓效率。
          優(yōu)化了語(yǔ)法壓縮
          • 合并連續(xù)var申明,
          • 刪除了多余var申明,
          • 刪除了多余大括弧({、}),
          • 刪除了多余分號(hào)(;)。

          UI改進(jìn):


          • 自動(dòng)編碼識(shí)別
          • 支持文件拖放
          • 支持JAVA1.4.2+ 當(dāng)jar打開(kāi)方式為java時(shí),可雙擊運(yùn)行,但,若JAR打開(kāi)方式被修改(如winrar),請(qǐng)使用如下方式:
            CMD>java -jar xx.jar
          • 格式化
            注釋只能在各語(yǔ)句之間,插在語(yǔ)句中間的注釋有可能丟失,在格式化的時(shí)候,算bug吧。
          • 壓縮參數(shù)設(shè)置
            操作->設(shè)置:
            執(zhí)行語(yǔ)法壓縮:將替換局部變量,刪除冗余語(yǔ)法。
            執(zhí)行文本壓縮:將腳本文本分詞、替換壓縮。執(zhí)行時(shí)可通過(guò)eval( 解壓函數(shù)() )方式還原。
            兼容IE5、NS3:老版本的瀏覽器對(duì)正則表達(dá)式支持優(yōu)先,是否需要兼容他們(需要采用稍微復(fù)雜一點(diǎn)的解壓函數(shù))。
            執(zhí)行文本壓縮的條件設(shè)置:設(shè)置何時(shí)采用文本壓縮,有兩項(xiàng),比率要求和大小要求;因?yàn)閑val是需要額外開(kāi)銷(xiāo)的,所以,只有當(dāng)文本壓縮的比率小于指定值且文件大小大于指定值時(shí)才采用文本壓縮。

          ANT Task


          • 默認(rèn)編碼 :取JRE的默認(rèn)編碼,可能隨機(jī)器不同而改變,所以,推薦手動(dòng)指定器編碼方式(eg:charset="utf-8"/charset="GBK")
          • jsicompile 任務(wù):編譯JSI (壓縮,預(yù)裝載編譯,定制啟動(dòng)文件)
          • jscompress 壓縮腳本

          ANT Task 示例


            jsicompiler 示例(處理JSI及其集成的第三方腳本)

              <target name="compress" depends="init">
                
            <jsicompiler destDir="ant/temp/script2" charset="utf-8" rebuildboot="true">
                  
            <fileset dir="web/scripts">
                    
            <include name="*/**/*.js" />
                    
            <include name="*.js" />
                    
            <exclude name="preload/**" />
                  
            </fileset>
                  
            <preloadgroup path="code-decorator.js">
                    
            <fileset dir="web/scripts">
                      
            <include name='js/io/__$package.js' />
                      
            <include name='js/io/request.js' />
                      
            <include name='js/io/writer.js' />
                      
            <include name='js/xml/__$package.js' />
                      
            <include name='js/xml/template.js' />
                      
            <include name='js/xml/tag.js' />
                      
            <include name='js/util/__$package.js' />
                      
            <include name='js/util/collections.js' />
                      
            <include name='org/xidea/syntax/__$package.js' />
                      
            <include name='org/xidea/syntax/syntax-parser.js' />
                      
            <include name='org/xidea/decorator/__$package.js' />
                      
            <include name='org/xidea/decorator/code.js' />
                    
            </fileset>
                  
            </preloadgroup>
                
            </jsicompiler>
              
            </target>

            jscompress 示例(壓縮普通腳本)

              <target name="test-compress">
                
            <jscompress destDir="ant/temp/script2" charset="utf-8">
                  
            <fileset dir="web/scripts">
                    
            <include name="js/**/*.js" />
                    
            <include name="*.js" />
                  
            </fileset>
                
            </jscompress>
              
            </target>

           




          評(píng)論也很精彩,請(qǐng)點(diǎn)擊查看精彩評(píng)論。歡迎您也添加評(píng)論。查看詳細(xì) >>
          推薦相關(guān)文章:
            邀請(qǐng)第三方團(tuán)隊(duì)開(kāi)發(fā)頁(yè)面裝飾器實(shí)現(xiàn)的公開(kāi)信。
            云想衣裳花想容--JSI組件模型介紹(一)
            云想衣裳花想容--JSI組件模型介紹(二)

          文章來(lái)源: http://jindw.javaeye.com/blog/77776
          posted on 2007-05-08 11:35 金大為 閱讀(131) 評(píng)論(1)  編輯  收藏

          評(píng)論:
          # re: 腳本分析、壓縮、混淆工具 JSA新版本發(fā)布,壓縮效率提高大約10% 2007-05-13 13:45 | 金大為

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 昌黎县| 华阴市| 静乐县| 弋阳县| 卢龙县| 保康县| 尚志市| 双鸭山市| 德清县| 青岛市| 德保县| 马龙县| 庆阳市| 武平县| 张家口市| 彭泽县| 芜湖市| 闸北区| 扎兰屯市| 旌德县| 景东| 承德市| 马关县| 新昌县| 建昌县| 千阳县| 博白县| 葫芦岛市| 米易县| 平阴县| 德昌县| 卓资县| 那坡县| 六盘水市| 长葛市| 华亭县| 静宁县| 蒲城县| 子长县| 武胜县| 普定县|