Bạn mới dấn thân vào con đường lập trình web và bối rối vì quá nhiều thuật ngữ như .NET, .NET core, .NET framework. Vậy sự khác biệt giữa chúng là gì? Nên chọn cái nào tốt nhất để học phát triển web? Trong bài viết này của TopDev, chúng ta sẽ tập trung đi sâu tìm hiểu về .NET core là gì và lịch sử hình thành của nó, đồng thời giúp bạn giải đáp thắc mắc ở đầu bài.
Tổng quan về .NET Core
.NET Core là gì?
.NET Core là phiên bản cải tiến của .NET Framework, là một nền tảng phát triển đa năng, mã nguồn mở, miễn phí được duy trì bởi Microsoft. Nó là một framework đa nền tảng chạy trên các hệ điều hành Windows, macOS và Linux.
.NET Core có thể được sử dụng để xây dựng các loại ứng dụng khác nhau như thiết bị di động, máy tính để bàn, web, đám mây, IoT, máy học, microservice, trò chơi, v.v.
Xem tin tuyển dụng .NET tại TopDev
Lịch sử hình thành .NET Core
Do một số hạn chế khi sử dụng .NET Framework như nó chỉ chạy trên nền tảng Windows. Ngoài ra, bạn cần sử dụng các API .NET khác nhau cho các thiết bị Windows khác nhau như Windows Desktop, Windows Store, Windows Phone và ứng dụng Web. Ngoài ra, .NET Framework còn là một framework toàn máy. Bất kỳ thay đổi nào được thực hiện đối với nó đều ảnh hưởng đến tất cả các ứng dụng phụ thuộc vào nó.
Ngày nay, việc có một ứng dụng chạy trên nhiều thiết bị là điều phổ biến; một backend trên máy chủ web, giao diện quản trị trên desktop Windows, các ứng dụng web và di động cho người dùng. Do đó, cần có một framework duy nhất hoạt động ở mọi nơi. Với ý tưởng này, Microsoft đã tạo ra .NET Core. Mục tiêu chính của .NET Core là làm cho .NET Framework trở thành mã nguồn mở, tương thích đa nền tảng và có thể được sử dụng trong nhiều lĩnh vực khác nhau, từ trung tâm dữ liệu đến các thiết bị cảm ứng.
Tên .NET Core đã được thay đổi sau .NET Core 3.1. Phiên bản tiếp theo của .NET Core sau phiên bản 3.1 được đặt tên là .NET 5. Phiên bản mới nhất của .NET Core là .NET 7 tính đến thời điểm viết bài này.
.NET 5 hợp nhất các nền tảng .NET Core, .NET Framework và Xamarin riêng biệt trước đây, giúp các nhà phát triển dễ dàng sử dụng một nền tảng duy nhất cho nhiều loại ứng dụng khác nhau. Và hiện nay được gọi ngắn gọn là .NET
Đọc thêm: Anh em nhà .NET
Phân biệt .NET, .NET Core và .NET Framework
.NET (từ phiên bản 5.0 trở đi) | .NET Core | .NET Framework | |
Ra đời | Năm 2020 (kết hợp .NET Core và Mono) | Năm 2016 | Từ năm 2002 |
Nền tảng | Đa nền tảng. | Đa nền tảng (Windows, macOS, Linux) | Chỉ chạy trên Windows. |
Ứng dụng | Tương tự .NET Core nhưng mở rộng và hợp nhất một số tính năng. | Phát triển ứng dụng web (ASP.NET Core), ứng dụng console, dịch vụ microservices | Phát triển ứng dụng desktop (WinForms, WPF), dịch vụ web (ASP.NET WebForms, ASP.NET MVC) |
Hỗ trợ | Tất cả các loại ứng dụng (web, mobile, desktop, IoT, AI). | Hiệu suất cao, linh hoạt, nhẹ và hiện đại | Đầy đủ các thư viện và API |
Đặc điểm cốt lõi của .NET Core
- Khung nguồn mở: .NET Core là một khung nguồn mở được Microsoft duy trì và có sẵn trên GitHub theo giấy phép MIT và Apache 2. Đây là một dự án thuộc .NET Foundation. Bạn có thể xem, tải xuống hoặc đóng góp cho mã nguồn qua các kho lưu trữ GitHub.
- Đa nền tảng: .NET Core chạy trên Windows, macOS và Linux, có các thời gian chạy khác nhau cho mỗi hệ điều hành nhưng tạo ra cùng một đầu ra.
- Nhất quán trên các kiến trúc: .NET Core thực thi mã với cùng hành vi trên các kiến trúc tập lệnh khác nhau, bao gồm x64, x86 và ARM.
- Hỗ trợ nhiều loại ứng dụng: .NET Core cho phép phát triển và chạy nhiều loại ứng dụng khác nhau như thiết bị di động, desktop, web, đám mây, IoT, máy học, microservices và trò chơi.
- Hỗ trợ nhiều ngôn ngữ lập trình: .NET Core hỗ trợ các ngôn ngữ lập trình C#, F# và Visual Basic. Bạn có thể sử dụng các IDE yêu thích như Visual Studio 2017/2019, Visual Studio Code, Sublime Text, Vim, và nhiều hơn nữa.
- Kiến trúc mô-đun: .NET Core hỗ trợ kiến trúc mô-đun thông qua các gói NuGet. Các tính năng khác nhau có thể được thêm vào dự án khi cần thiết, giảm dung lượng bộ nhớ và tăng tốc hiệu suất.
- Công cụ CLI: .NET Core bao gồm các công cụ CLI (Giao diện dòng lệnh) để phát triển và tích hợp liên tục.
- Triển khai linh hoạt: Ứng dụng .NET Core có thể được triển khai trên toàn người dùng, toàn hệ thống hoặc với Docker Container.
- Khả năng tương thích: .NET Core tương thích với .NET Framework và Mono API thông qua .NET Standard.
- Hiệu suất cao: .NET Core được tối ưu hóa về hiệu suất với các tính năng như biên dịch Just-In-Time (JIT), dịch mã thành hướng dẫn máy trong thời gian chạy để cải thiện tốc độ thực thi.
- Nền tảng hợp nhất: Từ .NET Core 3.1 trở đi, Microsoft đã hợp nhất các nền tảng .NET, tập hợp .NET Core, .NET Framework và Xamarin thành một nền tảng duy nhất gọi là “.NET” bắt đầu từ .NET 5, nhằm cung cấp tính nhất quán API và hành vi thời gian chạy trên các loại ứng dụng khác nhau.
Xem thêm:
- Các khái niệm cơ bản .NET core bạn nên biết
- ML.NET của Microsoft – Giới thiệu nền tảng máy học ML.NET
Như vậy, bài viết của TopDev đã giúp bạn hiểu rõ .NET Core là gì? Đồng thời biết về lịch sử hình thành và phát triển .NET framework và .NET Core… Hãy cũng khám phá nhiều hơn về nền tảng phát triển này qua các bài tiếp theo của chúng tôi!
Nguồn tham khảo: www.tutorialsteacher.com/core/dotnet-core