Cẩm nang NQDEV
HomeCheat SheetsContact
Công nghệ
Công nghệ
  • Introduction
  • Developer Roadmaps
    • Developer Roadmaps: Mô tả chi tiết
    • Roadmaps: ASP.NET Core Developer
    • Bảng phân loại cấp độ nhà phát triển .NET
    • ClearPath cho Team .NET Core
  • DotNET
    • ASP.NET Core
      • Hướng dẫn sử dụng tệp .http trong Visual Studio 2022 để thực hiện HTTP Requests
    • Message Queue
      • ZeroMQ
        • Xây dựng ZeroMQ Server trong dotNET 8 với CSharp
    • Playwright
      • Playwright: Tự Động Hóa Trình Duyệt Hiệu Quả
    • Optimize
      • Optimize - Một số cách tối ưu code và performance CSharp
    • Dev Blogs
      • Versions of .NET
        • Cập nhật từ .NET 9 lên .NET 10: Những thay đổi quan trọng
      • ASP.NET Core Web API với ASP.NET Core Web API (Native AOT): Bạn nên chọn loại nào?
      • Hướng dẫn xây dựng ứng dụng multi-tenant với .NET Core và MongoDB
      • Kiến Trúc Monolithic và Microservices: Lựa Chọn Phù Hợp Cho Dự Án Của Bạn
  • Design Patterns
    • CQRS Pattern
      • CQRS and MediatR trong .NET Core
    • Microservices
      • Ocelot
  • SQL Server
    • SQL Server Basics
    • SQL Server: DBCC
      • DBCC
      • DBCC SHOW_STATISTICS
      • DBCC SHRINKDATABASE
      • DBCC SHRINKFILE
      • DBCC SQLPERF
      • DBCC FREEPROCCACHE
    • SQL Server Replication
      • Giới thiệu SQL Server Replication
      • Hướng dẫn cấu hình và quản lý SQL Server Replication với Distribution Agent
    • SQL Server: Tập lệnh
      • SQL Server: Tập lệnh để tìm tất cả các giá trị Mặc định với Cột
    • Bảng tạm và sự linh hoạt trong xử lý dữ liệu lớn
    • Các bước để thay đổi nơi lưu trữ tệp log trong SQL Server
    • Các bước di chuyển tệp log trong SQL Server
    • Query Store trong SQL Server - Tổng Quan và Cách Quản Lý Hiệu Quả
    • SQL Server: Error Code
      • SQL Server Error : 14151, Severity: 18. Replication agent
  • Caching
    • Phân tích các phương pháp Caching dữ liệu trong .NET Core và .NET Framework
    • Redis
      • Redis mất dữ liệu khi restart
    • Varnish Cache
      • Hướng Dẫn Cài Đặt Varnish Cache với HAProxy Sử Dụng Docker Compose
  • NodeJS
    • NextJS
      • Hướng dẫn NextJS cho người mới bắt đầu
      • Parallel Routes trong Next.js
      • Hướng dẫn cấu hình Swagger trong NextJS
    • ReactJS
      • Hiểu về hook useRef của React như thế nào cho đúng
      • Tìm hiểu sâu hơn về useEffect từ A-Z
  • OS Linux
    • Tập lệnh Linux hay dùng
    • Centos 7
      • Hướng dẫn cài đặt và cấu hình Centos 7 dành cho người mới bắt đầu
      • Hướng Dẫn Kiểm Tra Các Cổng Đang Mở Trên Hệ Thống CentOS
      • Hướng Dẫn Sử Dụng zip Trên CentOS
      • Hướng dẫn cấu hình iptables để mở tất cả các cổng cho IP private
    • Windows
      • Hướng dẫn quản lý ứng dụng khởi động Windows bằng Registry Editor
  • VMware
    • Cách ảo hóa macOS Sierra trong VMWare Windows 10
    • Tự tin làm chủ mạng lưới: Cẩm nang tính toán địa chỉ IP từ A đến Z
  • Docker
    • Getting Started with Docker
    • Docker HUB
      • nqdev/nginx
  • Templates
    • Tabler Admin Template: Xây dựng Dashboard Quản trị đẹp mắt và dễ dàng
  • Open Source
    • shadcn-ui/ui
    • Kuma UI
    • Midone
  • Ứng dụng
    • Ansible
      • Ansible: Giới thiệu
      • Hướng dẫn chi tiết cài đặt Ansible
    • Apache JMeter
      • Features
        • Hướng dẫn chi tiết về Test Plan trong JMeter
        • Hướng dẫn chi tiết về Thread Group trong JMeter
    • DocFX
      • Những khái niệm cơ bản trong DocFX
      • DocFX - Hướng dẫn cài đặt, cấu hình sử dụng
      • DocFX - Hướng dẫn Markdown
      • DocFX - Hướng dẫn cấu hình file docfx.json
      • DocFX - Hướng dẫn sử dụng và tùy chỉnh Template
    • ETL Tools
      • Công cụ ETL Tools List & Software
      • Airbyte
        • Docker Compose
    • Elasticsearch
      • _reindex
        • Tìm hiểu sâu về API _reindex trong Elasticsearch
        • Hướng dẫn di chuyển dữ liệu trong Elasticsearch sử dụng API _reindex
      • _transform
    • HAProxy
      • HAProxy - Lập trình Lua và tích hợp Redis
    • Localtunnel
      • Hướng dẫn sử dụng Localtunnel để đưa ứng dụng Local lên Internet
    • LoopBack
      • Hướng dẫn cài đặt LoopBack 4 và khởi tạo dự án đầu tiên
    • N8N
      • Hướng dẫn cài đặt n8n bằng docker compose
    • NGINX Plus
      • NGINX: Hiệu suất vượt trội và giải pháp tối ưu cho hệ thống web
      • NGINX: Hướng dẫn chi tiết sử dụng GeoIP2 trên Alpine
      • NGINX: Hướng dẫn sử dụng Lua trên Alpine
      • NGINX: Hướng Dẫn Chi Tiết Cấu Hình Load Balancer
      • NGINX: Hướng Dẫn Sử Dụng Dynamic Modules
      • NGINX: Hướng dẫn Cài đặt và Sử dụng Module njs
      • Tích Hợp NGINX Làm API Gateway với Các Bước Xử Lý Phổ Biến
    • NTP - Secure Timeserver
      • Hướng dẫn cài đặt NTP an toàn với Docker Compose
    • Playwright
      • Playwright: Tự Động Hóa Trình Duyệt Hiệu Quả
    • Wordpress
      • Cách dùng Docker để phát triển ứng dụng Wordpress
  • Tin tức
    • DevSecOps là gì?
    • Giới thiệu bộ công cụ hỗ trợ lập trình từ SmallDev.tools và Code Beautify
    • Giới Thiệu và Hướng Dẫn Về DuckDB
    • Giới thiệu về Các Loại Cơ Sở Dữ Liệu
      • 1. HSQLDB (HyperSQL Database)
    • Hệ thống phân giải tên miền (DNS) và các loại bản ghi
    • Giải thích về Tiền Tố Path Nổi Tiếng – /.well-known
    • Giải mã Hệ thống tạo mã OTP của Google Authenticator
    • Quishing là gì? Hiểu và phòng tránh lừa đảo qua mã QR
  • Hướng dẫn
    • Hướng dẫn chi tiết tạo tài khoản Google bằng email công ty
    • Top 10 ASP .NET Open Source Projects GitHub 2024
    • Free Themes and Templates from Creative Tim
    • Hướng dẫn sử dụng Voler và Mazer Dashboard từ Zuramai
  • So Sánh
    • So Sánh Apache Parquet và CSV: Bảng So Sánh Chi Tiết, Ưu và Nhược Điểm
    • So Sánh Varnish Cache, Memcached và Redis: Ba Công Cụ Caching Phổ Biến trong Tối Ưu Hóa Hiệu Suất
  • Affiliate
    • Tuyển dụng
      • Bộ câu hỏi phỏng vấn T-SQL – Đánh giá ứng viên hiệu quả
    • eSMSvn: Chăm sóc khách hàng hiệu quả với SMS và ZNS
    • eSMS.vn: Giải pháp SMS Marketing hiệu quả cùng các chương trình ưu đãi hấp dẫn
