Trang chủ Thủ Thuật Visual Studio 2022 có gì mới?

Visual Studio 2022 có gì mới?

0
17

Visual Studio 2022 có gì mới?

8e49c140

Visual Studio 2022 hiện đang được xem trước, dự kiến phát hành vào tháng 11 năm 2021 cùng với .NET 6, mà nó sẽ hỗ trợ. Nó bao gồm nhiều tính năng và cải tiến mới, chẳng hạn như AI IntelliCode có thể tự động hoàn thành các đoạn mã cho bạn.

Bạn có thể tải xuống bản xem trước từ trang web của họ. Mặc dù nó vẫn còn “thử nghiệm” và chưa sẵn sàng sản xuất, nhưng vẫn còn Visual Studio, vì vậy trừ khi bạn phụ thuộc vào các tiện ích mở rộng chưa được cập nhật, đừng ngại đưa nó đi.

Chúng tôi sẽ đề cập đến những thay đổi quan trọng nhất kể từ Preview 3, nhưng nếu bạn muốn đọc các ghi chú bản vá từng dòng, bạn có thể làm như vậy từ các tài liệu của Microsoft. Ngoài ra còn có một lộ trình mô tả hướng tổng thể.

Cuối cùng là 64 bit

Visual Studio luôn ở mức 32 bit, có nghĩa là nó đã được giới hạn ở 4 GB RAM trong quá trình chính. Nó thường không vượt quá ngân sách này cho các dự án bình thường, nhưng một số người dùng có thể gặp phải các trường hợp ngoại lệ ngoài bộ nhớ với các giải pháp đặc biệt lớn.

Với VS 2022, nó đã được sửa chữa và bây giờ là một ứng dụng 64 bit. Microsoft đã thử nghiệm các dự án với 1600 dự án và 300 nghìn tệp, và nó hoạt động tốt.

Quảng cáo

64-bit về mặt lý thuyết nên chạy nhanh hơn, và nó có vẻ nhanh hơn một chút trong thời gian khởi động, nhưng Microsoft cũng đã làm việc về hiệu suất nói chung, vì vậy thật khó để nói điều này thực sự ảnh hưởng đến nó như thế nào. Dù bằng cách nào, một sự thay đổi tốt.

Tất nhiên, bạn vẫn có thể phát triển các ứng dụng 32 bit với VS 2022. Điều này chỉ áp dụng cho biên tập viên.

AI IntelliCode thật tuyệt vời

Visual Studio 2022 có tính năng nâng cấp nghiêm trọng cho công cụ tự động hoàn thành IntelliCode của họ. Nó có thể tự động hoàn thành toàn bộ dòng và khối mã, và nó hoạt động rất tốt.

Nó hơi khác một chút so với Copilot của GitHub, làm một công việc tương tự. Copilot sẽ tạo ra toàn bộ đoạn mã và hoạt động tốt nhất cho các chức năng nhỏ, chứa với một giải pháp rõ ràng. Thật tuyệt vời, nhưng nó có những vấn đề riêng của nó, chủ yếu là thực tế là mã mà nó tạo ra không được đảm bảo thậm chí là những gì bạn muốn (và có thể kéo mã từng từ từ các repos GitHub ngẫu nhiên, đó là một vấn đề hoàn toàn khác).

IntelliCode có cách tiếp cận hạn chế hơn nhiều và chỉ cần hoàn thành một dòng duy nhất, có tính đến một số yếu tố sau:

  • Tên và vị trí thay đổi
  • Thư viện bạn đang sử dụng
  • Các chức năng trong mã xung quanh
  • Danh sách thả xuống IntelliSense, mà bạn thực sự có thể tab xuống để cung cấp cho IntelliCode nhiều đề xuất hơn

Sau khi sử dụng nó trong hai tuần, nó thực sự là một cái gì đó bạn phải thử cho chính mình. Nó thông minh một cách đáng kinh ngạc, và nhiều lần trong khi sử dụng nó, tôi thấy mình nghĩ rằng “wow, tôi đã sắp gõ điều đó!”

Quảng cáo

Ví dụ: viết một hàm lấy số từ 1 đến 12:

