【问题标题】:CommonJS better than Namespacing in Titanium Apps?在 Titanium 应用程序中 CommonJS 比命名空间更好?
【发布时间】:2012-02-21 19:04:29
【问题描述】:

Appcelerator 推荐在 Titanium 应用程序中使用 CommonJS 模块:https://wiki.appcelerator.org/display/guides/Mobile+Best+Practices

但是,在他们的文档中,我找不到合理问题的合理答案:为什么?

CommonJS 做了哪些好的命名空间没有做的事情?据我所知,这只是一种包含模块的方式!

编辑: 具体来说,在 Titanium 环境中使用 CommonJS 可以获得哪些好处?

【问题讨论】:

    标签: javascript design-patterns titanium commonjs


    【解决方案1】:

    CommonJS modules 不仅仅是命名空间。它还可以帮助您组织代码并定义模块依赖项(使用 define 或 require),这两者在正常命名空间中都不会强制执行。

    当然,您可以通过某种方式自己完成所有这些工作,但最后但并非最不重要的一点是,CommonJS 已成为一个事实上的标准,依赖标准通常比滚动您自己的包、依赖项和命名空间框架或指南更好。

    【讨论】:

    • 另外:1. 保持全局命名空间干净。 2.您可以轻松地使用模拟模块覆盖真实模块以进行单元测试。 3. 比长命名空间字符串更简洁。 4. 命名空间已经九十年代了。
    • 谢谢大家,这真的很有帮助,但是我真的需要更多地了解为什么 CommonJS 在 Titanium 环境中是一个好主意!?
    • 什么平台都没有关系。 CommonJS 模块在任何基于 ECMAScript 的应用程序中都是一个好主意。
    • 是的,但我希望得到更具体的 Titanium 答案。
    • 钛的具体答案是:因为他们推荐使用它。请参阅上面的答案了解原因。这些正是与 Titanium 一起使用时的好处。我不确定您还在寻找什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-24
    • 2015-03-06
    • 1970-01-01
    • 2012-11-01
    • 1970-01-01
    • 2012-01-26
    • 2019-06-18
    相关资源
    最近更新 更多