Một chút thông tin cơ bản: Với tư cách là trưởng nhóm, tôi sử dụng NDepend khoảng một lần một tuần để kiểm tra chất lượng mã của chúng tôi. Đặc biệt là phạm vi kiểm tra, dòng mã và số liệu độ phức tạp chu kỳ là vô giá đối với tôi. Nhưng khi nói đến chu kỳ cân bằng và phụ thuộc, tôi hơi ... lo ngại. Patrick Smacchia có một bài đăng blog hay mô tả mục tiêu của việc san bằng.
Để rõ ràng: Trong "chu kỳ phụ thuộc" tôi hiểu một tham chiếu vòng tròn giữa hai không gian tên.
Hiện tại tôi đang làm việc trên khung GUI dựa trên Windows CE cho các công cụ nhúng - chỉ cần nghĩ về nền tảng đồ họa Android nhưng dành cho các công cụ cấp thấp. Khung này là một hội đồng duy nhất với khoảng 50.000 dòng mã (loại trừ các bài kiểm tra). Khung được chia thành các không gian tên sau:
- Hệ thống con Điều hướng & Menu chính
- Hệ thống con màn hình (Trình bày / Lượt xem / ...)
- Lớp điều khiển / widget
Hôm nay tôi đã dành nửa ngày để cố gắng đưa mã đến mức phù hợp [nhờ Resharper không có vấn đề gì nói chung] nhưng trong tất cả các trường hợp, một số chu kỳ phụ thuộc tồn tại.
Vì vậy, câu hỏi của tôi: Làm thế nào để bạn tuân thủ nghiêm ngặt quy tắc "Không phụ thuộc chu kỳ"? Là mức độ thực sự quan trọng?