一年多以来,我一直在使用 Dojo 和 Dijit 开发基于浏览器的 IDE。Dojo 是一个很棒的框架。但是,除非您是 CSS 超人,否则使用 Dojo 创建类似 IDE 的界面很麻烦,而且会浪费大量时间。我对 HTML5、JavaScript 和 CSS 有很好的理解。构建我需要的 UI 需要我通过反复试验发现的几个 CSS hacking。从 UI 设计到实现没有系统的方法,我害怕更改 UI 布局,因为任何简单的更改都会破坏 UI,主要是通过在我不需要的 Dijit 窗格中添加不相关的滚动条。(复杂的 UI 有 4-5 级嵌套窗格,主要包括边框容器和内容窗格)
最近我遇到了 SproutCore 和 Cappuccino,它们有很棒的演示,而且它们的外观和感觉更基于桌面。已经有几次讨论将这两者相互比较。但是他们都没有谈论从 UI 设计到实现有多系统和快速?理想情况下,我应该能够在不超过几天的时间内实现我想要的 UI(假设我知道框架),并且将来更改它们应该很容易。
Dojo 的另一个困难是我必须直接使用 DOM 来添加和删除 dijit 小部件。虽然我喜欢保持这种灵活性,但我希望我可以使用更高级别的抽象来定义应用程序 UI。我已经阅读了 SproutCore 和 Cappuccino 中的 MVC,但我想知道在实践中提供的抽象层是否加速了 UI 开发?还是提供的层是一种奇特的架构,只会增加代码的可读性?如果我使用这些抽象来构建我的 UI,我会失去对 DOM 的直接访问吗?
干杯,纳维德