.NET 5 – tương lai của các công nghệ .NET – có gì mới?

.NET 5 sẽ trở thành nền tảng hợp nhất để xây dựng ứng dụng chạy trên nhiều nền tảng và thiết bị khác nhau. Nếu bạn là nhà phát triển ứng dụng .NET hoặc là sinh viên muốn theo đuổi công nghệ Microsoft, thì bạn cần hiểu rõ về .NET 5 và tác động lâu dài của nó.

Microsoft đã công bố .NET 5 tại hội nghị Build 2019. .NET 5 dựa trên .Net Standard. Điều này đồng nghĩa với việc không tất cả các tính năng của .Net framework sẽ xuất hiện trong .NET 5. Việc chuyển sang .NET 5 và những gì sẽ được thay thế sẽ có ảnh hưởng lớn đến quyết định hiện tại của các lập trình viên và sinh viên .NET.

Loạt bài “Các công nghệ phát triển ứng dụng Microsoft mà sinh viên nên biết”: Phần 1 – Giới thiệu chung, .NET Framework, .NET Core, Ngôn ngữ, Công cụPhần 2 – Windows form, WPF, ASP.NET, ASP.NET Core, ADO.NETPhần 3 – Phân biệt các nền tảng .NET Core, .NET Framework, .NET StandardPhần 4 – .NET 5 – Tương lai của công nghệ .NET

Tại sao lại là .NET 5

Có thể bạn tự hỏi tại sao lại là .NET 5?

Nhóm phát triển của Microsoft giải thích rằng hiện có hai nền tảng .NET đang hoạt động song song trên desktop: .NET Core và .NET Framework. Tuy nhiên, trong tương lai, .NET sẽ là sự hợp nhất của tất cả các nền tảng .NET hiện tại. Không còn sự phân biệt như hiện nay với các biệt danh Core, Framework. Tất cả sẽ được gọi chung là .NET.

Có Thể Bạn Quan Tâm :   HoneyGain là gì? Kiếm 50$/tháng bằng cách treo máy HoneyGain
kế hoạch phát hành .net 5 và các phiên bản tương lai

Như vậy, sau một năm nữa, chúng ta sẽ được trải nghiệm nền tảng .NET hợp nhất.

Các công nghệ sẽ không có mặt trên .NET 5 mới

ASP.NET Web Forms

ASP.NET Web Forms là công nghệ hiện đang không được khuyến nghị sử dụng trên .NET Framework. Trong tương lai, Web Forms sẽ không được hỗ trợ trên .NET 5.

Nếu bạn đang sử dụng ASP.NET MVC (full stack), bạn có thể chuyển sang ASP.NET Core MVC hoặc Razor pages. Razor page được giới thiệu trong .NET Core 2.0 và có giao diện tương tự Web Forms, nhưng không cần sử dụng view và controller.

Tuy nhiên, nếu bạn muốn phát triển các ứng dụng web hiện đại cho doanh nghiệp, bạn nên xem xét các công nghệ SPA (single page application) như Blazor, Angular hoặc React. Hiện Microsoft đang khuyến nghị lập trình viên web chuyển sang sử dụng Blazor, công nghệ phát triển ứng dụng web SPA sử dụng WebAssembly và C# thay vì JavaScript.

WCF (Windows Communication Foundation)

WCF là một công nghệ lâu đời trong .NET Framework. Gần đây, WCF đã bị thay thế một phần bởi ASP.NET Web API. Microsoft đã quyết định không bổ sung WCF vào .NET Core. Do đó, WCF sẽ không có mặt trên .NET 5.

Hiện nay, WCF được sử dụng chủ yếu như một thư viện RPC (remote procedure call). Microsoft đề xuất sử dụng gRPC như một giải pháp thay thế. gRPC là một framework mã nguồn mở hiện đại và hiệu suất cao. Duy nhất hạn chế của gRPC là không thể sử dụng trên IIS.

Cập nhật: Template gRPC Service đã có thể sử dụng trên Visual Studio 16.3.9 (ASP.NET Core 3.0).

WF (Workflow Foundation)

WF thường chỉ được sử dụng trong các ứng dụng doanh nghiệp để xử lý các quy trình phức tạp và biến động. WF sẽ không được bổ sung vào .NET Core. Do đó, mỗi ứng dụng doanh nghiệp sẽ phải có một quy trình xử lý nghiệp vụ hoặc công cụ BPM được tích hợp. Nếu đã sử dụng WF, Microsoft đề xuất chuyển sang một nhánh không chính thức của WF runtime để sử dụng trên .NET Core.

Có Thể Bạn Quan Tâm :   Lợi ích và tác hại của Internet mà không phải ai cũng biết

Các công nghệ sẽ được chuyển sang .NET 5

Microsoft sẽ đưa nhóm công nghệ phát triển ứng dụng desktop, bao gồm WinForms, WPF và UWP, vào .NET 5 để hỗ trợ các ứng dụng trên Windows desktop.

