9年前关闭。
我想向有经验的ASP.NET开发人员询问有关如何提高ASP.NET的学习曲线的信息。
我是一位经验丰富的C++和C#开发人员,没有Web应用程序经验。
我发现ASP.NET MVC和ASP.NET是两种不同的技术。我只想问:
ASP.NET?
非常感谢
最佳答案
首先,ASP.NET 是请求/响应管道。这意味着您可以访问请求和响应流以及一些规定,如 session 、缓存、安全性等。
除此之外,还有 3 个框架负责生成 HTML。第一个也是最古老的称为 ASP.NET Web 窗体。因为它是唯一的,它有时被称为 ASP.NET,但这在当前状态下是不正确的。 ASP.NET MVC 是第二个,还有第三个称为 ASP.NET 网页。所有这三个共享相同的核心 ASP.NET 请求/响应管道和用于 session 、缓存的 API... 不同之处在于它们生成 HTML 的方式。
您可以查看我对这个问题的回答以获取更多信息。
Asp.Net Web Forms and Asp.Net Web Pages
并回答您的具体问题 - 没有 Web 表单不会消失。很多人使用它,MS 正在发布新版本。
Web Forms 非常适合有桌面背景的人,因为它使用桌面开发人员熟悉的控件模型,并且还具有模拟状态的功能。它还需要较少的 HTML、JS、CSS 知识。 ASP.NET MVC 正好相反。它为您提供了很多控制权,但需要大量有关网络的知识。
我个人更喜欢 Web 表单而不是 MVC,原因有很多,我不会在这里列出,但即使是 Web 表单的支持者(尤其是我)也会承认 Web 表单是一种非常糟糕的学习 Web 的方式,因为它抽象了很多东西。这为您提供了生产力、安全性等,但如果您不知道底层框架是如何工作的,则可能会导致抽象泄漏的情况,并且很容易跳过学习细节,因为您知道东西可以正常工作......直到它崩溃然后你不知道从哪里开始。
最终选择是你的,但如果你从 Web 表单开始,一定要了解 HTTP 动词、cookie、原始响应流、http header 、html 表单/提交模型、内联 css 与单独的文件和 javascript 脱离 Web 表单的上下文并制作确定您知道 Web 窗体如何自动执行这些操作。