Tôi cần phải cấu trúc lại dự án với hai mô hình dữ liệu thành hai dự án riêng biệt. Cả hai dự án đều sử dụng cùng một ngoại lệ. Tôi có nên tạo dự án thứ 3 chỉ cho những ngoại lệ này không? Nhân bản âm thanh như một không-đi.Trường hợp ngoại lệ nên được đặt được sử dụng bởi nhiều dự án?
Trả lời
Có, bạn nên tạo nó trên một dự án riêng biệt, và sử dụng nó như là một sự phụ thuộc vào những người khác. Nó không phải là không phổ biến để xem một dự án/jar mà chỉ có các ngoại lệ được sử dụng trong các mô-đun mà bạn làm việc với. Đó là một cách tốt để giữ mọi thứ có tổ chức IMHO.
Không đồng ý, chỉ có ngoại lệ chung giữa hai dự án âm thanh có mùi với tôi. Tôi tin rằng họ chỉ giống nhau trong tên lớp của họ và không có gì nhiều hơn nữa! –
Tôi tin OP có nghĩa là 2 mô-đun trong cùng một dự án, không thực sự là 2 dự án độc lập. Nếu đó là trường hợp giải pháp này cũng như câu hỏi này không có ý nghĩa. Ngay cả tên gói cũng là lạ. –
IMHO, như @harsha được đề cập trong nhận xét hiện tại, giải pháp dễ nhất là đặt mã được chia sẻ vào thư viện hoặc .jar tệp và tệp .jar vào thư viện dự án của bạn.
Bây giờ bạn có một api có giá trị có thể được duy trì dễ dàng cho mỗi bản dựng với phiên bản của bạn.
Một dự án riêng biệt là sự phụ thuộc được chia sẻ của hai dự án còn lại có lẽ là tốt nhất. Nhân bản các đối tượng sẽ làm cho mọi thứ trở nên khó khăn nếu hai mô hình dữ liệu được sử dụng cùng nhau, mà bạn sẽ phải giải quyết thông qua ví dụ: tên gói khác nhau và điều này sẽ tạo ra những cơn đau đầu bảo trì. Dự án được chia sẻ có thể là một kho lưu trữ tốt cho mã được chia sẻ trong tương lai ngoài chỉ ngoại lệ của bạn.
Có ngoại lệ chung nào không? Nghe kỳ lạ nhỉ.
Có bất kỳ sự phụ thuộc nào giữa các dự án này không? Là một trong những khách hàng của người khác?
Tôi tin rằng sẽ có một số giao diện chung, một số tuyên bố những ngoại lệ này trong chữ ký của phương thức của chúng. Một số được thực hiện trong một trong các dự án của bạn và được gọi trong dự án khác.
Nếu hoàn toàn không có điều gì, có vẻ như các trường hợp ngoại lệ chung của bạn chỉ là chung với tên của chúng! Họ không thực sự là cùng một lớp, họ chỉ có cùng tên, và bởi vì nhiều trường hợp ngoại lệ do người dùng định nghĩa chỉ là có các hàm tạo gọi là các hàm tạo super
, chúng dường như giống nhau.
Nếu đó là trường hợp của bạn, tôi sẽ không bận tâm bản thân mình để trích xuất các lớp học, và tôi sẽ giữ các bản sao, bởi vì không có gì đạt được bởi việc tái cấu trúc.
Chúng là hai mô hình cho hai (thực tế hơn) các hệ thống khác nhau được sử dụng để nhập dữ liệu vào một hệ thống đích. Có nhiều điểm chung mà tôi đã đưa vào một dự án util. Nhưng tôi không nghĩ rằng ngoại lệ nên đến đó, vì một hệ thống có thể không cần utils nhưng ngoại lệ. – lilalinux
- 1. Trường hợp ngoại lệ có nên được đặt trong một gói riêng biệt không?
- 2. django - bắt nhiều trường hợp ngoại lệ
- 3. Trường hợp ngoại lệ khi sử dụng Xamarin Android
- 4. nên WebClient trường hợp được tái sử dụng trong Silverlight
- 5. gì trường hợp ngoại lệ có thể được nâng lên bởi hành động bưu phẩm
- 6. Thông báo ngoại lệ nên được toàn cầu hóa
- 7. SIGPIPE ngoại lệ trong Dự án iOS Với BUMP API được tích hợp
- 8. Trường hợp ngoại lệ thời gian chạy thường được sử dụng nhất trong java là gì?
- 9. Trường hợp sử dụng cho Clojure trong các dự án
- 10. Trường hợp tôi nên đặt tập tin dll (mà tôi sử dụng trong dự án của tôi)
- 11. Các tệp dự án IDE có nên được đặt dưới sự kiểm soát nguồn không?
- 12. Bản sắc ứng dụng không được đặt Ngoại lệ
- 13. Ngoại lệ trong các trường hợp ngoại lệ trong C++
- 14. Mã lỗi trong trường hợp ngoại lệ so với trường hợp ngoại lệ hierarhy
- 15. Trường hợp logic hợp lệ nên được triển khai ở đâu?
- 16. Trường hợp ngoại lệ trong Yesod
- 17. Python: trường hợp ngoại lệ trong tập
- 18. Trường hợp ngoại lệ của DataContext
- 19. after_filter cho trường hợp ngoại lệ
- 20. Nhiều dự án sử dụng nhiều tập lệnh setup.py?
- 21. ngoại lệ C#. Tệp đang được sử dụng bởi một quy trình khác
- 22. VS2010 ném ngoại lệ trong khi mở dự án
- 23. Trường hợp jdbc Rowsets được sử dụng?
- 24. Dự án MVC về lỗi VS2010: Loại dự án không được hỗ trợ bởi cài đặt này
- 25. Dự án Java: nên .classpath. Tệp dự án được cam kết vào kho lưu trữ?
- 26. Loại ngoại lệ nào nên được đưa vào JavaScript?
- 27. Trường hợp ngoại lệ trong Python
- 28. Nhận danh sách đá quý đang được sử dụng bởi dự án Bundler
- 29. ứng dụng cho dự án chưa được cài đặt
- 30. Cách sử dụng GIT khi tôi có nhiều tệp được chia sẻ giữa nhiều dự án
Tôi sẽ giữ chúng trong một bình riêng biệt và kết hợp bình với hai dự án sau khi xây dựng. –