What are and how do . NET technologies relate to developing web systems?

Asked

Viewed 1,527 times

20

Many years ago I programmed a little in classic ASP and did not follow the evolution of products.

Classic ASP basically consisted of files .asp with code whose language was a variation of Basic, hosted on an IIS server, interpreted when someone accessed their respective URL, for example http://localhost/dir/arquivo.asp.

Currently, I hear about ASP.NET, Webforms and other technologies to develop content for the web. I imagine the platform . standard NET (not including third parties) has a well defined and delimited set of technologies to solve common or not so common problems of web development.

  • What are these technologies?
  • What are the characteristics of each in general terms? What problem does each solve?
  • Without going into too much detail, how do they relate or integrate? Which ones are used together?
  • Which ones are complementary or different ways of solving the same problems?
  • I swear I expected this question to be accompanied by an answer from you. But if you want to keep up with the news about dotnet, you can follow the Blog do Scott Hanselman. for example, integration of Nodejs with Visual Studio, use of Grunt with ASP.NET MVC... always has something new.

  • I am voting to close this question as out of scope because it is not clear among the topics said as scope of this site if the question falls under any of them as below: - a specific programming problem - a software algorithm - common tools between developers - practical and well-defined problems concerning software development - theoretical doubts about concepts and practices applied to software development

2 answers

21


Although there are several options frameworks in the. NET ecosystem, unlike in Java, almost no one uses them. One sits on top of Microsoft’s ASP.NET. Whether this is good or bad is for each one’s judgment. But remember that Microsoft did a lot of things after seeing others' mistakes, so it got right more easily. ASP.NET is an umbrella name for various technologies that enable the . NET to work with web.

  • ASP.NET initially was just Webforms which is a technology that tries to reproduce, as far as possible, the way of programming Windows Forms, maintaining state, artificially, between requests of pages.

    This technology helped a lot of people, it was good, and it still serves some purposes. But it’s not very suitable for the real Internet that we have today. It is a supported but legacy technology. It stopped at 4.6 and will only receive sporadic updates absolutely necessary (now not even that).

  • Then was created the ASP.NET MVC, which is completely different from Webforms. Initially it had several dependencies with classic ASP.NET (Webforms). The current version (ASP.NET Core) no more. And you can easily run on the three main server platforms (someone should use Mac as a :P server). The classic version of it is considered obsolete in favor of ASP.NET Core.

  • Few people know and fewer still use, but also have the ASP.NET Webpages. Which is a simpler technology that has basically every part of view of the MVC and some facilities for general development, including the main model, but it doesn’t require the MVC model. It’s great for simpler websites that don’t need all this complication, and many don’t need it all, but the staff only hears about MVC and even does simple things about it. Webpages is similar to the classic way of making websites in PHP.

  • Another family technology is the ASP.NET Webapi which was created precisely to do the opposite, provide data without a view defined. It is used to create Apis based on web technologies. Aaaaah go?! : ) The current version (Core) has been fully integrated with MVC and there will no longer be anything separate.

  • To provide real-time notifications to connected clients, the ASP.NET Signalr. It is incorporated into Core. There are clients for various technologies even non-web.

  • ASP.NET Razor Pages is a new model that runs on top of the ASP.NET Core that cuts down the bureaucracy by putting everything in one file. It is possible to keep the view separate if desired. It’s all organized per page. It has a few limitations on MVC. There are important people within Microsoft who say only use it now. For almost all projects is the most interesting. In cases of extreme complexity and that the API is also important is that it uses MVC.

  • Blazor was created to run in browsers but there is the option to run it on the server and render pages as if it were in the browser.

"Minor technologies"

  • There are still some auxiliary technologies such as ASP.NET Identity to provide authentication and authorization.

  • The ASP.NET Razor is the engine of template of these technologies that need a way to assemble a visualization.

  • The ASP.NET AJAX are extensions to integrate all ASP.NET with AJAX technologies in the client.

  • Webmatrix is used to integrate all this, but with the new version of ASP.NET, it doesn’t seem to make as much sense.

  • There was the ASP.NET Dynamic Data, but as far as I know it was replaced by the Entity Framework (the .NET ORM) in most cases. It facilitated the access to data and assembly of pages. The technique of scaffolding has been integrated into ASP.NET. Core has its own version of EF.

Some are obsolete now.

Has a website that centralizes all of this.

I made a question about the new ASP.NET 5 which is the technology that will "survive" and encompass these modern tools, currently it is called ASP.NET Core and version 2 is integrated into the .NET Core standard. Except for Webforms, which can even be integrated with the rest, they should all work together a lot.

New services have now emerged for integration with Azure (the Microsoft cloud).

That’s all open source, with real freedom. There you can see that it has a huge amount of "small" extensions useful for web development. Has tools and libraries for caching, logging, access to various databases and other forms of data access in various ways, HTTP server, session control, proxy, access by Websockets, Webhooks, testing, settings, location, instrumentation, diagnostics, miscellaneous protections, DI, Node, CORS, examples, etc.

  • Is quite complete. :)

  • I liked the answer...

0

Look at . Net is being a much used framework as Delphi itself included . NET as well, I think one of the biggest advantages is the use of .NET. With ASP.NET you can easily develop "object-oriented" based web systems, you can use MVC standardization that makes development even easier when you have a team working together. In ASP debugging to find errors is more difficult, Already in ASP.NET Debugging by searching for errors is much simpler because Page errors are generated as Compiler errors or there is a good chance that most errors will be found at compile time instead of run time. Most hosting servers today use Asp.net rather than just Asp. The performance of the pages in Asp.net is much better because As all components in ASP.NET are assemblies, there is no performance degradation through server-side code, whereas in ASP the scripts are interpreted on time in real time thus having an impact on performance. I’m saying that in terms of speed, processing, development, compilation, bug tracking, and popular ASP.NET is in the best place, because it is the upgrade of ASP to a better layer so the needs and improvements that were missing in ASP were applied in ASP.NET. I hope I helped.

  • 4

    Hello. Interesting your answer, but she focused on a point that does not directly answer the question. For example, I did not ask about the advantages of . net on the classic ASP, that was just to contextualize the question. What I wanted to know about is what technologies are available today under the umbrella . net for web development. Like, if I want to start a web project tomorrow, what options do I have?

Browser other questions tagged

You are not signed in. Login or sign up in order to post.