Powered by GitBook
On this page
  • Bảng so sánh thay đổi từ .NET 9 lên .NET 10
  • Phân tích chi tiết một số thay đổi quan trọng
  • 1. Hỗ trợ AVX10.2 trong Runtime
  • 2. Cải tiến OpenAPI 3.1 và hỗ trợ YAML
  • 3. Entity Framework Core - LINQ Translation
  • Kết luận

Was this helpful?

  1. DotNET
  2. Dev Blogs
  3. Versions of .NET

Cập nhật từ .NET 9 lên .NET 10: Những thay đổi quan trọng

.NET 10 Preview 1 cải thiện hiệu suất, hỗ trợ AVX10.2, nâng cấp OpenAPI 3.1, tối ưu Entity Framework Core và Blazor. Những thay đổi này giúp lập trình viên có trải nghiệm tốt hơn và hiệu suất cao hơn.

PreviousVersions of .NETNextASP.NET Core Web API với ASP.NET Core Web API (Native AOT): Bạn nên chọn loại nào?

Last updated 2 months ago

Was this helpful?

Microsoft vừa ra mắt .NET 10 Preview 1, mang lại nhiều cải tiến đáng kể so với .NET 9. Bài viết này sẽ đi sâu vào những thay đổi quan trọng trong runtime, thư viện, C# 14, ASP.NET Core, .NET MAUI và Entity Framework Core, giúp bạn hiểu rõ những điểm mới và so sánh với phiên bản trước.

📢 Nguồn tham khảo:

  • Blog chính thức:

  • Video cập nhật:

Bảng so sánh thay đổi từ .NET 9 lên .NET 10

Thành phần

.NET 9

.NET 10

Ưu điểm

Nhược điểm

Runtime

Không hỗ trợ AVX10.2

Hỗ trợ AVX10.2, cải thiện hiệu suất trên CPU mới

