パッカー、ユイコンプレッサーなどの動作
-
02-10-2019 - |
質問
私が知る限り、変数の名前を変更してより良い圧縮を実現するため、これらすべてのツールがどのように機能するかを理解しようとしています。
また、オブジェクトのプロパティの名前も変更しますか?そうでなければ何も使っていないので、そうではないと思います object[property]
表記、どこで property
動的に計算され、失敗する可能性があります。これは正しいですか?
したがって、この場合、すべてが1つのグローバル変数のみで名前が付けられている場合、変数名の変更には利益がありません。これは再び正しいですか?
解決
パッカーは圧縮の形を行い、一般的な単語をより短いトークンに置き換えます。それはまったく名前を変更しません。
Yuiコンプレッサーのようなツールは、ローカル変数(および引数)のみを変更しますが、一般的に使用されているオブジェクトをローカル変数に保存して、スペースの考慮事項を活用できます。 (また、ローカル変数とスコープチェーンをトップレベルまでクロールするのにアクセスするのはやや速いです。)
他のヒント
ローカル変数のみを変更できます
Yuiコンプレッサーは、JavaScriptとCascadingスタイルのシートを監督できます。
また、オプションで難読化することもできます。ただし、JavaScriptのみです。
違いを説明するために ...
模倣: :空白とコメントを削除します。
難読化: :また、模倣しますが、プログラムを変更し、変数、関数、メンバーの名前を変更し、プログラムを理解しにくくし、掘り出し物のサイズをさらに削減します
では、なぜ私たちは模倣または難読化するのですか?まったく同じ機能を維持しながらファイルサイズを縮小します。
所属していません StackOverflow