2010-03-10 21 views
5

Tôi đang làm việc trên một dự án có ca. 20 nhà phát triển.Xem lại mã: Cách dừng lập trình viên bằng cách sử dụng không gian tên/chức năng cụ thể

Một điều chúng tôi đang tìm kiếm là rất khó để theo kịp với việc xem xét mã.

Somethings chúng tôi tự động, như kiểm tra mã phức tạp, tìm catch khối rỗng, vv

Những điều khác là khó khăn hơn một chút.

Ví dụ trong trường hợp của chúng tôi, không có dữ liệu nào được lưu trữ trong trạng thái phiên. Có thể chặn điều này hoặc nhận được một cảnh báo nếu nó đã được thực hiện?

Trả lời

8

NDepend là bạn của bạn cho việc này.

Nó có thể được tích hợp vào quá trình xây dựng của bạn (hoặc chạy độc lập), và sau đó bạn có thể viết CQL (được xây dựng trong ngôn ngữ truy vấn phụ thuộc NDepend của) các truy vấn để phát hiện những thứ được gọi là không nên:

WARN IF Count > 0 IN SELECT METHODS WHERE IsDirectlyUsing "System.Xml.XmlWriter" 

(sẽ cảnh báo nếu bất kỳ phương pháp nào sử dụng lớp XmlWriter)

0

Bạn cần sử dụng một cái gì đó như FxCop.

1

Tôi không quen thuộc với thế giới studio C#/visual, nhưng về nguyên tắc các công cụ phân tích mã tĩnh có thể được sử dụng để viết kiểm tra, sẽ phát hiện quyền truy cập vào các gói nhất định.

Một giải pháp thay thế sẽ là AOP để kiểm tra.

Và tất nhiên bạn luôn có thể chạy grep dựa vào cơ sở mã để tìm các dòng đáng ngờ trong mã.

3

Quy tắc FxCop tùy chỉnh sẽ là bạn của bạn ở đây. Hoặc, nếu bạn đang sử dụng TFS, chính sách đăng ký tùy chỉnh sẽ hoạt động tương tự. Đặt cược tốt nhất là sử dụng trước đây, bởi vì sau đó bạn có thể ném một lỗi xây dựng khi mã vi phạm sẽ xuất hiện - mọi người sẽ sớm học cách không kiểm tra mã đó! Chính sách đăng ký TFS không may là quá dễ dàng để ghi đè.

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