首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >管理大型项目

管理大型项目
EN

Stack Overflow用户
提问于 2010-11-08 18:11:15
回答 4查看 232关注 0票数 0

这更像是一个设计问题,而不是我想要解决的问题。我在这里发布这篇文章是为了了解其他人对ASP.NET MVC框架设计的看法。

首先,我将陈述我在框架中遇到的问题:

  1. 视图中的Html和代码
  2. 方法名,比如View(),通过查看它正在做什么,并且它实际上返回了什么,就无法识别它
  3. 太多接受完全不同参数的重载方法(如View())
  4. Html助手-我不相信扩展方法是为此引入的
  5. ViewData

我并没有详细解释我对上述问题的看法,而是希望有其他人能看到我所看到的问题。老实说,我没有人提起过这些问题,所以我开始怀疑自己是否孤独)。

在构建大型应用程序时,某个地方的人必须看到/感受到这些问题,不是吗?

EN

回答 4

Stack Overflow用户

发布于 2010-11-08 19:12:45

在构建大型应用程序时,某个地方的人必须看到/感受到这些问题,不是吗?

不,不是真的。至少-我不认为这是个问题。

视图中的Html和代码

简单的ifforeach不会砍掉你的头。比这简单得多:

代码语言:javascript
复制
<asp:Repeater ID="uberRepeater" runat="server"> 
 <HeaderTemplate></HeaderTemplate> 
 <ItemTemplate></ItemTemplate> 
 <FooterTemplate></FooterTemplate> 
</asp:Repeater> 

如果你把复杂的东西放在那里,那不是框架的错,而是开发人员的错和他对mvc模式的误解。

方法名,比如View(),通过查看它正在做什么,并且它实际上返回了什么,就无法识别它

对我来说很有道理:

如果开发人员不熟悉mvc模式和asp.net mvc遵循的约定,则可能不会。

太多接受完全不同参数的重载方法(如View())

这似乎是个问题。但是使用c# 4.0时,如果它困扰您,您可以使用命名参数来保持代码的可读性。

Html助手-我不相信扩展方法是为此引入的

实际上,html帮助程序并没有引入扩展方法。引入它们是为了将额外的逻辑连接到现有的类。为了成功地实现LINQ,它必须具有特性。

但不能把这当回事。

ViewData

埃姆..。哈?

但这并不意味着问题不存在。它们确实存在。

例如- Mvc V3的很大一部分是关于对依赖注入的适当支持。

票数 3
EN

Stack Overflow用户

发布于 2010-11-08 18:59:47

ASP.NET MVC框架非常强大。您可以完全控制HTML/客户端脚本输出。

如果您以正确的方式使用它,并且拥有像SharpArchitecture这样的良好基础设施,那么与任何其他框架(silverlight除外)相比,您可以在用户体验方面取得更好的效果。

根据我的经验,使用框架4、asp.net mvc、一个不错的ORM (比如hibernate)、一个DDD体系结构、良好的模式和一个IoC,您可以节省30%的项目时间,并将其用于用户体验。

附带注意: SharpArchitecture是一个很好的架构示例,事实上,它是完美的,但即使是开箱即用,它也可以处理任何规模的项目。根据我自MVC1以来的经验,我无法想象没有ASP.NET MVC的任何大型项目,而且它越来越强大,因为社区非常有创造力和技巧。

票数 0
EN

Stack Overflow用户

发布于 2010-11-08 19:25:30

为了回答这个问题,我会给大家介绍一本做得很好的书:斯科特·米利特的“专业ASP.NET设计模式”。这本书采用了最流行的模式,包括“四人帮”和Martin的企业模式,并讨论了所有ASP.NET应用程序类型,包括MVC。

如果他不能让您相信MVC在划分用户显示、业务逻辑和数据存储方面具有优势,那么很可能没有人会这样做。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4126650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档