Hỏi về cách thiết kế các phương thức cho class

Chào anh chị, sau một thời gian tìm hiểu về OOP thì em có 1 thắc mắc mong được anh chị giải đáp ạ.


Đây là 1 phần class diagram trong bài tập về thiết kế hệ thống cửa hàng quần áo. Em đang không hiểu nên tạo các phương thức như thế nào cho Class ThuKho.
Lúc học trên trường các thầy cô hay lấy các ví dụ như con chó có các phương thức như sủa(), ăn() vv… em thấy các cái phương thức sủa, ăn đấy nếu ra ngoài đời thực mình quan sát một con chó nó cũng có thể sủa và ăn.
Quay lại phần Class của em, Ở ngoài đời thực mình thấy thủ kho có thể làm công việc như in, tạo phiếu nhập hàng; thêm, sửa, xoá danh mục sản phầm, nhà cung cấp vv… Như vậy trong Class ThuKho mình cũng sẽ tạo các phương thức như vậy có đúng không ạ. Và cái Class DanhMucSanPham sẽ không còn phương thức thêm sử xoá nữa, vì phương thức đấy ở bên Class ThuKho rồi.
Rất mong được anh chị giải đáp thắc mắc ạ. Em cảm ơn rất nhiều!

Thủ kho có thể không cần class, mà là Thủ kho user được cấp các quyền in, tạo phiếu nhập hàng, …

4 Likes


-Em thấy trong slide của thầy có chia như này, vậy em làm 1 class ThuKho riêng thì có hợp lý ko ạ. Em cũng có tham khảo một số phần mềm bán hàng thì thấy họ hay phân quền quản lý nào đc những quền gì vv… Nhưng em không rõ phải thiết kế như nào ạ, a có thể gợi ý ko ạ? Có phải là mình tạo 1 class User và có các thuộc tính như chức vụ và quyền(kiểu mảng) không ạ?

-Và giả sử bỏ qua cái class ThuKho đi thì mấy cái class DanhMucSanPham, Product vv… có nên để để các phương thức thêm sửa xoá không ạ. Bởi vì em thấy không hợp lý lắm (product lại có thể thêm product) mà nếu bỏ đi thì em không biết mấy cái phương thức đó nên nằm trong cái class nào ạ.

  • Phân quyền có thể thiết kế như sau: 1 Person có thể được cấp 1 User, 1 User phải thuộc về 1 hay nhiều Group, 1 Group có thể được trao ít hay nhiều Permission.
  • Từ DanhMucSanPham mới thêm xóa Product được chứ.
3 Likes

Vâng ạ, em cảm ơn nhiều!

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?