ASP.NET Core là một framework mã nguồn mở, hiệu suất cao và đa nền tảng dùng để xây dựng các ứng dụng hiện đại có kết nối với Internet và dựa trên mô hình đám mây. ASP.NET Core được phát triển bởi tập đoàn Microsoft và cộng đồng lập trình viên. ASP.NET Core cũng là một framework kiểu module có khả năng thực thi trên framework .NET, Windows và .NET Core đa nền tảng.
ASP.NET Core còn được xem là sự kết hợp giữa ASP.NET MVC và ASP.NET Web API tạo thành một mô hình lập trình đơn. Mặc dù được xây dựng mới, ASP.NET Core vẫn có tính tương thích cao với ASP.NET MVC. Hơn nữa, các ứng dụng ASP.NET Core hỗ trợ kiểu phiên bản “side by side”, tức là cùng chạy trên một máy tính với việc lựa chọn nhiều phiên bản ASP.NET Core khác nhau. Điều này là không thể với các phiên bản ASP.NET trước kia. Phiên bản ASP.NET Core mới nhất tính đến thời điểm viết bài này là ASP.NET 2.1.
Với ASP.NET Core, bạn có thể:
- Xây dựng các ứng dụng web, các dịch vụ, ứng dụng IoT và các phần backend mobile.
- Sử dụng các công cụ phát triển ưa thích trên Windows, macOS và Linux.
- Triển khai trên đám mây hoặc tại chỗ.
- Chạy trên .NET Core hoặc .NET Framework.
Tại sao dùng ASP.NET Core?
Như bạn đã biết, có hàng triệu lập trình viên đã và đang sử dụng ASP.NET 4.x để xây dựng các ứng dụng Web. ASP.NET Core là một phiên bản thiết kế lại của ASP.NET 4.x, với nhiều thay đổi kiến trúc giúp framework nhẹ hơn và có tính module nhiều hơn. Do đó, các lập trình viên có thể tiếp tục xây dựng ứng dụng bằng ASP.NET Core với nền tảng hiệu suất và tính tương thích tốt hơn.
ASP.NET mang lại các lợi ích như sau:
- Dùng để xây dựng giao diện Web (Web UI) cũng như các API Web.
- Tích hợp các framework phía client hiện đại và các quy trình làm việc phát triển.
- Hệ thống cấu hình sẵn có trên đám mây.
- Tích hợp sẵn nhúng phụ thuộc.
- Đường ống (pipeline) yêu cầu HTTP mang tính module, hiện suất cao và nhẹ ký.
- Có khả năng lưu trữ (host) ở IIS, Nginx, Apache, Docker, hoặc tự host ở các tiến trình riêng.
- Tạo mới phiên bản app side-by-side với .NET Core.
- Tạo công cụ đơn giản hóa phát triển web hiện đại.
- Khả năng xây dựng, chạy trên Windows, macOS, và Linux.
- Mã nguồn mở và tập trung vào cộng đồng phát triển mã nguồn.
ASP.NET Core được cung cấp dưới dạng các gói NuGet. Bạn có thể sử dụng các gói này để tối ưu hóa ứng dụng khi chỉ nhúng những thành phần cần thiết. Trên thực tế, các ứng dụng ASP.NET Core 2.x cũng chỉ yêu cầu một gói NuGet đơn lẻ.
Xây dựng các API và giao diện (UI) Web dùng ASP.NET Core MVC
ASP.NET Core MVC cung cấp các tính năng để xây dựng API Web và ứng dụng web như sau:
- Mô hình MVC (Model-View-Controller) giúp tạo ra các API web và ứng dụng web có khả năng thực nghiệm.
- Razor Pages (phần mới ở ASP.NET Core 2.0) là một mô hình lập trình dựa theo cơ chế trang web giúp xây dựng giao diện web dễ và hiệu quả hơn.
- Razor cung cấp một cú pháp hiệu quả cho các trang Razor và view MVC.
- Tag Helper cho phép mã nguồn phía server tham gia vào việc tạo và phát sinh phần tử HTML ở các tập tin Razor.
- Tích hợp hỗ trợ cho các định dạng đa dữ liệu và việc dàn xếp nội dung cho phép các API web tiếp cận nhiều khách hàng hơn, bao gồm trên các trình duyệt và thiết bị mobile khác nhau.
- Ràng buộc mô hình tự động ánh xạ dữ liệu từ các yêu cầu HTTP đến các tham số phương thức hành động.
- Xác thực mô hình tự động thực thi xác thực dữ liệu phía client và server.
Phát triển phía client
ASP.NET Core tích hợp liền mạch với các thư viện và framework phía client, bao gồm including Angular, React, và Bootstrap.
ASP.NET Core nhắm đến .NET Framework
ASP.NET Core có thể nhắm đến .NET Core hoặc .NET Framework. Các ứng dụng ASP.NET Core nhắm đến .NET Framework không phải là ứng dụng đa nền tảng khi chỉ chạy trên Windows. Hiện chưa có kế hoạch loại bỏ sự hỗ trợ .NET Framework ở ASP.NET Core. Nhìn chung, ASP.NET Core được tạo thành các thư viện .NET Standard (bản .NET chuẩn). Các ứng dụng viết bằng .NET Standard 2.0 cho thế chạy bất kỳ đâu nếu .NET Standard 2.0 được hỗ trợ.
Có một số lợi ích khi nhắm đến .NET Core so với .NET Framework đó là:
- Đa nền tảng, chạy trên macOS, Linux và Windows.
- Nâng cao hiệu suất
- Tạo phiên bản side-by-side
- Các API mới
- Mã nguồn mở
Kết luận
ASP.NET Core là một mô hình lập trình mới sử dụng cho các ứng dụng chạy đa nền tảng (macOs, Linux và Windows) và có khả năng triển khai trên đám mây. ASP.NET Core cũng hỗ trợ ASP.NET MVC, ASP.NET Web API, backend mobile và cũng là mã nguồn mở. Bạn cần phân tích kỹ yêu cầu của ứng dụng để quyết định xem có nên dùng ASP.NET Core hay không. Mời bạn tiếp tục theo dõi phần tiếp theo.
- APA:
Dammio. (2018). [ASP.NET Core] Phần 1: Giới thiệu về ASP.NET Core. https://www.dammio.com/2018/09/03/asp-net-core-phan-1-gioi-thieu-ve-asp-net-core.
- BibTeX:
@misc{dammio,
author = {Dammio},
title = {[ASP.NET Core] Phần 1: Giới thiệu về ASP.NET Core},
year = {2018},
url = {https://www.dammio.com/2018/09/03/asp-net-core-phan-1-gioi-thieu-ve-asp-net-core},
urldate = {2024-10-09}
}