


.NET Core Quick Start Tutorial 1. The beginning: Talking about .NET Core
1. The origin of .NET Core
When it comes to .NET Core, we must not mention its predecessor.NET. Java was in the limelight at that time, and Microsoft also favored Java. The Java virtual machine on the Windows platform was developed by Microsoft based on JVM standards. It is said to be the best performance Java virtual machine at that time. However, Microsoft has its own little abacus, trying to bundle Java with the Windows platform and add some Windows-specific features. Sun's dissatisfaction with this led to a breakdown of the relationship between the two parties, and Microsoft then launched .NET. .NET has borrowed many features of Java since its inception and gradually surpassed Java in language features and form development. Java developed slowly after version 1.6, and later borrowed from .NET in language features, partly due to Sun's poor performance. https://www.php.cn/link/7337bc5b4a00fa2ee237cf50a57b288d
Although .NET has been developing well and competitive frameworks such as WPF and Unity3D have emerged, .NET is not popular in some large projects, especially Internet companies. This is because .NET is not open source or cross-platform, which leads to the following problems:
Cost: Choosing .NET means choosing Visual Studio and Windows Server, and the license fee is a cost that cannot be ignored. Ecology: Without community contribution, .NET is difficult to nurture an excellent framework. Talent: It is impossible to attract excellent engineers from front-line Internet companies because they prefer to use Java, PHP, etc. Although there is a powerful framework like Mono that allows .NET to run on Linux, this is not enough because Mono can only play some of the functions of .NET. In addition, with the rise of container technology, the strong dependence of .NET and Windows makes it difficult to adapt to new technologies such as Docker. In short, due to the situation, Microsoft launched .NET Core.
2. The difference between .NET Core and .NET Framework. .NET Core is an open source and cross-platform version of .NET Framework. Although .NET Core is an open source version of the .NET Framework, Microsoft cannot maintain two different branches at the same time, one running on Windows and the other running on Linux (Unix Like) systems. Therefore, Microsoft abstracted a standard library, and both .NET Core and .NET Framework must implement the API of this standard library. In this way, .NET Core, .NET Framework and XAMARIN become three brothers, serving different platforms respectively.
Now the preview version of .NET Core 2.0 has been released, and .NET Core 2.0 is basically equivalent to .NET Framework 4.6.1. It took only one year to release version 1.0 in June 2016 to release version 2.0 in June 2017. Microsoft's efforts can be seen.
3. What preparations do you need to make to learn .NET Core? Basic programming experience (.NET, Java, Python, etc. are all possible) Windows / Mac as a development environment (it is recommended to use Windows, because the development environment is Windows, and the operation will be different in different environments) IDE: Visual Studio 2017 / Visual Studio Code Linux basic use (recommended CentOS and Ubuntu) Virtual machine installation tutorial: https://www.php.cn/link/8fc00922bc09442f10ff8a8be0973604 Quickly get started with CentOS: https://www.php.cn/link/cd3b6e78242b4c8faa986194ba2bfc58 Quick get started with Ubuntu: https://www.php.cn/link/32926f6c2eba28e293a6afa008a09f0a If you really don't have the conditions to build a Linux environment, Windows can do it, but it is not recommended.
The above is the detailed content of .NET Core Quick Start Tutorial 1. The beginning: Talking about .NET Core. For more information, please follow other related articles on the PHP Chinese website!

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

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

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

Hot Topics











C# is widely used in enterprise-level applications, game development, mobile applications and web development. 1) In enterprise-level applications, C# is often used for ASP.NETCore to develop WebAPI. 2) In game development, C# is combined with the Unity engine to realize role control and other functions. 3) C# supports polymorphism and asynchronous programming to improve code flexibility and application performance.

Both Python and JavaScript's choices in development environments are important. 1) Python's development environment includes PyCharm, JupyterNotebook and Anaconda, which are suitable for data science and rapid prototyping. 2) The development environment of JavaScript includes Node.js, VSCode and Webpack, which are suitable for front-end and back-end development. Choosing the right tools according to project needs can improve development efficiency and project success rate.

Created by Ripple, Ripple is used for cross-border payments, which are fast and low-cost and suitable for small transaction payments. After registering a wallet and exchange, purchase and storage can be made.

The future trends of Python and JavaScript include: 1. Python will consolidate its position in the fields of scientific computing and AI, 2. JavaScript will promote the development of web technology, 3. Cross-platform development will become a hot topic, and 4. Performance optimization will be the focus. Both will continue to expand application scenarios in their respective fields and make more breakthroughs in performance.

Using the chrono library in C can allow you to control time and time intervals more accurately. Let's explore the charm of this library. C's chrono library is part of the standard library, which provides a modern way to deal with time and time intervals. For programmers who have suffered from time.h and ctime, chrono is undoubtedly a boon. It not only improves the readability and maintainability of the code, but also provides higher accuracy and flexibility. Let's start with the basics. The chrono library mainly includes the following key components: std::chrono::system_clock: represents the system clock, used to obtain the current time. std::chron

Handling high DPI display in C can be achieved through the following steps: 1) Understand DPI and scaling, use the operating system API to obtain DPI information and adjust the graphics output; 2) Handle cross-platform compatibility, use cross-platform graphics libraries such as SDL or Qt; 3) Perform performance optimization, improve performance through cache, hardware acceleration, and dynamic adjustment of the details level; 4) Solve common problems, such as blurred text and interface elements are too small, and solve by correctly applying DPI scaling.

macOSandLinuxbothofferuniquestrengths:macOSprovidesauser-friendlyexperiencewithexcellenthardwareintegration,whileLinuxexcelsinflexibilityandcommunitysupport.macOS,developedbyApple,isknownforitssleekinterfaceandecosystemintegration,whereasLinux,beingo

DMA in C refers to DirectMemoryAccess, a direct memory access technology, allowing hardware devices to directly transmit data to memory without CPU intervention. 1) DMA operation is highly dependent on hardware devices and drivers, and the implementation method varies from system to system. 2) Direct access to memory may bring security risks, and the correctness and security of the code must be ensured. 3) DMA can improve performance, but improper use may lead to degradation of system performance. Through practice and learning, we can master the skills of using DMA and maximize its effectiveness in scenarios such as high-speed data transmission and real-time signal processing.
