2010-01-27 39 views
8

Tôi đang làm việc trên một dự án trong C# .net và WPF. Chúng tôi đang sử dụng StyleCop để giúp mang lại một phong cách nhất quán cho dự án, và sau khi vô hiệu hóa một số quy tắc, chúng tôi khá hài lòng với nó. Tuy nhiên, tôi đã nghe mọi người nói về FxCop và điều này sẽ mang lại giá trị cho dự án. Từ những gì tôi hiểu điều này là nhiều hơn trên một cơ sở cấu trúc mã ..?Tôi có nên sử dụng FxCop và tại sao không?

Ai đó có thể cho tôi bất kỳ lý do cụ thể nào để chúng tôi bắt đầu sử dụng FxCop không? Những điều quan trọng nhất FxCop sẽ đảm bảo rằng chúng ta làm chính xác là gì?

+0

Ngoài ra, hãy xem http://stackoverflow.com/questions/1867867 – andreas

Trả lời

3

Phát hiện một số điều kiện hữu ích và có thể cải thiện kiểu mã hóa của bạn. Theo phong cách tôi không chỉ có nghĩa là vị trí khung và như vậy. Nhưng các vấn đề như các lớp trừu tượng có các nhà xây dựng công cộng và nhiều trường hợp specalist khác. Đó là những thứ nhỏ nhặt như thế này, và sau một thời gian bạn tự động làm chúng.

Bắt đầu một dự án mới với nó thật dễ dàng, việc sử dụng nó với một dự án hiện tại khó hơn vì nó sẽ phát hiện nhiều vấn đề hơn. Điều đáng chú ý là bạn sẽ phải cấu hình FxCop lúc đầu, vì nó sẽ chỉ ra những điều tầm thường mà có thể không quan tâm.

+0

Tất cả các quy tắc có hoạt động lúc đầu không và sau đó bạn có thể tắt các quy tắc bạn không muốn? Giống như StyleCop ..? – stiank81

+1

Vâng. Bạn có thể tắt chúng trong mã hoặc bản thân ứng dụng. – Finglas

1

FxCop hoạt động trên các tệp nhị phân đã biên soạn, trong khi StyleCop analyzes the source code directly.

Có thể bạn có thể sử dụng nó để kiểm tra xem một hội đồng được biên soạn, như bạn gửi đến môi trường sản xuất QA, phù hợp với chính sách công ty của bạn, nếu ai đó cố gắng bỏ qua các quy tắc StyleCop của bạn.

+0

Bạn có nói rằng nó sử dụng nhiều quy tắc tương tự như StyleCop, nhưng kiểm tra điều này trên các tệp nhị phân được biên dịch thay thế? – stiank81

+0

Ý tôi là; Mặc dù FxCop đã kiểm tra một số quy tắc hoàn toàn khác nhau. – stiank81

+1

Có, vì thông tin khác nhau có sẵn; trong khi một số quy tắc thiết lập là phổ biến cho cả hai công cụ, bạn có thể nhận được một số thông tin từ mã nguồn, và các thông tin khác chỉ có thể nhận được từ assmblies. –

1

Tôi sử dụng nó, kết hợp với CC.NET. Điều đó có nghĩa, mỗi khi CC.NET xây dựng dự án của tôi, nó cũng thực hiện một phân tích FxCop, mà có thể khá tiện dụng, vì nó:

  • phát hiện biến không sử dụng
  • phát hiện phương pháp không sử dụng
  • mang đến cho bạn một cho biết bạn đã đánh sai một từ
  • sẽ giúp bạn nhắc rằng bạn nên chuyển định dạng trình cung cấp cho cuộc gọi đến ToString() fi

Tóm lại: nó giúp bạn cải thiện chất lượng mã của mình.

Các vấn đề liên quan