WinForms, WPF và UWP hiện đang được sử dụng trên .NET Framework. Trong đó, WinForms và WPF đã có từ lâu và được sử dụng rộng rãi.

Mặc dù công nghệ như WinForms không được khuyến nghị cho các dự án mới, việc đưa chúng vào .NET 5 cho phép chuyển đổi các ứng dụng hiện có (và phổ biến) sang nền tảng mới.

Việc đưa các công nghệ đặc trưng của Windows desktop vào .NET 5 không đồng nghĩa với thay đổi kiến trúc của .NET Core. .NET Core vẫn là một framework đa nền tảng. Các công nghệ như WinForms, WPF và UWP chỉ hướng tới hoạt động trên Windows.

Lợi ích lớn nhất khi sử dụng các công nghệ desktop trên .NET 5 là sử dụng hiệu suất của Core Runtime và API, cũng như triển khai dễ dàng hơn.

Cập nhật: Từ .NET Core 3.1 (11/2019), bạn đã có thể phát triển ứng dụng Windows Forms và Windows Presentation Foundation trên nền tảng này. Tuy nhiên, giao diện thiết kế cho hai framework này vẫn chưa được chính thức phát hành và bạn phải cài đặt riêng.

Một số vấn đề quan trọng khác

Các công nghệ thay thế

Sau đây là những công nghệ mới sẽ thay thế những công nghệ phổ biến hiện tại:

  • EF Core: Entity Framework Core sẽ thay thế EF 6 trong .NET Core.
  • ASP.NET Core: ASP.NET sẽ được thay thế bằng ASP.NET Core.
  • ASP.NET Core MVC: ASP.NET Core MVC sẽ hợp nhất ASP.NET MVC và Web API.
  • MSIX: Công cụ đóng gói mới của Microsoft thay thế trình cài đặt gói MSI cũ cho các ứng dụng desktop.
  • JsonDocument: Thư viện Tài liệu Json mới từ System.Text.Json.JsonDocument API sẽ thay thế JSON.NET. Nó nhanh hơn 2-3 lần so với JSON.NET cũ.

Cập nhật: Bạn đã có thể sử dụng Entity Framework 6.3 trên .NET Core 3.

Nếu bạn có kế hoạch chuyển đổi ứng dụng .NET sang .NET Core, bạn cần phân tích các API được sử dụng trong dự án để xem chúng có tương thích hay không. .NET Portability Analyzer là một công cụ giúp phân tích và xác định mức độ linh hoạt của ứng dụng trên các nền tảng .NET.

Có Thể Bạn Quan Tâm :   Tứ quý là gì? Tổng hợp ý nghĩa cảnh tứ quý trong phong thuỷ

C# 8.0

C# 8.0 là phiên bản mới nhất của ngôn ngữ lập trình C#. Bổ sung nhiều tính năng mới như Async Stream, Phạm vi (Range), Các kiểu tham chiếu Nullable và So khớp mẫu (Pattern Matching).

Tuy nhiên, các tính năng này chỉ có sẵn trên .NET Core 3.0 trở lên. Điều đó có nghĩa là .NET Framework, .NET Core 2.2, 2.1 hoặc 1.0 sẽ không được hỗ trợ các tính năng mới này.

Có vẻ như trong tương lai, .NET Framework có thể sẽ bị lãng quên và .NET Core sẽ trở thành nền tảng gần gũi nhất với .NET 5.0.

Kết luận

Là một lập trình viên .NET, khi nhìn vào tương lai của công nghệ .NET và hướng đi của nó, bạn có thể cảm thấy vui mừng!

Bạn không cần phải học JavaScript để viết ứng dụng web SPA nữa vì có thể sử dụng Blazor. Bạn không cần phải học Python cho Machine Learning vì có thể sử dụng ML.NET. Bạn không cần phải học Android hoặc Swift vì Xamarin sẽ giúp bạn làm điều đó. Nếu bạn biết lập trình C#, bạn có thể phát triển ứng dụng chạy trên mọi nền tảng từ IoT đến Cloud!

Loạt bài “Các công nghệ phát triển ứng dụng Microsoft mà sinh viên nên biết”: Phần 1 – Giới thiệu chung, .NET Framework, .NET Core, Ngôn ngữ, Công cụPhần 2 – Windows Forms, WPF, ASP.NET, ASP.NET Core, ADO.NETPhần 3 – Phân biệt các nền tảng .NET Core, .NET Framework, .NET StandardPhần 4 – .NET 5 – Tương lai của công nghệ .NET

+ Nếu bạn thấy trang web hữu ích, trước khi ra đi, hãy ủng hộ trang web bằng một hành động nhỏ để trang web có thể phát triển và phục vụ bạn tốt hơn.+ Nếu bạn thấy bài viết hữu ích, hãy chia sẻ cho mọi người.+ Nếu có thắc mắc hoặc muốn trao đổi thêm, hãy viết trong phần bình luận cuối trang.Cảm ơn bạn!

Back to top button