How to switch from programming Windows applications (WinForms using C # .NET) to programming web applications (ASP.NET)?

I have been working on winforms using C # in my company for quite some time, and I have good experience implementing them. However, I need to change my work and work somewhere else. The market here mainly needs a web application developer that I have never worked with before. How difficult is it to switch to using ASP.NET? and what's the best way to start self-study, given that I don’t like to carry a book and read it?

thanks

+6
winforms
source share
6 answers

Some of the stumbling blocks that you encounter are not covered by WinForms:

  • ASP.NET Page Life Cycle
  • IIS configuration
  • Security
  • Performance
  • Search engine optimization
  • HTTP protocol
  • HTML / XML / CSS / Javascript
  • Databases (most websites anyway)
  • Web Services
  • Differences in the browser (this one will really hit)

See What should a developer know before creating a public website? for a good start to what you will receive.

+8
source share

Many people seem to be switching to web applications right now; the good news is that it is not as difficult as you might think. ASP.NET uses many of the same design patterns for a user interface infrastructure like WinForms, so this should be pretty simple.

In addition, by switching to ASP.NET, you can still use all your knowledge of C #, as this is one of the supported languages ​​for this technology. You will start working soon.

There are several ways to create user interfaces with ASP.NET, but the most common are ASP.NET WebForms. You can also use frameworks that provide some abstraction like ASP.NET MVC (similar to Ruby on Rails) if you want to separate your business logic and interface a bit.

I suggest taking a look at http://www.asp.net , which has a ton of great resources to get off the ground, as well as videos, samples, and walkthroughs. Good luck; I'm sure everything will be fine!

+1
source share

The hardest part of this transition is that many of the examples you see have most, if not all, of the code on the aspx.cs code page.

If you adhere to good design and coding techniques in the WinForms world, you know that the more you can separate a presentation from the classes and objects you are developing, the easier it is for your design to test. This is the same in the web world.

It will take a little to get used to the page and manage the life cycle, and several objects are more than you might think, but this should be a fairly smooth transition.

+1
source share

You understood correctly! Web applications are very different from applications with widespread Windows client applications. Moreover, they require a change in thinking.

The most basic and fundamental difference arises from the fact that the "Internet is stateless." IMO, the second most important difference is that web applications are displayed in a user’s browser, and therefore the level of interactivity you can provide is inherently limited by browser capabilities.

My suggestion will start slowly and get used to the ASP.NET page life cycle, codes and codes next to creating web forms, understanding how ASP.NET compiles and runs pages on the server, state management, client script (e.g. Javascript), etc. d.

Get a good entry-level book on ASP.NET and be sure to check out all the awesome videos on the ASP.NET site.

+1
source share

As already mentioned, this is not a very difficult transition, in terms of code. But don't let the obvious resemblances fool you; the web interface is a completely different thing than the window forms user interface. Put some energy into understanding the differences between the user interface based on the state of the Windows Forms application and the request-based user interface in the web application. This is where I saw the weirdest constructs in ASP.NET applications over the years.

0
source share

you must first buy some asp.net core books to understand the basic concepts of an asp.net application. Then create a basic simple application and play with basic controls such as a text box, button, radio button, drop-down list, grid, etc. Then you should start professional programming.

It is very simple, you just need to see the asp.net application and lifecyle pages. You are familiar with programming in C # and vb.net as you are doing winforms programming.

ASP.NET web forms are also event driven. Therefore, it will work for you.

0
source share

All Articles