67b8f1a2

Để hiểu và cung cấp kết quả này, IntelliCode đang làm nhiều hơn là chỉ tự động hoàn thành cú pháp; Nó hiểu rằng tôi đang mong đợi một ngoại lệ, khá rõ ràng vì tôi đang gõ “ném”, và nó có thể tìm ra rằng ngoại lệ này chỉ được ném nếu so sánh kích thước số nguyên thất bại. Nó biết đó Width là một lập luận đang được kiểm tra trước khi mã chạy và tôi đang ném một ngoại lệ vì có điều gì đó không ổn với lập luận.

Biết tất cả những điều này, phải có một dự đoán cực kỳ chính xác về ý định của tôi và quyết định rằng một ArgumentOutOfRangeException phải là những gì tôi đang cố gắng gõ, trước khi tôi thậm chí có thể bắt đầu gõ “mới”.

Và, nếu bạn trang xuống, bạn có thể điền kết quả cho các tùy chọn khác nhau. Nó vẫn còn một chút không nhất quán (nó quyết định mã cứng “Chiều rộng” và sau đó được sử dụng nameof ) nhưng nhìn chung, nó hoạt động tốt.

8e654f08

IntelliCode chạy mọi lúc và tất cả những gì bạn phải làm là nhấn tab-tab để chấp nhận nó, nếu không, bạn có thể tiếp tục gõ. Hiện tại, nó chỉ hoạt động cho C #, nhưng nhiều ngôn ngữ đang “sắp ra mắt”.

Hỗ trợ .NET 6

.NET 6 là bản phát hành mới nhất, cũng trong bản xem trước. VS 2022 sẽ có hỗ trợ tích hợp cho nó và tất cả các tính năng của nó, và mặc định là .NET 6 cho các dự án mới.

Quảng cáo

Đáng chú ý nhất, VS 2022 sẽ có hỗ trợ đầy đủ cho .NET MAUI, hoặc Giao diện người dùng ứng dụng đa nền tảng, tiêu chuẩn mới của Microsoft để phát triển ứng dụng gốc đa nền tảng.

95a2f702

.NET Nạp nóng

Một trong những điều khó chịu nhất trong lập trình là nhìn chằm chằm vào màn hình của bạn, chờ ứng dụng của bạn biên dịch và khởi chạy và cập nhật những thay đổi mới nhất. Tải lại nóng là một tính năng của nhiều ngôn ngữ khác như JavaScript và đã được sử dụng bởi các khung web như React để thực hiện các thay đổi nhanh chóng. Tuy nhiên, cho đến nay, vẫn chưa có giải pháp tiêu chuẩn cho .NET.

Nó không hoàn toàn phổ biến và đòi hỏi một thiết lập dự án cụ thể, nhưng VS 2022 bao gồm tải lại nóng cho “WPF, Windows Forms, bản xem trước .NET MAUI, ASP.NET các ứng dụng Core phía sau, các ứng dụng Console, WinUI 3 và nhiều ứng dụng khác.” Điều này không bao gồm các thư viện lớp được sử dụng bởi một ứng dụng khác.

Một số loại thay đổi có thể không được áp dụng đúng cách, điều này sẽ nhắc bạn khởi động lại đúng cách. Bạn có thể xem danh sách đầy đủ của họ ở đây, nhưng ý chính của nó là:

  • Không sửa đổi chữ ký phương thức
  • Không thêm câu điều kẻ dùng
  • Không sửa đổi giao diện
  • Không đổi tên thành viên của bất kỳ loại nào

Về cơ bản, bạn có thể chỉnh sửa mã theo bất kỳ phương pháp nào, nhưng một khi bạn bắt đầu chạm vào cấu trúc dự án, bạn có thể phải khởi động lại.

Nó được tích hợp tốt vào trải nghiệm gỡ lỗi VS, với một biểu tượng mới cho “Áp dụng thay đổi mã” sẽ kích hoạt tải lại nóng. Bạn cũng có thể sử dụng lệnh mới dotnet watch để tải lại tự động trên các thay đổi tệp.

Quảng cáo

