-->

Top 10 tính năng cốt lõi của ASP.NET Core bạn cần biết

ASP.NET Core là một sản phẩm khá nổi tiếng của Microsoft trong cộng đồng lập trình hiện nay, với các công nghệ luôn cập nhật và thay đổi, mang đặc tính của công nghệ hiện đại.


Với ASP.NET các bạn có thể áp dụng để làm nhiều mục đích làm việc khác nhau của bạn ví dụ như: 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 ngay tại chỗ. 

Với quá nhiều tác vụ như vậy thì thực sự bạn cần biết những gì để tiếp cận ASP.NET Core?

Sau đây là các tính năng .NET Core bạn cần biết:

Performance

Tôi để nó ở đầu vì thật tế Performance (hiệu suất) là một trong những tính năng quan trọng trong bất kì ứng dụng web app nào.

Để biết vấn đề nằm ở đâu, bạn cần đo lường mọi thứ, từ việc chịu tải của server, loading css, js file... cho đến time cost execute của sql queries. 

Bằng một số cách, quan trọng vẫn là bạn cần phải cải thiện performance, ví dụ như nén lại nội dung, giảm lượng HTTP request, loading css trước - js sau cùng, shrink images, disable view State trên page nếu có thể, deploy website ở Mode Release, sử dụng Ajax thay vì xử lý ở code behind, caching page, giảm thiểu lượng control run at server, sử dụng CDN, kiểm tra câu queries tới database...


Tiện thể, mình giới thiệu các bạn một tool hay để resize dung lượng image nhưng vẫn giữ được độ phân giải tốt nhất, đó là https://tinypng.com/.

Mô hình lập trình đơn giản cho MVC và Web API

Như các bạn được biết, trong MVC 5, bộ điều khiển kế thừa từ lớp cơ sở System.Web.Mvc.Controller để phân phát qua các yêu cầu HTTP trong khi bộ điều khiển Web API 2 kế thừa từ System.Web.Http.ApiController để tạo dịch vụ Web RESTful bằng JSON & XML.

Với ASP.NET Core, MVC và Web API đã được hợp nhất với nhau. Động thái này thực sự được các developer đánh giá cao vì nó làm cho việc phát triển web app trở nên đơn giản hơn.

Dependency Injection

Tích hợp Dependency Injection là một trong những tính năng tuyệt vời nhất của .Net Core. 

Dependency Injection là một kiểu đặc biệt của IoC cho phép các thành phần phụ thuộc (các thành phần khác, các service trong chương trình) được inject (tiêm) trực tiếp từ container vào một constructor (hàm khởi dựng) hoặc một thuộc tính công khai (public properties) của một class phụ thuộc vào chúng.

Trong project .NET Core mới đã có sẵn IoC container nhưng nếu bạn cần thêm nó tách biệt ra thì bạn cần add thành phần Microsoft.Extensions.DependencyInjection từ NuGet package.

SPA Templates

Một Single Page Application (SPA) là một kiểu phổ biến của ứng dụng web với trải nghiệm người dùng phong phú vốn có của nó. Việc tích hợp client-side SPA frameworks hoặc libraries, giống như Angular hoặc React, với server-side giống như ASP.NET Core có thể là khó khăn. 

JavaScriptServices được phát triển để giảm bớt sự va chạm trong quá trình tích hợp này. Nó cho phép sự vận hành liền lạc giữa sự khác nhau của client và server về mặt công nghệ.

Cross Platform And Container Support

Như chúng ta đã biết, ASP.NET Core hiện nay đang trở thành công cụ phát triển ứng dụng web phổ biến nhất để phát triển ứng dụng web trên nền tảng .NET một cách thông minh.
 
Là mã nguồn mở, ASP.NET Core có một tính năng tuyệt vời khác được gọi là hỗ trợ đa nền tảng và vùng chứa, điều này có nghĩa là nó có thể chạy trên Windows, Linux và macOS, điều này làm cho nền tảng này trở nên độc đáo và mạnh mẽ hơn.

Một tính năng khác của ASP.NET Core là hỗ trợ vùng chứa để bạn có thể đặt mã đã xuất bản của mình trực tiếp vào vùng chứa.
 
Có rất nhiều container có sẵn trên thị trường như Docker, LXC, rkt, Kubernetes, Cloud Foundry và Vagrant.

Thư mục wwwroot cho các static files

Trong Asp.Net Framework, các nhà phát triển tạo thư mục cho các Static Files(image, css, scripts) với tên tùy theo sự lựa chọn của họ. Trong Asp.Net Core có một thư mục mặc định là “wwwroot” cho tất cả các static files của bạn.

Tag Helpers

Tag Helpers được giới thiệu với việc tạo các Form HTML nhanh chóng.

Một số tính khác của .NET Framework

Dưới đây là một số tính năng tuyệt vời đã được các nhà phát triển yêu thích trong thời đại .Net.

Output Cashing

Asp.Net Core cũng hỗ trợ Output Cashing, có nghĩa là ứng dụng tạo bộ nhớ cache cho các tài nguyên và tệp tĩnh được sử dụng phổ biến nhất. Lần tới khi người dùng mở ứng dụng, lần đầu tiên anh ta sẽ được bộ nhớ đệm phục vụ. Điều này thực sự cải thiện tốc độ và trải nghiệm người dùng của một ứng dụng web.

Action Filters

Action filter thực thi trước và sau khi phương thức hành động thực thi. Các thuộc tính Action filter có thể được áp dụng cho một phương thức hành động riêng lẻ hoặc chocontroller. Khi Action filterg được áp dụng cho controller thì nó sẽ được áp dụng cho tất cả các phương thức hành động trong controller đó.

OutputCache là một thuộc tính bộ lọc hành động tích hợp có thể được áp dụng cho một phương thức hành động mà chúng ta muốn lưu trữ đầu ra. Ví dụ: đầu ra của phương thức hành động sau sẽ được lưu trong bộ nhớ cache trong 100 giây.

Swagger/Open API

Swagger là một thư viện của bên thứ ba. Nó cũng có sẵn cho ASP.NET Framework. Nó được sử dụng để tự động tạo documentation cho API. Nó giúp các nhà phát triển API hiển thị document cho Front-End Developer dễ dàng hơn.



Lời kết

.NET Core là một trong những Framework hàng đầu cho hầu hết mọi loại ứng dụng, cho mọi thiết bị hoặc bất kỳ ứng dụng nào. Microsoft và Cộng đồng đã nỗ lực rất nhiều để biến .Net Core trở thành Framework cạnh tranh trên thị trường nhằm giúp các developer nhanh chóng phát triển các ứng dụng mạnh mẽ với hiệu suất và khả năng mở rộng tốt nhất.


Mong bài viết hữu ích với bạn. Chúc các bạn thành công.

Hiếu Quốc.

Có lẽ bạn thích?

6 comments

Post a Comment