Dojo dijit 创建的最佳实践是什么?
- 纯粹的声明性方法 (D)
- 纯粹的程序化方法 (P)
- 两者的结合(D&P)
标准
- 最容易维护
- 开发速度最快
- 最直观
- 最棒的表演
- 大多数功能和灵活性
语境
我使用 Dojo 还不到一个月,最近我开始使用 dijit 库。dijit 广为人知的方面之一是它们可以以编程方式或声明方式声明。我总是喜欢在了解最佳实践的情况下使用一组新工具,并大致了解哪种方法对特定应用程序具有哪些优势/优势。
下面的信息来自对这两种风格的一些个人经验,以及我能找到的参考资料,这并不是很多。此链接是我在有关该主题的官方 Dojo 文档中找到的唯一链接,并且这篇文章提供了一些外部视角,并基本介绍了每个链接的代码如何寻找简单的场景。这两个链接都适用于旧版本的 dojo,在 1.7 版中引入 AMD 之前。
程序化
- 将 Dojo 与 HTML 分离,从而保持 HTML 的语义纯度
- 将事件处理程序和小部件放在同一个地方,提高可读性
- 似乎更容易动态地为属性分配值(例如,使用函数创建唯一 ID)
声明式
- 快速开发——直观、隐含的嵌套、像普通 HTML 元素一样定义的小部件
- 通过使用 data-jojo-* 属性实现有效的 HTML5
- 不保留 HTML 的语义纯度
- 事件处理程序来自外部脚本,造成了一些复杂性并降低了可读性
- 初始 parseOnLoad 可能会减慢前期小部件设置
关于回复的说明: 请在您的回复中说明每个标准。随意提出您认为重要的任何其他标准。我绝不是评估最佳实践的专家。
更新:
在浏览了更多关于这方面的信息后,我发现了另一篇具有类似想法的帖子,它提供了一些有用的背景信息,说明这些风格差异的含义。