【发布时间】:2015-10-06 20:21:47
【问题描述】:
我喜欢 Hedger Wang 在他的帖子“使用 Closure Compiler 编写更好的面向对象的 JavaScript”http://calendar.perfplanet.com/2010/coding-better-object-oriented-javascript-with-closure-compiler/ 中提出的想法,但是他的示例并没有涵盖所有内容,并且有些示例似乎使用了与其他示例不同的样式.我一直在网上搜索特定问题的解决方案,并找到了一些解决方案,但每个解决方案似乎都与难题的其他部分不兼容。
谁能提供一个完整的工作示例,同时涵盖以下所有内容:
- 使用具有高级优化功能的 Google 闭包编译器
- 使用注解,包括@type、@constructor、@enum...
- 为外部库使用 externs 文件(例如 jQuery)
- 导出用户定义的库“类”及其所有“公共函数”(包括此类的 externs 文件)
- 在自己的文件中有另一个“类”,它使用该库而无需重新编译该库
- 避免当前和未来的命名冲突(命名空间?)
- 尽可能避免使用全局变量(每个文件 1 个对我来说似乎是一个合理的目标。全局名称可以出现多次 - 我不介意每个文件进行一次搜索和替换,但我不想这样做不止一种这样的操作)
- 包括用于编译整个内容的命令行
- 没有错误或警告
- 继承、接口、...的示例很好,但我现在可以不用这些了
好的,我知道这有点像清单,这就是为什么我无法让所有东西协同工作,但在我看来,这似乎是大中型项目的基本要求。我会继续用头撞墙一段时间,但如果有人已经做过这样的项目,我将永远感激不尽。
【问题讨论】:
标签: javascript optimization compiler-construction closures