Tôi có một số lớp lớn hơn 2k dòng mã (và đang phát triển) mà tôi muốn cấu trúc lại nếu có thể, để có một số thiết kế gọn gàng và nhẹ nhàng hơn.
Lý do nó lớn như vậy chủ yếu là vì các lớp này xử lý một tập hợp các bản đồ mà hầu hết các phương thức cần truy cập và các phương thức rất được kết nối với nhau.
Tôi sẽ đưa ra một ví dụ rất cụ thể: Tôi có một lớp được gọi là Server
xử lý các tin nhắn đến. Nó có các phương pháp như joinChatroom
, searchUsers
, sendPrivateMessage
, vv Tất cả những phương pháp này thao tác các bản đồ như users
, chatrooms
, servers
, ...
Có lẽ sẽ rất tuyệt nếu tôi có thể có một lớp xử lý các thông báo liên quan đến Chatroom, một cách xử lý khác về Người dùng, v.v., nhưng vấn đề chính ở đây là tôi cần sử dụng tất cả các bản đồ trong hầu hết các phương pháp. Đó là lý do tại sao bây giờ tất cả họ đều gắn bó trong Server
lớp vì tất cả họ đều dựa vào các bản đồ chung này và các phương thức rất kết nối với nhau.
Tôi sẽ cần phải tạo một Chatroom lớp, nhưng với một tham chiếu đến từng đối tượng khác. Một người dùng lớp một lần nữa với một tham chiếu đến tất cả các đối tượng khác, v.v.
Tôi cảm thấy như mình sẽ làm điều gì đó sai.