التخطي إلى المحتوى الرئيسي

Brutally Honest Advice for New .NET Web Developers

 Brutally Honest Advice for New .NET Web Developers:

If you want to learn .NET in 2025 then what should you learn and what should not, In this article I am explaining complete .NET Roadmap and topic that is important to learn in 2025.

Learning C# 

The first thing you obviously need to learn is C#. If you don't know C#, you will get horrendously stuck. You need to be able to write a console application before you even begin to consider writing a web app of any type.

What Not to Learn

Visual Basic .NET: As a beginner, you should not learn Visual Basic .NET ever today unless you want to work on horrible legacy code.

F#: This is for people with galaxy brains, and you might not be there yet.

Moving to Web Applications

Once you are ready to move on to web applications, you should learn ASP.NET MVC first before you do anything else.

Core Concepts in .NET MVC

The reason you need to learn .NET MVC is that these three core concepts will be everything in C# and .NET web application frameworks:

Routing

View Models and MVVM

Web API and API Controllers

Basic Web Technologies

The next set of table stakes are HTML, CSS, and JavaScript. These are the basic building blocks of the web, and don't let crazy abstraction layers over these basic technologies distract you from actually learning the fundamental principles of how web pages are made.

Single-Page Application Frameworks

If you need to learn a single-page application framework, learn React. Don't bother learning anything else. Do not do Angular, and certainly don't try to learn Blazor before you can do MVC.

Foundational Software Architecture Concepts

You need to know the following:

Dependency Injection

SOLID Principles

Testable Code: You don't need to do strict TDD (Test-Driven Development) 100% red-green-refactor at this stage in your career, but you need to be able to write testable, decoupled code.

Recommended Books

To help you get there, I've chosen three books I would consider as Bibles for .NET developers:

Pro C# with .NET 6

Clean Code by Robert C. Martin: Despite his politics, you need to read this book because everybody else in the office will be talking about the contents of this book.

Dependency Injection in .NET by Mark Seemann: He is a genius. This is a classic book, and all the concepts still apply all the way through to the new dependency injection frameworks in .NET Core.

Databases

For databases, you need to learn SQL Server. 95% of applications using .NET will be in SQL Server. Do not be tempted to try and use PostgreSQL or MySQL at this stage. These are very esoteric options that very niche companies use with .NET.

You can use Entity Framework Code First as your ORM. You might want to experiment with Dapper, but you don't need to. Entity Framework will force you to understand LINQ as well, which is extremely important. You should also install SQL Server Express on your local Windows machine so you can get used to SQL Server Management Studio, which you'll be spending a lot of time with in your future career.


Types of Companies Using .NET

Be aware of the types of companies that actually use .NET:

Enterprise: Big companies, banks, insurance companies, and so on. Big and stable, may or may not be much fun to work at.

Small Software Companies: Started a long time ago, maybe a decade ago, that use quite old versions of .NET. They might have updated their stacks and frameworks, but there are not many new startups using .NET today.

Job Hunting Tips

When you are job hunting, be very careful with job descriptions:

.NET Core vs. .NET 5: .NET Core was rebranded to .NET 5, so be careful with job descriptions to ensure you're not getting a job that uses .NET Framework.

Red Flags: If the job description mentions WebForms, SOAP, WCF, or MSMQ, avoid those jobs to stay sane.



تعليقات

المشاركات الشائعة من هذه المدونة

Uncontrolled form input in React-JS

  Uncontrolled form input in React-JS? If we want to take input from users without any separate event handling then we can uncontrolled the data binding technique. The uncontrolled input is similar to the traditional HTML form inputs. The DOM itself handles the form data. Here, the HTML elements maintain their own state that will be updated when the input value changes. To write an uncontrolled component, you need to use a ref to get form values from the DOM. In other words, there is no need to write an event handler for every state update. You can use a ref to access the input field value of the form from the DOM. Example of Uncontrolled Form Input:- import React from "react" ; export class Info extends React . Component {     constructor ( props )     {         super ( props );         this . fun = this . fun . bind ( this ); //event method binding         this . input = React . createRef ();...

JSP Page design using Internal CSS

  JSP is used to design the user interface of an application, CSS is used to provide set of properties. Jsp provide proper page template to create user interface of dynamic web application. We can write CSS using three different ways 1)  inline CSS:-   we will write CSS tag under HTML elements <div style="width:200px; height:100px; background-color:green;"></div> 2)  Internal CSS:-  we will write CSS under <style> block. <style type="text/css"> #abc { width:200px;  height:100px;  background-color:green; } </style> <div id="abc"></div> 3) External CSS:-  we will write CSS to create a separate file and link it into HTML Web pages. create a separate file and named it style.css #abc { width:200px;  height:100px;  background-color:green; } go into Jsp page and link style.css <link href="style.css"  type="text/css" rel="stylesheet"   /> <div id="abc"> </div> Exam...

JDBC using JSP and Servlet

JDBC means Java Database Connectivity ,It is intermediates from Application to database. JDBC has different type of divers and provides to communicate from database server. JDBC contain four different type of approach to communicate with Database Type 1:- JDBC-ODBC Driver Type2:- JDBC Vendor specific Type3 :- JDBC Network Specific Type4:- JDBC Client-Server based Driver  or JAVA thin driver:- Mostly we prefer Type 4 type of Driver to communicate with database server. Step for JDBC:- 1  Create Database using MYSQL ,ORACLE ,MS-SQL or any other database 2   Create Table using database server 3   Create Form according to database table 4  Submit Form and get form data into servlet 5  write JDBC Code:-     5.1)   import package    import java.sql.*     5.2)  Add JDBC Driver according to database ide tools     5.3)  call driver in program         ...