Tăng tốc xử lý vector, tối ưu hiệu suất cho phần cứng hiện đại

Chỉ có lợi khi chạy trên CPU hỗ trợ AVX10.2

Chứng chỉ (Certificate)

Chỉ hỗ trợ SHA-1

Thêm phương thức FindByThumbprint hỗ trợ thuật toán băm khác

Bảo mật cao hơn, linh hoạt hơn trong tìm kiếm chứng chỉ

Cần cập nhật code nếu đang dùng SHA-1

Đọc dữ liệu PEM

Không hỗ trợ ASCII/UTF-8

Hỗ trợ đọc dữ liệu PEM từ file ASCII hoặc UTF-8

Dễ dàng thao tác với dữ liệu PEM mà không cần chuyển đổi định dạng

Không ảnh hưởng lớn nếu không làm việc với PEM

Hiệu suất ZipArchive

Chưa tối ưu

Cải thiện hiệu suất và quản lý bộ nhớ

Giảm thời gian xử lý file nén, tiết kiệm tài nguyên

Cần kiểm tra lại trên hệ thống có tải lớn

C# 14 - nameof trong generic

Bị giới hạn

Cho phép sử dụng nameof trong generic chưa giữ kết

Linh hoạt hơn trong lập trình, dễ đọc code hơn

Chưa có tác động tiêu cực rõ rệt

Thuộc tính hỗ trợ bởi trường (field backed properties)

Chưa hỗ trợ

Hỗ trợ cú pháp mới cho thuộc tính có trường hỗ trợ

Giảm boilerplate code, dễ bảo trì

Thay đổi cú pháp có thể gây nhầm lẫn ban đầu

ASP.NET Core - Blazor

Chưa hỗ trợ RowClass cho QuickGrid

Hỗ trợ RowClass và script Blazor như tài sản web tĩnh

Cải thiện khả năng tùy chỉnh giao diện và quản lý script tốt hơn

Chỉ hữu ích cho dự án Blazor

OpenAPI

Chỉ hỗ trợ OpenAPI 3.0

Hỗ trợ OpenAPI 3.1 và YAML

Cập nhật theo chuẩn mới nhất, hỗ trợ định dạng YAML

Cần kiểm tra tương thích với các hệ thống cũ

.NET MAUI

Chưa tối ưu hoàn toàn

Cải thiện chất lượng và hiệu năng

Ứng dụng đa nền tảng chạy mượt hơn, ít lỗi hơn

Cần thử nghiệm kỹ trước khi đưa vào sản phẩm

Entity Framework Core - LINQ & SQL translation

Chưa tối ưu

Dịch LINQ sang SQL hiệu quả hơn

Tối ưu truy vấn, cải thiện hiệu suất

Cần kiểm tra kỹ nếu có truy vấn phức tạp

ExecuteUpdateAsync

Chỉ chấp nhận biểu thức lambda

Hỗ trợ lambda thường

Giảm hạn chế khi cập nhật dữ liệu, code dễ viết hơn

Có thể cần điều chỉnh nếu đang sử dụng cách cũ

Phân tích chi tiết một số thay đổi quan trọng

1. Hỗ trợ AVX10.2 trong Runtime

2. Cải tiến OpenAPI 3.1 và hỗ trợ YAML

Giải thích: OpenAPI 3.1 là phiên bản mới của tiêu chuẩn mô tả API REST, giúp cải thiện khả năng định nghĩa và xác thực API. Việc hỗ trợ YAML giúp việc quản lý cấu hình API dễ dàng hơn. Tài liệu tham khảo: OpenAPI 3.1 Overview

3. Entity Framework Core - LINQ Translation

Kết luận

.NET 10 mang lại nhiều nâng cấp đáng kể về hiệu suất, bổ sung tính năng và tăng tính linh hoạt cho các API. Tuy nhiên, một số thay đổi có thể yêu cầu cập nhật lại code hoặc kiểm tra tương thích với hệ thống hiện tại. Đối với các nhà phát triển, việc nâng cấp từ .NET 9 lên .NET 10 sẽ giúp cải thiện hiệu suất và dễ dàng tích hợp các tính năng mới.

Giải thích: AVX10.2 là một tập lệnh SIMD mới giúp tối ưu hiệu suất xử lý vector trên các CPU hiện đại. Việc hỗ trợ AVX10.2 trong .NET 10 giúp cải thiện tốc độ thực thi các tác vụ liên quan đến tính toán hiệu năng cao. Tài liệu tham khảo:

Giải thích: Việc dịch LINQ sang SQL trong EF Core 10 được tối ưu giúp cải thiện hiệu suất truy vấn. Giảm thời gian phản hồi từ database và tối ưu hóa các câu lệnh SQL được tạo ra từ LINQ. Tài liệu tham khảo:

📢 Đừng quên xem thêm chi tiết trong và video cập nhật !

NET 10 Preview 1
NET Previews Unboxed - .NET 10 Preview 1, C# 14, HybridCache & More
AVX10.2 và tối ưu hiệu suất
EF Core Query Translation
blog chính thức
tại đây