用于Web开发的Silverlight或MVC

时间:2010-06-10 15:39:24

标签: asp.net-mvc silverlight

我只是想知道那里的意见。您认为如何促进Web应用程序的更快开发时间? Silverlight或.Net MVC?

Silverlight可以替代真正的http网络应用程序吗?

随意咆哮或提供必要的细节。

6 个答案:

答案 0 :(得分:7)

  

Silverlight可以真正替代真正的http Web应用程序吗?

没有。正如Flash不能,Silverlight和任何其他演示文稿查看插件永远不会成为良好HTML的可接受替代品。

我可以列举一百万个理由,但这里有一些亮点:

  • 插件可用性(特别是在其他平台,手机等)
  • 与HTML相比,性能非常糟糕
  • 维护是PITA,需要完整的重新编译和上传。您只需在HTML中编辑所需内容。
  • 辅助!

我无法对速度发表评论,但我坦率地认为这无关紧要。您不应该使用Silverlight / Flash /无论如何构建完整的网站。

答案 1 :(得分:5)

使用何种技术完全取决于您的要求。你应该从那里开始。

就Silverlight(或Flash)而言,您将创建一个Web应用程序,但不是一个网站。

缺点?

  • 人们不愿意安装Flash或Silverlight插件。
  • 搜索引擎无法看到Flash / Silverlight网站。
  • 人们将无法为他们添加书签并共享链接。
  • 后退/前进/重新加载浏览器按钮无效
  • Mac世界中没有/部分支持

优点?

  • Rich UI

我个人认为,除非原始HTML / CSS不起作用,否则不应使用Flash / Silverlight。而使用CSS 3的HTML 5非常强大。 Web上充满了毫无意义的Flash网站,它们不会产生任何交互,只会呈现一些静态的信息。它可以很容易地用普通页面完成。有人认为Flash网站很酷,但事实并非如此。这是沉重,缓慢和难以接近的。

答案 2 :(得分:2)

Silverlight和MVC / ASP.NET都有: MVC / ASP.NET非常适合博客信息网站,在线商店等 基本上当您的应用程序需要被搜索引擎抓住时。

对于像Turbo Tax或Sales Force这样的在线应用程序,基本上这些应用程序曾经在桌面上但出于多种原因被移到了Web上,我会使用Silverlight或Flex。

考虑到以上因素: 广泛地使用MVC / ASP.NET和Silverlight后,一旦你掌握了xaml,我发现Silverlight开发的速度要快得多。

答案 3 :(得分:2)

这种情况重复了很多次,但我从未见过有人因为缺乏多年的浏览器/可用性支持而提及像Flash / Silverlight这样的“现代”技术的不利之处:

  • 您通常无法复制任意项目的文字
  • 你没有像Stylish,AdBlock或Greasemonkey这样的东西触手可及,以改善“设计师”认为对你有益的东西
  • 浏览器不了解您的表单,无法在崩溃/重新加载后提供自动完成或保存值
  • 缩放方法或第三方格式化程序等辅助功能解决方案不起作用

我可以继续。从用户的角度来看,Flash / Silverlight是一个噩梦,石器时代,而基于HTML的应用程序具有为用户提供的所有现代可用性。

是的,存在开发问题(即使在HTML领域也没有什么比FireBug更好)但重要的是,请善待您的用户。甚至企业人都是人。

答案 4 :(得分:1)

IMO - 我看看Silverlight / Flash / HTML构成了网站/网络应用程序的“视图”部分。

如果您可以正确构建站点/应用程序代码,则View应该是可互换的和/或可以支持多种格式的视图供最终用户/设备选择。

IMO - 很难预测网站/应用程序的用户使用模式,并且可能会有将来需要支持的设备。因此,不妨开发一些应用程序,这些应用程序的构造方式有助于在未来简化这一过程,在这种情况下,视图的呈现可以是您想要达到当前目标的任何内容......

HTH。

答案 5 :(得分:0)

之前的回答是“您只需编辑HTML中需要的内容”。虽然这对于简单的静态网站来说是正确的。对于OP中所述的网络“应用程序”来说,情况并非如此。该功能不在HTML中。你可能在Javascript中有一些yhou可以用这种方式编辑的功能,但不推荐使用Javascript编辑生成。

除了最简单的静态网站之外,我建议对生产网站或应用程序的任何更改都应在源版本控制系统中进行管理,测试并在部署到生产之前进行审核。在这样的环境中,添加编译步骤是微不足道的。

我永远不会推荐Silverlight来替换静态网站中可以做的事情。我无法想象有谁会。 HTML专为静态内容而设计。 Silverlight不是。

解决性能问题:Silverlight性能糟糕的说法是错误的。当然,加载Silverlight应用程序比加载网页需要更长的时间,但一旦加载,设计良好的Silverlight应用程序的用户交互比连续呈现完整的网页要快得多。

在这里的一些回复中,Silverlight缺乏可移植性被夸大了。 Silverlight在MAC上具有与PC相同的功能。通过Moonlight的Linux可用性也不甘落后。适用于iPhone的MonoTouch即将推出Mono对即将推出的Windows Phone 7的Android和Silverlight编程环境的支持也为移动环境带来了很多可能性。

说完所有这些之后,我不会使用Silverlight来开发许多类型的Web应用程序。我不愿意使用Silverlight(或Flash)做一个面向消费者的电子商务网站,因为前面提到的一些人不愿意下载运行时。但是对于我目前正在进行的SaaS应用程序来说这不是问题,绝大多数用户更愿意进行小型下载以获得更丰富的用户界面。

通过应用Ajax / JavaScript,可以实现一些相同的改进的用户界面“丰富性”,但我发现Silverlight开发体验更高效。要考虑的一件事通常是Ajax / Javascript应用程序,同时提供比传统Web应用程序更好的用户体验仍然看起来和感觉像Web应用程序和Silverlight应用程序将感觉更像传统的Windows应用程序。这可能是也可能不是您决定的因素。

我觉得有点令人失望的是,一个错过了OP点并且似乎不理解网络应用程序和网站之间差异的回复者得到的投票比一些点上的答案更多。
<登记/> 安东尼的反应很明显。