Actionscript 3 AS3源代码的熵
我正试图决定是为一组复杂的可配置业务逻辑规则生成AS3代码,还是将它们表示为数据,并在AS3中编写一个状态机来解释它 我的目标是获得最小的编译swf大小。速度不是问题。实现复杂性也不是一个问题。(当然,两者都在合理范围内。) 我不能透露足够的细节,我知道我可能应该做实验而不是提问,但我的问题是: 当编译为swf时,AS3源的平均压缩比是多少?每千字节的源代码有多少字节的swfActionscript 3 AS3源代码的熵,actionscript-3,size-reduction,Actionscript 3,Size Reduction,我正试图决定是为一组复杂的可配置业务逻辑规则生成AS3代码,还是将它们表示为数据,并在AS3中编写一个状态机来解释它 我的目标是获得最小的编译swf大小。速度不是问题。实现复杂性也不是一个问题。(当然,两者都在合理范围内。) 我不能透露足够的细节,我知道我可能应该做实验而不是提问,但我的问题是: 当编译为swf时,AS3源的平均压缩比是多少?每千字节的源代码有多少字节的swf (我完全理解,答案充其量只是一个非常粗略的数字。)请记住,SWF文件已经经过zlib压缩,因此在大多数情况下,可以通过数
(我完全理解,答案充其量只是一个非常粗略的数字。)请记住,
SWF
文件已经经过zlib压缩,因此在大多数情况下,可以通过数据方式或代码方式消除任何相对增益
如果初始加载速度是您所追求的,那么您始终可以将代码块分解出来,并根据需要从另一个SWF文件中加载它。有关已编译SWF的一些事实:
- 类名被保留
- 成员名称将被保留
- 局部变量名不被保留
- 注释和空白被删除
您的状态机想法似乎是最有前途的——代码只编写一次,规则可以用简洁的方式编写。如果你能把小的数字压缩成一个整数,那就更好了(AS3中没有小于4字节的整数和整数)。不,我只关注大小和大小。那么,不管怎样,代码的比率是多少?嗯,但是编译后的代码是用zlib压缩的。。。很难说我的状态机数据是否比编译代码更易于压缩。这就是为什么我要数字…为什么不做实验呢?添加一些函数和度量字节。硬比率或“正确”比率并不存在,你需要自己的数字。