K
K
kupereal2016-03-05 15:34:44
ASP.NET
kupereal, 2016-03-05 15:34:44

How do the C# and VB.NET programming languages ​​relate to ASP.NET MVC technology?

I'm starting to learn programming under .NET, I wonder how sites are created on this platform. I’m not familiar with window programming technologies in general and I don’t understand what ASP.NET MVC is, is it a framework and a full-fledged web programming language, or it’s impossible to create a site on it without knowledge of C # or VB.NET. Confuse the headings of articles and literature in the style - "We create a site on ASP.NET MVC" or "We write a site on VB.NET". I'm a little confused by the variety of technologies, or maybe I just can't accept the reality of modern programming. I always wanted to know something monumental, universal and in demand, but in the singular. Can I switch back to NIX with a bare console and continue to learn C and C++, only PHP and other scripting languages ​​are no longer interesting to me?

Answer the question

In order to leave comments, you need to log in

3 answer(s)
D
Dmitry Pavlov, 2016-03-05
@kupereal

The web application has two parts - client and server. The client side is the web page that the user sees in the browser. Server - this is what generates these pages on the server, which are loaded from the user on the client (in the browser).
The client side is HTML, CSS and JavaScript - that is, the technologies that are used to create ordinary web pages. At the same time, very different technology stacks can be used on the server. Specifically for the .NET stack, there is IIS (web server for Windows based hosting servers) running ASP.NET (it's a web framework for generating web pages) using the C# or VB.NET programming language.
An example of another stack on a server: an Apache web server (usually on a Linux-based hosting server) running, say, the CakePHP web framework using the PHP programming language.
Another example: the Passenger web server (on a hosting server running Unix operating systems) that runs the Ruby on Rails web framework, where you develop in the Ruby programming language.
There are similar server combinations for other programming languages ​​- Python, Java, etc.
And if in the case of the .NET stack (where one is essentially the manufacturer of everything - both the operating system and the web server and the web framework and programming language - this is Microsoft), then other lptforms allow you to make more combinations.
For example, for the PHP programming language, there are many different web frameworks .. For other languages ​​too. Even for the C# and VB.NET languages, there is ASP.NET WebForms (before it was simply called ASP.NET) and ASP.NET MVC (here I would include a variation of the framework for creating an API - Web API ). For many stacks, there are many different web servers, web timeworks and, accordingly, you can use many options for OS - VS - VF - YP bundles.
On the account "We write a site in VB.NET", this most likely means - we write a web application in VB.NET, which will use one of the web frameworks (either ASP.NET WebForms or ASP.NET MVC).
I hope I was able to clarify the terminological mess that surrounds us. Unfortunately, even on Wikipedia, I often see this mess and someone starts calling ASP.NET a programming language. This is not true.

S
Stanislav Makarov, 2016-03-05
@Nipheris

Nothing complicated.
C# and VB.NET are general purpose programming languages ​​that run on top of the CLR (that is, roughly speaking, on the .NET platform).
ASP.NET MVC is a web framework for the .NET platform. Essentially the same class library as WinForms or WPF. The feature of ASP.NET is that it is a production-level tool supported and developed by MS. However, there are other frameworks for dotnet, such as Nancy or ServiceStack . As Dmitry Pavlov
already mentioned , ASP.NET is to C# what Rails is to Ruby, Django is to Python, and Spring is to Java.

D
Dmitry Kovalsky, 2016-03-05
@dmitryKovalskiy

ASP.NET MVC is not a language. This is part of the .NET Framework for web development within the MVC architecture (there is also Web Forms, but it is slowly and surely dying off). For development on ASP.NET MVC, you need to use a .NET compatible language (99% - which is C #) - in particular, C # is used for controller code. For View - html/css/js, but C# or VB.NET ears stick out there too. What language the model code is written in is a bit of a separate story. In theory, nothing prevents loading an assembly in some other language and using reflection, but it's still better and easier to use .NET projects.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question