Đồ Án Thiết kế phần mềm hướng đối tượng

Thảo luận trong 'Quản Trị Kinh Doanh' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    173
    Điểm thành tích:
    0
    Xu:
    0Xu

    1. Mục đích sử dụng của Factory Method:

    Ta lấy một tình huống để minh họa cho mục đích sử dụng Factory Mehtod :
    Khi ta mua hàng trong một cửa hàng bán linh kiện máy tính, sau khi đã thanh toán tiền cho món đồ cần mua, lúc này ta cần đưa biên nhận cho nhân viên ở quầy nhận hàng để lấy món đồ đã thanh toán. Giả sử mỗi nhân viên ở quầy sẽ phụ trách về một loại linh kiện máy tính, vậy ở đây ta sẽ có 2 trường hợp xảy ra :
    ã TH1: Người nhận biên nhận sẽ dựa vào thông tin linh kiện là loại gì (CPU, Ram, HDD, ) để yêu cầu cho nhân viên phụ trách về linh kiện loại đó đi lấy.
    ã TH2: Người nhận biên nhận sẽ tự đi lấy từng phụ kiện, việc này khiến mất thời gian vì họ sẽ lẫn lộn giữa nơi để các linh kiện.

    Ở TH1 ta thấy sẽ rất thuận tiện cho người nhận biên nhận khi họ không cần biết các linh kiện ở đâu, họ chỉ cần dựa biên nhận mô tả về linh kiện và yêu cầu nhân viên phụ trách về linh kiện lấy cho mình. Việc này giảm được sai sót trong việc lấy nhầm linh kiện, và thời gian lấy linh kiện giao cho khách hàng được giảm xuống.
    Trong tình huống trên ta thấy vai trò của người biên nhận là một đối tượng chứa một phương thức mà tùy theo linh kiện là loại gì mà người đó sẽ giao cho người phụ trách linh kiện đó lấy về. Vậy tại sao ta ko xây dựng một lớp như vậy, một lớp dùng cho việc tạo ra đối tượng. Ta gọi nó là Factory Method.
    Như vậy, Factory Method nhằm giải quyết vấn đề đối tượng nào sẽ được tạo mà không cần thiết chỉ ra một cách chính xác lớp nào sẽ được tạo. Thay vì trước đây khi tạo một đối tượng ta cần biết rõ lớp nào sẽ tạo và gọi lớp đó thực thi. Như vậy phần mềm của chúng ta sẽ độc lập với những lớp cụ thể.
    2. Khái niệm Factory Method:
    Factory Method là một interface dùng cho việc tạo ra một đối tượng, nhưng để cho những lớp con của interface quyết định lớp nào được hiện thực đối tượng.
     

    Các file đính kèm:

Đang tải...