繁体   English   中英

缩小JS和CSS有什么风险吗?

[英]Is there any risk in minifying JS and CSS?

我在嵌入式系统上有一个复杂的Web应用程序,很快就会进行测试。 目前,所有文件都以源代码形式进行调试。 我绝对需要来缩小所有的JS和CSS,我想知道是否有任何机会的东西可能出错。 测试缩小的代码或源状态是否更好?

谢谢。

如果宇宙射线穿透你的构建服务器的情况并在缩小发生时击中记忆,它可能会破坏一切。 但是,这种可能性非常小。

构建中的另一个步骤将始终引入复杂性并且可能存在错误,尤其是在修改文件时。 您的测试将发现,因为您应该始终测试您计划部署到生产的内容。 如果部署缩小的代码,则测试缩小的代码。

缩小是如此广泛使用,以至于大多数工具都非常成熟和强大,在检测正在使用和不在使用的内容时具有极好的准确性。 他们非常擅长删除以不寻常方式使用的代码。

但是,缩小器可能会决定某些内容未被使用且不正确。 在这种情况下,您的单元和/或集成测试应该失败,您将能够更改代码或告诉minifier保留缺少的部分。

这些修复非常快速且通常很明显,因此拥有一些小文件(而不是许多大文件)的优势几乎总是超过它们。 由于minifiers重命名代码或完全删除它,即使对应用程序进行简单的冒烟测试通常也足以暴露任何错误。

例如,Google的闭包编译器有一个关于处理需要保留的全局和外部变量,导出和未使用代码的教程

通常,原始代码和缩小代码之间没有功能差异。 缩小过程只应在缩小代码时对代码进行安全更改。

但是,我总是说任何复杂到足以真正有用的系统也都有错误。 即使您不太可能偶然发现缩小代码中的错误,它仍然是可能的。

我建议你测试缩小的代码。 您也许可以使用未经编程的代码运行第一个测试,因为调试未经编译的代码要容易得多。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM