2

Possible Duplicate:
Traditional ASP .NET vs MVC

I am new to .net world coming from java , I know some jsp and jsf, I want to start learn web development in .net, so now I want to chose what to learn ASP.NET MVC (open source) or ASP.NET.

Please help me to chose one of them and why?

Community
  • 1
  • 1
Radi
  • 6,548
  • 18
  • 63
  • 91
  • 2
    I won't add this as an answer as I'm new to web development myself, but we've been using MVC and it's pretty nice. It has it's perks and annoyances, but you'll find that with almost any architecture. I cast my vote for MVC. – XstreamINsanity Aug 18 '10 at 11:29
  • and: http://stackoverflow.com/questions/99056/asp-net-webforms-asp-net-ajax-versus-asp-net-mvc-and-ajax-framework-freedom – George Stocker Aug 18 '10 at 12:24

6 Answers6

8

I recommend learning MVC, but that's just because I prefer the request/response concept of the web without having to concern myself with Microsoft-ism's like Page Lifecycle, PostBack, and ViewState. Most MVC fans will tell you that these details were Microsoft creating problems that didn't exist.

The ASP.NET WebForms model was designed to get WinForms developers to write for the web, and it's just ugly (again IMO). Control-style structures are a bit of an antithesis on the web.

MVC is open source, but open sourced by Microsoft. Just because you can download the source code from Codeplex, it's not really open source the way a jQuery plugin, Fluent NHibernate, Ninject, StructureMap, etc. is open sourced.

Jarrett Meyer
  • 19,333
  • 6
  • 58
  • 52
7

Microsoft made a small video about it recently: Choosing the Right Programming Model.

Also take a look at this article: About Technical Debates (and ASP.NET Web Forms and ASP.NET MVC debates in particular).

Also either if you go for webforms or mvc there's a great amount self learning material on both over at www.asp.net to be found.

Kris van der Mast
  • 16,343
  • 8
  • 39
  • 61
3

Asp.net MVC is still Asp.net

Asp.net MVC is not really open source. It's developed inhouse at Microsoft by their stuff. The code is public, but that's all. And it's built on top of Asp.net.

But since I've been an Asp.net WebForm developer since version 1.0 and then switched to MVC since version 1 I would suggest you rather learn MVC. Others may protest, but apart from the very simple applications where you can really just drag/drop controls on the page I rather use MVC.

Asp.net MVC is much better suited to the stateless HTTP protocol hence web applications.

Asp.net WebForms on the other hand were made to make desktop developers' lifes easier to switch to web applications. They use the same event control even models etc. But there's a whole abstraction layer between HTTP and the UI that makes things much more complicated. Especially when developing modern complex web application.

Robert Koritnik
  • 103,639
  • 52
  • 277
  • 404
1

@radi - asp.net mvc IS asp.net. the differentiation is between asp.net webforms and asp.net mvc.

There are loads of debates on SO supporting one over the other. my preference - hmmm - mvc!!

Kris van der Mast
  • 16,343
  • 8
  • 39
  • 61
jim tollan
  • 22,305
  • 4
  • 49
  • 63
0

If you are moving from Java and JSP learning ASP.NET MVC will be much more easier. ASP.NET Web Forms are very specific.

Edit: Why should you learn MVC instead of Web Forms? Because you probably already know HTTP processing from JSP + servlets and MVC uses very similar approach. I have implemented MVC in Java many ears ago and when I compare my implementation with ASP.NET MVC I see that controller = servlet, view = JSP, view model = Java Bean.

ASP.NET Web forms are very different from the web frameworks you already know. Web forms were initially designed to hide HTTP processing and to allow Windows developers immediatelly create applications for web.

Ladislav Mrnka
  • 360,892
  • 59
  • 660
  • 670
0

nice, I'm asp.net developer moving to java :) ...

The best choice is starting from C#2008, asp.net, and than all other. Remember, if you are a good java/jsf developer you will learn C# and asp.net very fast.

If you are planning to buy a book (recomended), I think that Wrox books are really good for .NET.

Kris van der Mast
  • 16,343
  • 8
  • 39
  • 61
Fabio B.
  • 970
  • 2
  • 14
  • 29