Tôi đã chạy một số số liệu về dự án Java của mình và dường như có rất nhiều chu kỳ phụ thuộc giữa các gói. Tôi đã không thực sự biết cách tổ chức các công cụ thành các gói, vì vậy tôi đã làm những gì có ý nghĩa với tôi, mà dường như là sai.Làm thế nào để tổ chức các gói (và ngăn chặn các chu kỳ phụ thuộc)?
Dự án của tôi là một khuôn khổ mạng nơron. Mạng nơron có Neurons, được kết nối với nhau bằng Kết nối. Họ cần phải phụ thuộc vào nhau. Tuy nhiên, cũng có nhiều loại Neuron khác nhau, vì vậy tôi nghĩ nên đặt tất cả chúng vào trong gói 'nơ-ron' của riêng mình. Rõ ràng là một kết nối không phải là một Neuron vì vậy nó không phải là trong gói, nhưng kể từ khi họ đề cập đến nhau, bây giờ tôi có một phụ thuộc vòng tròn.
Đây chỉ là một ví dụ, nhưng tôi có nhiều tình huống như thế này. Làm thế nào để bạn xử lý các loại tình huống?
Ngoài ra, tôi đọc các lớp trong gói cao hơn trong phân cấp gói không được coi là tham chiếu đến các lớp trong gói sâu hơn. Điều này có nghĩa là một lớp NeuralNetwork trong gói 'nn' không thể tham khảo Neuron trong gói 'nn.neurons'. Các bạn có theo nguyên tắc này không? Và nếu tôi chuyển NeuralNetwork thành 'nn.networks' hay gì đó thì sao? Trong trường hợp đó, nó sẽ đề cập đến một gói anh chị em thay vì một đứa trẻ. Đó là thực hành tốt hơn?
Gần đây tôi đã phát triển công cụ tương tự sử dụng các lớp chú thích thay vì tệp cấu hình trung tâm: https: // github.com/ruediste1/jabsaw – ruediste