Có nhiều công cụ mà chúng ta có thể sử dụng để hiển thị các phụ thuộc giữa các mô-đun, các tệp mã nguồn, các lớp, hoặc các hàm vv Nhưng dường như không có công cụ để phân tích sự phụ thuộc giữa các biến. Với đồ thị phụ thuộc của các biến sẽ hữu ích cho việc hiểu và tái cấu trúc mã.Có công cụ nào có thể phân tích sự phụ thuộc giữa các biến trong các chương trình C# không?
Ví dụ, nếu biến b chỉ được sử dụng để tính giá trị của biến c như sau:
b = a;
....
c = b + 2;
Có lẽ chúng ta có thể loại bỏ biến b để làm cho mã dễ đọc hơn:
....
c = a + 2;
Loại nhà máy này có thể rất khó nếu mã rất phức tạp hoặc có nhiều mùi hôi.
Có công cụ nào có thể phân tích sự phụ thuộc giữa các biến trong C# hoặc các ngôn ngữ lập trình khác không?
Bằng cách "biến" làm bạn có nghĩa là "biến cục bộ" đặc biệt, hoặc làm bạn có ý nghĩa địa phương tham số, chính thức, mảng bạn có quan tâm về các biến bên ngoài của lambdas? Tham số Lambda? Người dân địa phương trong lambdas? Hoisted người dân địa phương trong các khối lặp? Phân tích các mối quan hệ betwe vi các biến tùy ý có thể khá phức tạp, phức tạp hơn nhiều so với người dân địa phương, đặc biệt khi bạn xem xét việc thay đổi bí danh thông qua các tham số "ref". –
Eric Lippert: có thể phân tích nhiều loại "biến" hơn, công việc xử lý mã nguồn sẽ dễ dàng hơn. Tôi tìm thấy thường có nhiều phụ thuộc phức tạp khi tôi cố gắng refactor mã di sản. – askalee