3

白天,我是一名前端 Web 开发人员,但在空闲时间,我会涉足其他语言,例如 C、Objective-C、Python 等。当我第一次接触 Web 开发时,Web 应用程序的想法才刚刚起步。

从那以后出现了两个惊人的框架,SproutIt 的 SproutCore 和 280 North 的 Cappuccino (+Objective-J)。Apple 正在将 SproutCore 用于其 MobileMe 应用程序,并且 280 North 发布了 280 Slides。这两个应用程序都很棒,它们证明了网络上的可能性。因此,势头正在转变。Web 应用程序开始看起来和行为类似于桌面应用程序。

所以我的问题是:基于 Web 的应用程序是否应该遵循 Web 标准、标记(内容)、表示(设计)和行为(功能)的分离?

我不确定 SproutCore,因为我没有查看源代码,但我知道如果你去 280slides.com 并关闭 JavaScript,一切基本上都会消失。你留下了一些无意义的话。

让我澄清一下,我知道基于 Web 的应用程序(例如 280 Slides)是为了启用 JavaScript 而不是没有它就可以正常工作,但在我的日常工作中,我的主要重点是编写干净的标记,分离内容、演示和行为,以便我们的网站和应用程序可以被尽可能多的人使用。

4

6 回答 6

5

到目前为止回答的其他人似乎不知道您在说什么。

像我一样,您已经将它深深地印在了您的脑海中,以使您的 Web 应用程序尽可能易于访问。也就是说,它们应该在没有脚本和样式表的情况下工作。JavaScript 和 CSS 只能用于增强体验。它们不应该是必需的。

SproutCoreCappuccino前端开发框架,要求用户同时启用 JavaScript 和 CSS。你的问题是关于我们如何协调这与当时的教条。

不幸的是,我没有一个明确的答案。我喜欢 SproutCore 和 Cappuccino(可能还有其他人)正在测试 Web 浏览器中可能的极限的事实。我也坚信,鉴于技术的局限性,网络上提供的信息和服务应该提供给尽可能多的人。

您如何处理您的解决方案需要基于对您的用户群的深入了解。如果您正在开发 iPhone 应用程序,则无需担心传统的 Web 可访问性,因为这种体验非常直观。如果您正在为普通用户构建一个 Web 应用程序,那么这些新框架可能是一个糟糕的选择(如果您重视尽可能广泛地访问您的信息和服务)。

随着时间的推移,屏幕阅读器软件可能会在解释大量 JavaScript 的界面方面变得更好,所以这个问题可能会逐渐消失。问题是,其他东西很可能会在它的位置“萌芽”。

于 2009-03-06T21:38:27.183 回答
2

Javascript一种 Web 标准——肯定比以前(并且仍然经常)用于富 Web 应用程序的 Flash 更重要。在这方面,SproutCore 和 Cappuccino 是我书中的巨大改进。

这里的问题似乎是可访问性的重要性。正如安德鲁所说,这在很大程度上是基于了解您的用户的个人决定。对于某些应用程序来说,可访问性确实没有多大意义——280 Slides 就是一个很好的例子。这是一个主要与视觉行为有关的图形设计应用程序。将其降级为明文没有多大意义。(至少,一个基于文本的应用程序旨在完成 280 Slides 所做的事情将是完全不同的事情。)

于 2009-03-06T22:36:55.187 回答
1

是的。一开始会很困难,但一旦代码库成熟,你会庆幸你遵循了这些严格的标准。

编辑:一个额外的好处是通过 CSS 配置文件和诸如此类的东西可移植到许多基于 Web 的平台。

于 2009-03-06T19:49:13.093 回答
1

MVC 模型可以像应用于基于 Web 的应用程序一样容易地应用于桌面应用程序。我看不出区分两者的理由,特别是因为在 Web 应用程序的情况下界限更加模糊。

我不知道这些特定的框架,但是现在很多 Web 框架都是围绕 MVC 模型构建的,例如 ASP MVC、CakePHP、Ruby on Rails 等。

于 2009-03-06T19:51:55.957 回答
0

尽可能多地分开,最终会得到回报。当事情变得复杂和多毛时:)

于 2009-03-06T19:54:13.283 回答
-1

我认为他们应该。遵循这种类型的MVC 设计可以使更改更容易实现,提供良好的关注点分离,并且对于项目的新手来说通常更容易理解。

于 2009-03-06T19:50:41.450 回答