我负责设计一个显示非常大的地理数据的Web应用程序。其中一个要求是它应该进行优化,以便在我国郊区常见的拨号电脑上也可以使用它。
现在我被允许使用Flash和/或Silverlight,如果这有助于缩短开发时间和用户体验。
地理数据的重要部分被分块到瓷砖中并像Google地图中的地图图块一样加载,但这意味着我需要大量的HTTP请求。
我应该只使用javascript + HTML吗?我最终会得到一个关于Flash / Silverlight的更快的应用程序吗?因为我可以在那些2技术上做一些复杂的算法(比如DeepZoom)。然而,部署桌面应用程序是不可能的,因为我们没有那么多维护资金。
它只需要快......真的很快..
P.S。更快的是“下载更快”
答案 0 :(得分:2)
像Gears这样的东西可以接受吗?这将允许您在本地存储数据以限制重新请求。
我也会远离flash和Silverlight,直接进入javascript / AJAX。 jQuery非常有趣。
答案 1 :(得分:2)
我建议您查看Silverlight和DeepZoom
答案 2 :(得分:1)
我认为你不会发现Flash或Silverlight会对这个应用程序提供太多帮助。无论哪种方式,您都将使用平铺图像,并且在两种情况下图像的大小都相同。使用Flash或Silverlight可以允许您向应用程序添加一些简洁的动画,但是您在这里获得的任何内容都将是您的客户端在拨号连接上的额外开销。我坚持使用简单的Javascript / HTML。
答案 3 :(得分:1)
您可能还希望通过一个可用的Ajax库来异步下载切片。假设您的用户可以一次查看9个图块并滚动/缩放。下载他们可以看到的9块瓷砖以及在第一次装载时处理这些瓷砖的缩放所需的任何东西;然后你需要使用缓存策略来异步预取其他信息。
在我工作的一个地方,规则引擎花费的时间太长而无法返回结果,因此他们选择向用户显示“确认此”屏幕。用户查看并单击下一步所花费的几秒钟就足以让您返回结果。它使应用程序看起来很快,对用户来说实际上需要更长时间。您必须记住,用户对性能的感知在某些情况下与实际性能一样重要。
答案 4 :(得分:0)
我相信微软的Seadragon是你的答案。但是,我不确定开发人员是否可以使用它。
看起来有些已经进入Silverlight