Các ứng dụng web Razor / Blazor hiện có thể sử dụng tải lại nóng, nhưng Blazor WebAssembly vẫn còn một số việc phải giải quyết và hiện tại nó vẫn chưa hoạt động. Tuy nhiên, nó đang được làm việc và có thể được đưa vào bản phát hành cuối cùng vào cuối tháng 11.

Kiểm tra từ xa

VS 2022 bao gồm một bản xem trước thử nghiệm cho phép bạn chạy thử nghiệm trong các môi trường khác, bao gồm các container Linux, WSL và thậm chí trên SSH.

85d1a24f

Nó có một chút thiết lập và tất nhiên bạn sẽ cần đảm bảo môi trường của bạn được cấu hình để chạy mã của bạn đúng cách, nhưng một khi nó là bạn sẽ có thể chọn các môi trường khác nhau khi chạy thử nghiệm của bạn.

Cải tiến chung

Có rất nhiều thay đổi nhỏ để chia nhỏ từ các ghi chú bản vá, vì vậy chúng tôi sẽ liệt kê một số thay đổi thú vị nhất ở đây.

Gỡ lỗi đã thấy một số cải tiến chất lượng cuộc sống, với các tùy chọn ngữ cảnh mới cho các điểm ngắt nâng cao hơn, cũng như “Force Run To Cursor”, sẽ bỏ qua tất cả các điểm ngắt hiện có và dừng lại trên dòng mã bạn đã chọn. Điều này có thể rất hữu ích nếu bạn muốn kiểm tra một cái gì đó mà không cần loại bỏ mọi điểm ngắt hoặc bỏ qua mọi thứ một cách thủ công một lần nữa.

Breakpoint Context Menu

Force Run to Cursor

Các tích hợp Git của VS hiện hỗ trợ nhiều kho lưu trữ cho mỗi giải pháp và cam kết trên nhiều repos bây giờ dễ dàng hơn.

f5f66319

Tất cả các biểu tượng đã được thiết kế lại cho tính nhất quán.

Examples of new icons with dark and light backgrounds

Quảng cáo

Nhận xét XML hiện hỗ trợ nhận xét đa dòng với không gian trắng được bảo tồn và các khối CDATA.

Quick Info for XML preserves whitespace

“Tìm tất cả các tài liệu tham khảo” không còn tạo ra đầu ra lặp đi lặp lại rác khi trong một dự án đa mục tiêu.

Find All Reference Groups Multi-Targeted Projects

Razor Pages / Blazor đã nhận được nhiều tích hợp chỉnh sửa và bây giờ sẽ hoạt động tốt hơn với IntelliSense, tô sáng cú pháp và định dạng tốt hơn trong các khối @code. Bây giờ bạn cũng có thể sử dụng “View Code” trong các tệp Razor, đây là một hạn chế gây phiền nhiễu trong một thời gian.

TagHelpers Classification Support

Và có một vài mẫu dự án khác, bao gồm các ứng dụng Angular và React ASP.NET Core, có thể được thực hiện với các tích hợp API tự động.

1f455f49

Để biết danh sách đầy đủ các thay đổi, bạn có thể tham khảo các ghi chú bản vá VS 2022.

How to Deploy Docker Compose Stacks to Kubernetes with Kompose

Cách triển khai Docker Compose Stacks đến Kubernetes với Kompose

How to Monitor the Resource Usage of Docker Containers

Cách giám sát việc sử dụng tài nguyên của Container Docker

How to Automate MySQL Database Migrations With Skeema

Cách tự động di chuyển cơ sở dữ liệu MySQL với Skeema

How to Use Rsync and SSH in a Dockerized GitLab CI Pipeline

Cách sử dụng Rsync và SSH trong Đường ống CI GitLab Dockerized

How to Develop on a Remote SSH Server With Visual Studio Code

Cách phát triển trên máy chủ SSH từ xa với mã Studio trực quan

How to Run Puppeteer and Headless Chrome in a Docker Container

Làm thế nào để chạy Puppeteer và Headless Chrome trong một container Docker

Dịch từ: https://www.cloudsavvyit.com/13799/whats-new-in-visual-studio-2022/

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây