The web has changed quite rapidly in the past 20 years. More and more logic is moved from the server side to the client side. Not only does it require writing more complex JavaScript code on the client side, but something strange has happened in recent years: JavaScript is moving to the server, and web technology is moving to the desktop. This is nothing new, but who would have thought of this 20 years ago?
The web has changed, so my technology stack has also changed. It seems that my stack has changed back to roots. 20 years ago I started with HTML and JavaScript and moved on to classic ASP using VBScript. In 2001, I became obsessed with ASP.NET and VB.NET and used them in products. I stopped doing this until the end of 2006. At the end of 2007, I started writing ASP.NET in C#. HTML and JavaScript were still involved, but were more or less encapsulated in third-party controls, and jQuery was an alias for JavaScript at the time. Everything about JavaScript is jQuery. ASP.NET WebForms feels huge and not very flexible, but it works effectively. Later - in 2010 - I was doing a lot of stuff with Silverlight, WinForms and WPF.
ASP.NET MVC appeared, and the web began to feel more natural again than ASP.NET WebForms. From an ASP.NET developer's perspective, the web starts to get better: cleaner, more flexible, lighter and more natural.
But something new has also emerged. Something from outside the ASP.NET world. Powerful JavaScript libraries like KnockOut, Backbone, and later Angular and React. The first single page application framework (sorry, I don't want to mention the crappy ASP.NET AJAX...) appeared, and the UI logic was moved from the server to the client. (Okay, we did get a cool SPA back in 2005, but we hadn't figured out how to create a framework with it.)
NodeJS changes the world again by using JavaScript on the server. You only need two different languages (HTML and JavaScript) to create cool web applications. I'm not really interested in NodeJS, except for using it on the backend, since some tools are based on NodeJS. Maybe it's a bug, who knows; )
Now that we have ASP.NET Core, this feels much more natural than traditional ASP.NET MVC. The so-called natural in this case means that it feels almost the same as writing traditional ASP. This means working with the stateless web rather than trying to fix it. Using Request and Response works more directly than traditional ASP.NET MVC, and even more directly than ASP.NET WebForms. Natural doesn't mean you have to write the same unstructured nonsense as traditional ASP. ; )
Because we already have a very cool client-side JavaScript framework. With a simplified, minimalist server-side framework, the server part is reduced to just serving static files and data on a REST service.
It is at this time that it makes sense to have a deeper understanding of TypeScript. But as of this point in time, it doesn’t make sense to me. I've been coding in JavaScript for probably 20 years, but I've never written so much JavaScript code in a single project. Then, over the past few years I started using AngularJS. Angular2 is one reason why TypeScript should be studied carefully, because the current Angular2 is completely written in TypeScript.
A few weeks ago, I launched my first real NodeJS project: a desktop application that uses NodeJS to provide users with a highly flexible scripting runtime. NodeJS provides functionality and UI to users, all written in TypeScript instead of plain JavaScript. Why? Because TypeScript has many unexpected benefits:
It’s still possible to write JavaScript
Help to write small modules and structured code
Help to write NodeJS Compatible modules
#Generally speaking, there is no need to write all the JavaScript code for each module
Just focus on the functionality you need to write
This is why TypeScript is a big helper for me. Of course typed languages are useful in many situations, but - after working with JS for 20 years - I like the flexibility of the implicitly typed JavaScript language, and I'm familiar with it. This means that, from my perspective, the great thing about TypeScript is that I can still write implicitly typed code in TypeScript and take advantage of the flexibility of JavaScript. That's why I said "it's still possible to write JavaScript".
Web technology has changed, my technology stack has changed, and so have the tools. All of these things are becoming lighter, along with the tools. The console is back, and IDEs are back to their roots: nothing more than text editors with features like syntax highlighting and IntelliSense. Currently, I prefer to use the Swiss Army Knife of Visual Studio Code or Adobe Brackets, depending on the type of project I'm working on. Both start out very fast and include some nice features.
It's a pleasure to use a lightweight IDE. Everything is fast because the resources of the machine are available through the app I need to develop, rather than through the IDE I need to use to develop the app. This makes development much faster.
Launching an IDE today means launching cmder (my favorite console on Windows), changing the project folder, launching a console command to view the typescript file, saving it, and compiling it. I can launch another console to use tools like NPM, gulp, typings, dotnet CLI, NodeJS, etc. as well as launch my favorite lightweight editor to write code! : )
Original text: How Web Development Changed for Me Over the Last 20 Years
The above is the detailed content of How web development has changed over the past 20+ years. For more information, please follow other related articles on the PHP Chinese website!

The combination of C# and .NET provides developers with a powerful programming environment. 1) C# supports polymorphism and asynchronous programming, 2) .NET provides cross-platform capabilities and concurrent processing mechanisms, which makes them widely used in desktop, web and mobile application development.

.NETFramework is a software framework, and C# is a programming language. 1..NETFramework provides libraries and services, supporting desktop, web and mobile application development. 2.C# is designed for .NETFramework and supports modern programming functions. 3..NETFramework manages code execution through CLR, and the C# code is compiled into IL and runs by CLR. 4. Use .NETFramework to quickly develop applications, and C# provides advanced functions such as LINQ. 5. Common errors include type conversion and asynchronous programming deadlocks. VisualStudio tools are required for debugging.

C# is a modern, object-oriented programming language developed by Microsoft, and .NET is a development framework provided by Microsoft. C# combines the performance of C and the simplicity of Java, and is suitable for building various applications. The .NET framework supports multiple languages, provides garbage collection mechanisms, and simplifies memory management.

C# and .NET runtime work closely together to empower developers to efficient, powerful and cross-platform development capabilities. 1) C# is a type-safe and object-oriented programming language designed to integrate seamlessly with the .NET framework. 2) The .NET runtime manages the execution of C# code, provides garbage collection, type safety and other services, and ensures efficient and cross-platform operation.

To start C#.NET development, you need to: 1. Understand the basic knowledge of C# and the core concepts of the .NET framework; 2. Master the basic concepts of variables, data types, control structures, functions and classes; 3. Learn advanced features of C#, such as LINQ and asynchronous programming; 4. Be familiar with debugging techniques and performance optimization methods for common errors. With these steps, you can gradually penetrate the world of C#.NET and write efficient applications.

The relationship between C# and .NET is inseparable, but they are not the same thing. C# is a programming language, while .NET is a development platform. C# is used to write code, compile into .NET's intermediate language (IL), and executed by the .NET runtime (CLR).

C#.NET is still important because it provides powerful tools and libraries that support multiple application development. 1) C# combines .NET framework to make development efficient and convenient. 2) C#'s type safety and garbage collection mechanism enhance its advantages. 3) .NET provides a cross-platform running environment and rich APIs, improving development flexibility.

C#.NETisversatileforbothwebanddesktopdevelopment.1)Forweb,useASP.NETfordynamicapplications.2)Fordesktop,employWindowsFormsorWPFforrichinterfaces.3)UseXamarinforcross-platformdevelopment,enablingcodesharingacrossWindows,macOS,Linux,andmobiledevices.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Atom editor mac version download
The most popular open source editor