Tôi đang nhìn vào sắp tới Visual Studio 2017 .
Trong phần có tiêu đề Boosted Productivity, có một hình ảnh của Visual Studio đang được sử dụng để thay thế tất cả các lần xuất hiện của var bằng loại rõ ràng.
Mã rõ ràng có một số vấn đề mà Visual Studio đã xác định là 'cần sửa chữa'.
Tôi muốn kiểm tra lại sự hiểu biết của tôi về việc sử dụng var trong C # vì vậy tôi đã đọc một bài viết từ năm 2011 của Eric Lippert có tên là Sử dụng và lạm dụng cách gõ ngầm .
Eric nói:
- Sử dụng var khi bạn phải; khi bạn đang sử dụng các loại ẩn danh.
- Sử dụng var khi loại khai báo là rõ ràng từ trình khởi tạo, đặc biệt nếu đó là một tạo đối tượng. Điều này giúp loại bỏ sự dư thừa.
- Cân nhắc sử dụng var nếu mã nhấn mạnh vào mục đích kinh doanh của semantic có nghĩa là một biến số và hạ thấp các chi tiết cơ khí của bộ lưu trữ.
- Sử dụng các loại rõ ràng nếu làm như vậy là cần thiết để mã được hiểu và duy trì chính xác.
- Sử dụng tên biến mô tả bất kể bạn có sử dụng hay không. Tên biến phải đại diện cho ngữ nghĩa của biến, không phải là chi tiết lưu trữ của nó; Số thập phân của Nhật Bản là xấu; Quan tâm của người Nhật Bản là tốt.
Tôi nghĩ rằng hầu hết việc sử dụng var trong mã có lẽ là ok. Tôi nghĩ sẽ không sao nếu không sử dụng var cho bit đọc ...
var tweetReady = workouts [ ... ]
... bởi vì có thể nó không phải là 100% ngay lập tức là loại gì nhưng ngay cả sau đó tôi biết khá nhanh rằng đó là boolean
.
Việc sử dụng var cho phần này ...
var listOfTweets = new List<string>();
... có vẻ như tôi sử dụng var rất tốt vì tôi nghĩ rằng nó không cần thiết để làm như sau:
List<string> listOfTweets = new List<string>();
Mặc dù dựa trên những gì Eric nói, biến có lẽ nên là tweet chứ không phải là listOfTweets .
Điều gì sẽ là lý do để thay đổi tất cả các var
sử dụng ở đây? Có điều gì sai với mã này mà tôi đang thiếu?
var
ở đây là tốt. Bạn có thể có thể thay đổi một - nhưng ngay cả sau đó tôi nghĩ rằng nó không thực sự cần thiết. Tại sao thay đổi tất cả thành loại rõ ràng?
vars
đã được đánh dấu theo cùng một cách; với cùng dấu chéo cảnh báo bên cạnh chúng và gạch chân màu đỏ. Có lẽ Visual Studio muốn sửa tất cả chúng theo cùng một cách. Trừ khi tôi nhầm.