8 điểm bởi GN⁺ 2025-11-12 | 1 bình luận | Chia sẻ qua WhatsApp
  • .NET 10 là bản phát hành hỗ trợ dài hạn (LTS) mới nhất, được tăng cường mạnh về hiệu năng, bảo mật, năng suất và tích hợp AI, với 3 năm hỗ trợ đến ngày 10 tháng 11 năm 2028
  • Bao gồm C# 14F# 10, giúp mã ngắn gọn và giàu khả năng biểu đạt hơn, đồng thời cải thiện tốc độ thực thi và hiệu quả bộ nhớ nhờ JIT, NativeAOT và tăng tốc phần cứng
  • Aspire 13 hỗ trợ quản lý telemetry, khám phá dịch vụ và tích hợp đám mây cho ứng dụng phân tán trên một nền tảng duy nhất
  • Có thể xây dựng AI agent và hệ thống workflow đa tác tử với Microsoft Agent Framework, Microsoft.Extensions.AI, Model Context Protocol (MCP) và nhiều thành phần khác
  • Visual Studio 2026C# Dev Kit được phát hành cùng lúc, tối đa hóa năng suất lập trình viên với hỗ trợ phát triển dựa trên AI và tích hợp Copilot

Tổng quan về .NET 10

  • .NET 10 là bản phát hành .NET năng suất nhất, hiện đại nhất, an toàn nhất và thông minh nhất từ trước đến nay
    • Được hoàn thiện nhờ sự đóng góp của hàng nghìn lập trình viên trên toàn thế giới
    • Bao gồm hàng nghìn cải tiến về hiệu năng, bảo mật và tính năng trên ngôn ngữ, công cụ và workload
  • Là phiên bản LTS (hỗ trợ dài hạn), được hỗ trợ đến ngày 10 tháng 11 năm 2028
    • Khuyến nghị nâng cấp lên .NET 10 trong môi trường production
  • Được phát hành cùng các bản cập nhật của Visual Studio 2026C# Dev Kit for VS Code
  • Trình diễn các tính năng chính tại .NET Conf 2025
  • NuGet hiện có hơn 478.000 package được đăng ký, với tổng số lượt tải vượt 800 tỷ

Cải thiện hiệu năng

  • .NET 10 là phiên bản .NET nhanh nhất từ trước đến nay, với các cải tiến trên runtime, workload và ngôn ngữ
    • Trình biên dịch JIT: cải thiện inlining, devirtualization phương thức và sinh mã cho tham số kiểu struct
    • Tăng tốc phần cứng: AVX10.2, Arm64 SVE, giảm thời gian tạm dừng GC từ 8~20%
    • NativeAOT: ứng dụng biên dịch sẵn nhỏ hơn và nhanh hơn
    • Tăng hiệu năng nhờ loop inversion và tối ưu stack allocation

C# 14 và F# 10

  • C# 14: bổ sung thuộc tính dựa trên field, thuộc tính và phương thức mở rộng, chuyển đổi Span, toán tử ?.=, modifier cho tham số lambda, triển khai interface cho ref struct và nhiều điểm khác
  • F# 10: cải thiện kiểm soát phạm vi cảnh báo, modifier cho accessor của auto-property, tham số ValueOption, hỗ trợ tail call, preview biên dịch song song và nhiều nâng cấp khác
    • Cú pháp and! để chờ các tác vụ đồng thời, bộ nhớ đệm type subsumption giúp IDE phản hồi tốt hơn

Thư viện .NET

  • Hiện đại hóa các API cốt lõi như mật mã, mạng và tuần tự hóa
    • Mật mã hậu lượng tử (PQC): hỗ trợ ML-DSA, ML-KEM, composite ML-DSA
    • Mạng: WebSocketStream, TLS 1.3 trên macOS, tối ưu hiệu năng
    • JSON: chặn thuộc tính trùng lặp, hỗ trợ PipeReader, bổ sung AES KeyWrap

Aspire 13

  • Cung cấp quan sát hệ thống, khám phá dịch vụ và tích hợp đám mây cho ứng dụng phân tán trên một nền tảng duy nhất
    • Cải tiến CLI, AppHost một tệp, triển khai song song, tăng cường quản lý chứng chỉ
    • Có thể tích hợp với dịch vụ viết bằng ngôn ngữ khác như Python và JavaScript
    • Xác thực OpenID Connect, mã hóa tham số bảo mật, cải tiến dashboard

Tích hợp trí tuệ nhân tạo

  • .NET hỗ trợ từ tích hợp AI đơn lẻ đến hệ thống đa agent
    • Microsoft Agent Framework: tích hợp Semantic Kernel và AutoGen, hỗ trợ workflow tuần tự, song song, handoff và group chat
    • Giao thức AG-UI: giao thức UI nhẹ, hướng sự kiện cho tương tác giữa con người và agent
    • Microsoft.Extensions.AI: cung cấp API tích hợp nhiều nhà cung cấp AI như OpenAI, Azure OpenAI, GitHub Models, Ollama
    • MCP (Model Context Protocol): hỗ trợ AI agent truy cập dữ liệu, API và công cụ theo cách chuẩn hóa

ASP.NET Core 10

  • Tăng cường bảo mật, hiệu năng, khả năng quan sát và năng suất
    • Tự động giải phóng memory pool, xác thực passkey (WebAuthn/FIDO2), hỗ trợ Native AOT OpenAPI
  • Blazor: duy trì trạng thái, tạm dừng/khôi phục circuit, streaming phản hồi, kiểm tra form, cải thiện tương tác JavaScript
  • Phát triển API: hỗ trợ mặc định OpenAPI 3.1, tài liệu YAML, SSE (Server-Sent Events), bổ sung xác thực tự động
  • Quan sát hệ thống: metric tích hợp sẵn, tăng cường công cụ theo dõi và chẩn đoán cho Blazor

.NET MAUI 10

  • Hỗ trợ phát triển ứng dụng native đa nền tảng cho iOS, Android, macOS và Windows
    • Android 16, binding iOS 26.0, cải thiện HybridWebView, bổ sung API SafeArea
    • Global namespace cho XAMLsource generator giúp tăng tốc độ build
    • Tích hợp Aspire, chẩn đoán hiệu năng, cải thiện độ ổn định

Entity Framework Core 10

  • Tăng cường tìm kiếm vector AI, hỗ trợ kiểu JSONxử lý kiểu phức hợp
    • Hỗ trợ đầy đủ kiểu vector, json của SQL Server 2025 và Azure SQL
    • Hybrid searchvector search của Cosmos DB đã GA
    • Có thể cập nhật một phần thuộc tính của cột JSON bằng ExecuteUpdate
    • LeftJoin, RightJoin, bộ lọc truy vấn có tên, cải thiện log bảo mật

Phát triển trên Windows

  • Cải thiện hiệu năng, chất lượng và phong cách trên WinUI 3, WPFWinForms
    • WinForms: xử lý clipboard và port UITypeEditors
    • WPF: cập nhật phong cách Fluent

Công cụ cho lập trình viên

  • Visual Studio 2026: môi trường phát triển AI dựa trên Copilot
    • Adaptive paste, Profiler Copilot Agent, Debugger Agent, sơ đồ Mermaid, giao diện Fluent UI
    • Hỗ trợ code coverage, chẩn đoán CMake, định dạng solution SLNX
  • GitHub Copilot: hỗ trợ viết mã, kiểm thử, gỡ lỗi, cung cấp hướng dẫn nâng cấp lên .NET 10
  • C# Dev Kit for VS Code: hỗ trợ SLNX, chỉnh sửa Razor, test coverage, quản lý NuGet, Aspire
  • .NET SDK: cải tiến CLI, tạo container image, dotnet tool exec, công cụ theo từng nền tảng, định dạng SLNX
  • NuGet: mặc định bật kiểm tra dependency, tự động cập nhật package có lỗ hổng, hỗ trợ triển khai máy chủ MCP

Chính sách hỗ trợ dài hạn

  • .NET 10 là bản phát hành LTS được hỗ trợ trong 3 năm, duy trì đến ngày 10 tháng 11 năm 2028
    • Phiên bản chẵn là LTS (3 năm), phiên bản lẻ là STS (24 tháng)
    • .NET 8 và 9 dự kiến kết thúc hỗ trợ vào ngày 10 tháng 11 năm 2026

Bắt đầu

  • .NET 10 và Visual Studio 2026 đã có thể sử dụng ngay
    • Trong tài liệu chính thức có thể xem các tính năng mới liên quan đến runtime, thư viện, SDK, C#, F#, ASP.NET Core, MAUI, EF Core và AI
    • Có thể khám phá toàn bộ thay đổi qua trang “What’s new in .NET 10”

1 bình luận

 
GN⁺ 2025-11-12
Ý kiến trên Hacker News
  • Nhóm của chúng tôi đã thấy mọi đợt nâng cấp từ .NET 5 trở đi diễn ra mượt một cách đáng kinh ngạc
    Mức sử dụng CPU và RAM giảm 10~15%, nên thực sự chúng tôi đã có thể hạ cấu hình instance máy chủ cloud xuống nhỏ hơn
    Tôi cũng mong .NET trở nên phổ biến hơn trong giới startup. Tuy vậy, hình ảnh "dành cho enterprise" của C# cần phải biến mất

    • Tôi cũng từng dùng .NET và bản thân ngôn ngữ C# thì tôi rất thích
      Nhưng dù ngôn ngữ và runtime đã trở thành mã nguồn mở, vẫn còn rất nhiều thư viện yêu cầu giấy phép thương mại, nên tôi bỏ cuộc ngay
      Tôi chưa từng có trải nghiệm như vậy ở bất kỳ hệ sinh thái nào khác
    • .NET cũng rất tuyệt như một nền tảng cho các ngôn ngữ khác
      Gần đây tôi đã thử RemObjects, và có thể biên dịch các ngôn ngữ như Java, Swift, Go, VB, Pascal sang .NET
      Làm vậy có thể tận dụng nguyên vẹn toàn bộ framework và hệ sinh thái của .NET
      Việc hỗ trợ nhiều ngôn ngữ như vậy cũng khiến nó hấp dẫn với startup hoặc các nhà phát triển thiên về công cụ
    • Startup nơi tôi làm việc cũng được xây dựng hoàn toàn bằng C# và .NET
      Công ty trước đây của tôi cũng vậy, và cả hai nơi đều dùng kết hợp Azure và AWS
      Nhờ stack này mà năng suất và tốc độ triển khai rất cao
    • Nhiều startup triển khai theo kiểu container, nhưng sự phụ thuộc vào CLR của .NET không thực sự hợp với việc container hóa
      Giống JVM của Java, phải đưa runtime vào từng container, nên trong môi trường microservice thì overhead khá lớn
      MS có hỗ trợ build thành một file thực thi duy nhất, nhưng ở quy mô vận hành hơn 10.000 container thì các ngôn ngữ biên dịch trực tiếp ra ELF sẽ phù hợp hơn
    • Hoàn toàn đồng ý. Đây là một nền tảng rất ổn định cho phát triển web và API
      Hàng trăm lập trình viên đang dùng cùng nhau, và chúng tôi chưa từng hối hận, cả về mặt kỹ thuật lẫn tuyển dụng
      Không nhất thiết phải là chuyên gia .NET thì hệ thống vẫn chạy tốt
  • Tôi đã làm việc với .NET hơn 10 năm và cũng xây startup trên đó
    Ưu điểm là độ ổn định, chất lượng của thư viện chuẩn, sự cân bằng giữa năng suất và độ vững chắc, quản lý package rất tốt, cùng các cải thiện hiệu năng gần như được nhận miễn phí mỗi năm
    Nhược điểm là hệ sinh thái xoay quanh MS, thiếu công cụ trên môi trường ngoài Windows, quá nhiều tính năng ngôn ngữ, văn hóa ít nhiệt huyết hơn, và nhận thức “không ngầu” vẫn còn tồn tại
    Nói thêm thì EFCore là ORM tốt nhất. Các ORM khác không thể so sánh được

    • Tôi làm bên Node và JS, nhưng cá nhân tôi nghĩ .NET là một nền tảng khá tuyệt
    • Câu “lập trình viên .NET ít nhiệt huyết hơn” chỉ đúng với một số ngành nhất định
      Ví dụ mảng game di động có rất nhiều chỗ dùng C#, và các lập trình viên bên đó cực kỳ nhiệt huyết
      Ngay cả ở backend, quy mô bài toán cũng đủ lớn để rất thú vị
    • Tôi dùng Rider trên Mac và Windows, và cảm thấy nó mang lại trải nghiệm tốt hơn Visual Studio
      Chỉ tiếc là dotnet format chạy chậm nên khó đưa vào hook pre-commit
      Dù vậy, nhìn chung dotnet là một môi trường tuyệt vời
    • Các tính năng mới của C# khiến ngôn ngữ này bớt rườm rà đi rất nhiều
      Khó mà tưởng tượng được việc quay lại phát triển bằng các phiên bản cũ
      Mỗi khi xử lý ứng dụng legacy, tôi luôn đặt langVersion thành latest
    • Tôi cũng đang dùng Rider rất tốt cho phát triển .NET trên môi trường ngoài Windows
  • Tôi dùng F# mỗi ngày, và điều tôi mong chờ nhất là việc bổ sung hỗ trợ and! trong computation expression
    Có vẻ như những chỗ hiện phải bọc bằng Task.WhenAll hoặc Parallel.ForEachAsync sẽ có thể chuyển sang task computation native của F#

    • Tôi thật sự rất thích F# (cũng như OCaml, Elm, Haskell)
      Chỉ là tôi lo một ngày nào đó MS sẽ ngừng hỗ trợ F#
      Dù vậy, phần lớn stack đều là mã nguồn mở và chạy tốt trên Linux nên cũng đáng mừng
  • Mỗi khi thấy tin về phiên bản .NET mới, tôi lại nghĩ đến thị trường .NET bảo thủ ở Hy Lạp
    Không có bằng cấp thì khó được đánh giá cao về mặt kỹ thuật, và lập trình viên bị xem như trung tâm chi phí
    Thật đáng tiếc khi chỉ cần nói “tôi dùng Linux desktop và Rider” là đã bị nhìn như người ngoài hành tinh
    C# hiện đại thì thú vị hơn nhiều khi phát triển, nhưng cũng chỉ đến thế

    • Không rõ bạn có đang nói đến “ngành .NET không bao giờ rời khỏi môi trường Windows” hay không
    • Tìm được một lập trình viên .NET giỏi thực sự đúng là mò kim đáy bể
      Đa số là những người có nhiều kinh nghiệm JS nhưng chỉ biết .NET ở mức hời hợt, nên người thật sự có năng lực rất hiếm
      Một ứng viên có nền tảng như vậy thậm chí còn có thể tạo cảm giác mới mẻ
  • Thật thú vị khi thấy những tối ưu hóa khoa học máy tính ở mức sâu đang diễn ra trong ngôn ngữ, JIT, GC...
    Trong một thế giới chỉ tập trung vào AI hay công nghệ web, kiểu tin tức này mang lại cảm giác mới mẻ

  • Cuối cùng thì C# cũng có extension properties
    Đây là tính năng tôi đã chờ suốt nhiều năm

  • Tôi đã cập nhật dự án cá nhân lên .NET 10.0, và sự thay đổi trong cách MemoryMarshal.Cast hoạt động đã gây ra vấn đề
    Trước đây là Span<ulong>, còn giờ được xử lý thành ReadOnlySpan<ulong> nên không thể gán được
    Span là công cụ cốt lõi của lập trình cấp thấp, nên thật tiếc vì nó không được đưa vào ngay từ đầu của ngôn ngữ
    Mỗi phiên bản đều có cải tiến, nhưng nếu nó xuất hiện sớm như generics thì có lẽ đã hoàn thiện hơn nhiều

  • Hệ sinh thái của C# thuộc hàng tốt nhất
    Tôi ước gì môi trường phát triển C++ cũng vững chắc được như vậy

    • Hai ngôn ngữ này có tính chất hoàn toàn khác nhau
      Tôi tò mò không biết C++ đang có vấn đề gì
      Thực ra cũng có rất nhiều hệ sinh thái được xây dựng trên C++
  • Khi Unity hoàn tất việc chuyển sang CoreCLR, có lẽ sẽ là một thay đổi rất lớn
    Khi hoàn thiện, đây có vẻ sẽ là một thông báo có sức ảnh hưởng khá mạnh trong ngành

  • Tôi đã thắc mắc vì sao bài này biến mất khỏi trang chính nhanh đến vậy
    Xem liên kết hnrankings.info thì có vẻ ngay từ đầu nó đã không vào top30
    Một bài có 74 upvote và đã đăng 16 giờ mà như vậy thì thật lạ

    • Có vẻ nó bị tụt hạng quá mức do software penalty
      Vì thế tôi đã trực tiếp khôi phục nó lên trang chủ và trả lại thời lượng hiển thị
    • Thực tế là thứ hạng của nó đã nhảy vọt từ hạng 199 lên hạng 2
      Có thể kiểm tra ở liên kết này
      Ban đầu nó vào bảng ở hạng 86