Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.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
asp.net设计在哪里可以轻松调出或更改前端?_Asp.net_Design Patterns - Fatal编程技术网

asp.net设计在哪里可以轻松调出或更改前端?

asp.net设计在哪里可以轻松调出或更改前端?,asp.net,design-patterns,Asp.net,Design Patterns,使用asp.net设计web应用程序的首选模式是什么?在asp.net中,用户界面可以轻松修改或完全替换为另一个用户界面 我不想用CSS来改变应用程序上的口红,但是如果我要用敏捷开发来产生概念,我可以用应用程序开发来向前推进。我希望尽可能地防止或限制对UI进行修改的需求的更改会破坏在此之前投入的开发工作的可能性 我正在计划一个类似于SOA的基于服务的解决方案,但我想检查一下我的想法,看看我是否遗漏了任何更适合这个项目的东西?ASP.NET MVC似乎适合您的广泛需求。 我是一个坚定的信仰者。它将

使用asp.net设计web应用程序的首选模式是什么?在asp.net中,用户界面可以轻松修改或完全替换为另一个用户界面

我不想用CSS来改变应用程序上的口红,但是如果我要用敏捷开发来产生概念,我可以用应用程序开发来向前推进。我希望尽可能地防止或限制对UI进行修改的需求的更改会破坏在此之前投入的开发工作的可能性


我正在计划一个类似于SOA的基于服务的解决方案,但我想检查一下我的想法,看看我是否遗漏了任何更适合这个项目的东西?

ASP.NET MVC似乎适合您的广泛需求。

我是一个坚定的信仰者。它将允许您将UI与底层逻辑和数据分开。更改UI或逻辑或数据可以在对网站/应用程序整体一致性影响最小的情况下完成。
此图显示了如何将源元素和UI元素视为两个独立的块,并且绑定是它们之间的通信。

如果您的系统由多个客户端使用,并且需要共享公共数据或功能,则基于服务的解决方案将主要帮助您。否则,我看不出它对你有什么好处,因为它涉及到这个问题


您可能希望利用用户控件和不同的类来解决不同的业务目标。查看关注点分离设计模式

我不同意DaveRead(我真的不相信不成熟的MS技术,在我看来MVC仍然是非常新而且不成熟的),也不同意Kon,因为SOA解决方案不仅适用于多个客户端,而且在我看来,它是(几乎)任何应用程序的可行解决方案。
但是Kon正确地提到了关注点分离,如果实施得当,应该可以实现您所需要的功能。
一个很好的经验法则是:在设计/编码后端层时,问问自己:如果我对UI做了某个某某的更改,我是否需要更改后端?
当然,答案应该总是“不”

祝你好运。

ASP.NET MVC也使创建单元测试变得更容易。这将有助于保持稳定层的稳定,同时交换视图等。此外,模拟更容易,因此POC的示例数据更容易应用。MVC模式已有30多年的历史,但我明白你的观点:Microsoft的implementation@sJohnny,我不会说“可行”但在很多情况下,我并不认为SOA是最好的解决方案,我也经常看到它被滥用。您必须认识到,SOA带来了额外的抽象层和性能层(负载开销)。如果可以在2个步骤中完成,为什么要在3个步骤中完成?它也经常(但并非总是)对可维护性有害。@Dave:显然,我不是说MVC是一种DP,而是一种MS技术(该死的,MS,因为你利用了著名的短语来达到自己的邪恶目的!)@Kon:同意。虽然我喜欢它给你的灵活性,我觉得它可以弥补额外的开销。