WPF开发是比经典ASP.NET(web表单)快还是慢

WPF开发是比经典ASP.NET(web表单)快还是慢,asp.net,wpf,estimation,Asp.net,Wpf,Estimation,您对ASP.NET和WPF编码都有经验吗?如果是的话,如果你能分享你的经验,我将不胜感激 我们正在估算一个100屏幕WPF项目。我们的评估方法包括描述每个屏幕的复杂性。然后,我们根据复杂性和技术,为开发时间应用一个标准数字。标准数字是基于开发者是否优秀,而不是超级明星 例如,这里有一个屏幕: 用户在主控形状中选择一行 网格,然后编辑 详细信息并保存更改。阿贾克斯是 用于填充和保存详细信息 没有回邮。数据层是 已经有了,样式也会有了 由其他人处理。任务包括编写一套合适的单元测试;集成测试是独立的

您对ASP.NET和WPF编码都有经验吗?如果是的话,如果你能分享你的经验,我将不胜感激

我们正在估算一个100屏幕WPF项目。我们的评估方法包括描述每个屏幕的复杂性。然后,我们根据复杂性和技术,为开发时间应用一个标准数字。标准数字是基于开发者是否优秀,而不是超级明星

例如,这里有一个屏幕:

用户在主控形状中选择一行 网格,然后编辑 详细信息并保存更改。阿贾克斯是 用于填充和保存详细信息 没有回邮。数据层是 已经有了,样式也会有了 由其他人处理。任务包括编写一套合适的单元测试;集成测试是独立的

我们将此屏幕描述为中等,并为任务分配X小时,用于经典ASP.NET(与MVC相反)

我们需要帮助弄清楚WPF的X应该是什么

我的问题:

如果屏幕是由精通WPF的人在WPF中创建的,会花费X小时、0.7倍还是1.3倍?WPF与经典ASP.NET的相对生产率是多少

问另一个问题:如果一个任务需要(选择一个数字)10小时的ASP.NET编码,那么使用WPF需要多少小时?5.15岁

我们想知道WPF是否(选择一个数字)比ASP.NET的生产效率高出50%,因此我们可以提出更低的价格,并相信我们能够在预算内完成该项目

[编辑]问另一种方式:这次讨论有很多回应。选择的“正确”答案是“选择WPF的原因”,第一个原因是“比ASP.NET和jQuery开发更快、更容易”


这个答案是真的吗?快多少?

变量太多。选择工具的第一个原因是用户的熟悉程度。如果您的团队已经知道并熟悉ASP.NET,那么使用ASP.NET会更好、更快。如果您的团队不知道WPF,那么将有一个提升期,一旦他们完全提升,他们可能会像使用ASP.NET一样快

然而,如果要求该应用程序可以安装,或者需要离线,或者只有WPF才能带来其他好处,那么你可能需要承担责任。如果没有,如果您让团队使用他们熟悉的工具,您将拥有更高质量的产品

如果您试图将关注点分开,并使用asp.net执行模型-视图-演示者风格的方法,我认为这比WPF中的MVVM需要更长的时间和更多的工作,因为它非常支持绑定。但仍然有一条学习曲线


asp.net或WPF中没有任何隐含的东西可以使一个比另一个更快。决定发展速度的因素是团队的才能以及他们对什么感到满意。

来自个人经历:

ASP.NET比WPF更容易进入。ASP.NET与其他web服务器端技术非常相似。WPF打破了传统的桌面开发模式,为其添加了许多功能,这需要时间去适应

也就是说,经验丰富的开发者在WPF中的实际开发速度可能要快得多。我个人的压力因素是浏览器兼容性(让它在多个(版本的)浏览器中以完全相同的方式呈现;这只会花费太多时间。)


您不会从我这里得到任何数字,因为根据您提供的输入很难给出这些数字。

我个人认为WPF的开发速度比ASP.Net快得多,但是,如果您正在进行估算,请确保为学习曲线添加了大量的填充

我已经与这两个和更喜欢WPF到目前为止。我发现使用它要快得多,也容易得多,而且与Winforms或基于Web的任何东西相比,创建我想要的UI似乎都很容易

例如,创建形状怪异的按钮(星光闪烁、圆形等)、创建带有复选框的下拉列表以过滤数据、创建基于数据的不同行具有不同UI的数据网格、使背景半透明或模糊的弹出窗口等都不是问题,或实际显示正在拖动的对象的可拖动对象。这些都是我玩过的东西,在WPF中非常简单

当我第一次开始使用WPF时,并没有太多人支持它,但我相信这已经改变了。我遇到的大多数问题都有一个在线解决方案,或者可以通过询问等方式快速获得答案


我看到的WPF的一个限制是它与.Net framework绑定

我认为可以肯定地说,在您描述的这样一个项目中,WPF可以快33%,基本上是因为结果更可预测和可控。最后,每个人都希望它看起来像他们想要的那样

WPF比任何ASP.NET项目都具有更自然的可重用性和可伸缩性。您构建的所有内容都可以轻松地转换为具有内置绑定的用户控件。我更喜欢MVVM而不是MVC

我想说的是,在ASP.NET中,您可以让某些东西(如数据库视图)运行得更快,但要让它看起来像您所希望的那样,则要困难得多。因此,开发时间实际上取决于UI需求的灵活性。如果您想创建一个新控件,则在ASP.NET中需要花费更长的时间,并且很难向其他人描述如何使用该控件

我最近还开始使用VB6为桌面应用程序和PHP的JQuery编程。这些语言的开发速度比任何与.NET相关的语言都快,因为.NET必须编译。这是这种语言的一个主要缺点。编辑一个复杂的网站通常需要相当长的时间。出于这个原因,为了我个人的使用,我将坚持