Click here to Skip to main content
15,860,943 members
Please Sign up or sign in to vote.
1.00/5 (2 votes)
See more:
Is it possible to learn MVC without having a knowledge about c# r .net
Posted

When taking your question literally, the answer is yes: Because MVC ("Model View Controller") is a general programming concept and could be implemented with virtually any programming language (and doesn't even require a Web UI though it's most often associated with that; it wouldn't even require a graphical UI).

Now if you're actually talking ASP.NET/MVC then the general answer is no: You do need knowledge about C# (or VB.NET) and .NET because ASP.NET is (normally) implemented using C# (or VB.NET).
 
Share this answer
 
Comments
Sergey Alexandrovich Kryukov 10-Jun-15 0:35am    
(Sigh...) All right, I voted 5, but your first paragraph made my answer more difficult, because I had to discuss this case and reveal the trick: even though it may not require the knowledge of C# and .NET, the equivalent knowledge of other technologies might be no less. It depends. I don't think the inquirer meant the architecture (or even aware of it, no sure); it must be ASP.NET MVC. Sorry if it looks like I question your judgement. Essentially, I don't, but I want to emphasize that not learning C# and .NET can ease up the inquirer's life. :-)

It's just that "taking this question literally" is not precise, so it could be confusing: there are two different "literally" meanings of the term "MVC".

The real problem is the inquirer's attitude. This problem is way more significant than all those technical detail.

All right. Please see Solution 3.

—SA
Sascha Lefèvre 10-Jun-15 2:44am    
Thank you, Sergey. I assumed the inquirer would not mean the architecture but wanted to point him to the fact ;-) My 5 for your answer.
/Sascha
Sergey Alexandrovich Kryukov 10-Jun-15 3:14am    
Thank you, Sascha. The idea to mention MVC as architecture is of course the right one.
—SA
First of all, the term "MVC" has two related meanings. First is the architectural pattern, and second is the framework over ASP.NET implementing this pattern. Please see:
http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller[^],
http://www.asp.net/mvc[^].

What are we talking about. If it's about the architectural pattern, the Solution 2 tells you that in principle you may not lean C# and .NET. But this is a kind of casuistic which hardly can help you with your intentions: instead of learning C# and .NET with ASP.NET, you would need to learn something else, most likely no less that that. But please see my notes on the real knowledge level you really need to achieve, in my second last paragraph ("In fact, your suggestion…", and so on).

"Possible" and "impossible" and also "to learn" (to learn — to what extent?) are pretty much relative categories. Let me put it this way: this is nearly the worst idea possible. The most important problem is your attitude: are you trying to save your time on learning? If so, I have much better idea: abandon the profession, any engineering profession. It's for people who are eager to learn, especially the fundamentals, not for those who wish to save on it and get to right to results. Nobody need such "results".

In fact, your suggestion that learning C# and .NET might be important is highly minimized. You really need to learn order of magnitude more that that. It includes, but not limited to, understanding of networking, major protocols and the whole protocol model, HTTP in particular, understanding of Web operation, JavaScript (and this is a big part of technology), general programming, some major algorithms, good part of .NET FCL, HTML, CSS and, the last but not least, industrial design and UI design skills.

Thank you for understanding.

—SA
 
Share this answer
 
v4
Yes, go through this for a better understanding Getting Started with ASP.NET MVC 5[^]
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900