Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WPF和MVC是相同的概念吗?_Wpf_Asp.net Mvc_Model View Controller - Fatal编程技术网

WPF和MVC是相同的概念吗?

WPF和MVC是相同的概念吗?,wpf,asp.net-mvc,model-view-controller,Wpf,Asp.net Mvc,Model View Controller,这两个概念我都是新手 1) 我想知道,MVC和WPF是相同的概念,但WPF用于桌面,而另一个用于WEB 2) 如果我学了其中一个,学另一个会很容易吗?不 WPF和的关系比WPF和更为密切。Silverlight是一个独立的运行时,基本上是.NET的一个子集;Silverlight为UI使用标记,它支持WPF和.NET中的子集(以及一些特定于web的)功能 NET MVC是微软MVC模式的实现。MVC与WebForms(“经典”ASP.NET web开发)的不同之处在于,MVC有助于使用最佳实践,

这两个概念我都是新手

1) 我想知道,MVC和WPF是相同的概念,但WPF用于桌面,而另一个用于WEB

2) 如果我学了其中一个,学另一个会很容易吗?

WPF和的关系比WPF和更为密切。Silverlight是一个独立的运行时,基本上是.NET的一个子集;Silverlight为UI使用标记,它支持WPF和.NET中的子集(以及一些特定于web的)功能

NET MVC是微软MVC模式的实现。MVC与WebForms(“经典”ASP.NET web开发)的不同之处在于,MVC有助于使用最佳实践,并使开发人员能够高度控制应用程序的输出--WebForms更受RAD(快速应用程序开发)的驱动,使其易于开始使用--但要关注最佳实践,模式,并控制到路边


至于哪一个更容易:MVC可能会更快地开始,但进行全面的web开发需要一组技术(HTML/CSS/JavaScript/.NET),而WPF使您所需的知识更加集中(XAML/WPF/.NET)。

MVC(模型视图控制器)是一种设计模式,并不特定于特定的技术集

WPF(WindowsPresentationFramework)是微软的窗口库,可以在MVC设计的系统中使用。然而,没有什么可以强制执行这一点,MVC模式的使用肯定会被WPF滥用


MVC是一种广泛使用的模式,无论使用何种技术(无论是基于web的、WPF的、Swing的等等),熟悉MVC都是非常有用的。请注意,MVC通常与GUI相关联,但没有特别的限制,只要模型及其更改需要反映给对该数据有不同看法的不同消费者,就可以使用该模式。

我认为您在谈论“MVC”时可能指的是“ASP.NET MVC”技术(根据你问题的标签)。无论如何,这里有几点可以澄清发生了什么:

  • ASP.NET MVC是一种基于该模式开发web应用程序的技术。您可以稍微改变一下,但该框架是专门设计用于使用该模式的

  • WPF是一种用于开发windows应用程序的技术。在编写WPF应用程序时,您可以使用各种不同的设计模式,但目前最流行的模式是MVC模式。您也可以使用MVC模式(组件组织)在编写WPF应用程序时,这并不像更原生的方法那样有效

所以,关于你的问题:

  • 它们不是相同的概念-技术不同,与这两种技术一起使用的通常模式(组织代码的方式)也不同

  • 学习一种技术可能会使理解另一种技术更容易一些,因为它们都是.NET GUI框架,并且共享一些概念。但是,我认为这不会有多大帮助


  • 不。MVC是一种模式,而WPF是一种微软技术

    您可能需要付出一些努力才能在WPF中使用MVC模式,但现在WPF中更流行的是MVVM。MVC本身并不局限于web

    天哪,克里斯

    2) 如果你愿意的话,你很容易学会另一个 我学了其中一个

    舒尔:它们都可以用c#或vb编程。它们都可以用visualstudio编程


    但是对于任何结合了.NET技术(Winform、ASP.NET、Silverlight…)的技术也是如此

    ASP.NET MVC是MVC模式的实现,而WPF不是?据我所知,WPF是由微软实现的,因为它与一些模式一起作为MVC使用。我的意思是WPF可以在桌面上实现MVC模式,对吗?@Freshblood:是的,你可以在WPF中实现MVC,但你也可以在Winforms中实现MVC。WPF设计用于MVVM模式,不是专门针对MVC的。哦,我甚至不知道我可以在没有WPF的情况下用winforms实现MVC模式。@Freshblood:如果需要,可以在winforms、WPF、ASP.NET WebForms甚至.NET控制台应用程序中实现MVC模式:-)。这只是一种将代码组织成以某种方式相关的组件的方法。“ASP.NET MVC”实现该模式的方式比您在其他框架中实现该模式的方式更严格,但该模式的具体实现可能有所不同。。。。我想说,WPF和ASP.NETWebForms在某种程度上都受到了这种模式的启发,但不像ASP.NETMVC那样严格。