When Microsoft started its .NET strategy in 2000, I was still a college student. The famous hacker Miguel de Icaza, Miguel started a lofty project after extensive research in order to find the GNOME project development framework: Mono, a Microsoft .NET Framework's free GNU/Linux implementation, I followed Miguel's guidance on the foreign Linux forum and embarked on the road of .NET development. When I started to contact the .NET Framework, it was still in the beta stage. On February 13, 2002, Microsoft released .NET 1.0, I also graduated and worked for half a year, and started to use ASP.NET 1.0 to develop projects. Today, I have been developing with .NET for 20 years. On the occasion of .NET's 20th year, I feel and write these thoughts.
Great changes have taken place in the past 20 years. Microsoft has always been able to keep pace with the times. In 2000, its market value was second, and in 2022, it will still be ranked second. During this period, Microsoft has also experienced ups and downs. As one of Microsoft's most important developers Platform products have gone through ups and downs, just like Microsoft stock.
From 2000 to 2014, Microsoft made .NET Framework part of Windows, and Microsoft also stood on the opposite side of open source. The most classic is Steve Ballmer, who originally called "open source" a cancer of Microsoft's intellectual property. After 2014, Microsoft changed its CEO, fully embraced Linux, made .NET Core open source, acquired Xamarin, and built a new ecosystem. Microsoft’s focus has shifted to the cloud. Microsoft has seized the era of cloud computing. In 2017, Microsoft’s market value has grown to 500 billion US dollars, 2022 is already 2.3 trillion US dollars. Evolved from 2014, supports multiple platforms and is available for various operating systems such as Linux, Mac, iOS and Android, etc. It covers a wide range of applications, from desktop, web applications, cloud, mobile, gaming, IoT to AI.
The Windows operating system is mainly used for desktop-centric purposes. In a sense, it started to improve the development efficiency in a specific environment. In the 20th year of .NET, it finally reached the "unified platform for all applications". the height of. While there is some lag in MAUI (not GA), which will also be GA in the second quarter of this year, with the release of .NET 6, the One .NET vision has been realized.
In fact, before the release of the NET Framework, Microsoft has dreamed of multiple platforms since the COM era. Microsoft can be regarded as a tenacious company. After 20 years of unremitting efforts, trial and error, many of them are wrong, and even now I can feel that many soft blacks in the society used to be soft fans. Maybe Can't tolerate Microsoft's perseverance. After various reflections and 20 years of time, the most important thing now is the developers, with the goal of openness, after careful consideration, returning to serve the developers well.
The unification of .NET Framework, .NET Core and Xamarin, .NET 6 completes the vision of unifying .NET, unifying SDKs, class libraries and toolchains that were previously disparate, supporting cross-platform native and web UIs. The vision also includes cloud native, where Microsoft plans to provide the best solution for all modern workloads. .NET provides more options for all developers. Using the tools and platforms on .NET, developers can easily achieve what they want, no matter what they choose. .NET 6 unifies the class library and SDK. In addition to the release of the new C# 10 and F#6, it also supports the Apple M1 processor. Also, unlike NET 5, it also offers Long Term Support (LTS), which provides three years of support.
NET with every upgrade, performance comes into focus. NET 6's ASP.NET Core web application is 10 times faster than Node.js, and the .NET implementation of gRpc is the best performing, outperforming the C++ implementation. In .NET 6, there is also a focus on speeding up web application performance and reducing resource usage, in other words an investment in cloud native.
Now .NET is also OSS, and updates are released as frequently as any other OSS. In practice, however, it's easier to use knowing the version upgrade cycle, so the timeline becomes clear, and as an enterprise company, it's safe to invest in .NET technology if its future plans for .NET are disclosed. From the idea of using the same version of the Long Term Support version, it's easy to move to agile processes and mindsets that update to new versions in the shortest possible cycles, which is now most needed from a secure application development perspective It's all about fixing bugs.
There are also many defects in the open source community because of the problems of engineering operation. Microsoft's management science with commercial company blood is more integrated into .NET open source projects. In the future, open source, business, and academia will be combined more perfectly.
The status quo of .NET programmers is: "In the case of being forced to develop various applications, we must choose targeted tools and frameworks, the current system is moving to the cloud, infrastructure and services are also changing, and the development site is becoming more and more difficult. Getting more complex. . NET developers can stay productive by deploying your favorite apps on a variety of targets using the Visual Studio IDE, called the universe's first.
NET 6 also improves support for "ASP.NET Core Blazor" to facilitate front-end web development for C# developers. Web application development uses different languages and frameworks on the server side and front end. Front-end web UIs are based on basic JavaScript and are usually developed using frameworks such as Angular, React, and Vue. ASP.NET Core Blazor's job is to enable front-end development in languages like C# without having to know a JavaScript framework.
ASP.NET Core Blazor is based on WebAssembly, which is supported by most modern web browsers. So code written in C# runs as WebAssembly with native performance. Depending on how you create it, you can make it run offline, or you can install it on your computer as a PWA (Active Web App) and run it like a native app. This runs on a plugin much like Silverlight or Flash before, except that Blazor Wasm uses the web standard WebAssembly.
ASP.NET Core Blazor can download DLLs to a web browser and run on WebAssembly. Since it runs entirely on the client side, it works offline without a server component, but the download size is larger. Instead, it provides a way to run a program on a Blazor server and render it using a technology called SignalR. This requires persistent connections, has high UI latency, but is fast to start, and has the advantage of being usable on older web browsers and thin clients.
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。