Sau ~ 10 tháng thủ tục PHP, tôi hiện đang cố gắng bọc đầu xung quanh các nguyên tắc cơ bản về OOP và các mẫu thiết kế. Đây là một sở thích, và tôi đã không có nhiều thời gian như tôi muốn theo đuổi nó, vì vậy xin vui lòng tha thứ cho mức độ khá thấp của câu hỏi này.Nhà máy/Nhà máy trừu tượng nhầm lẫn
Trang web của tôi (hiện là 100% thủ tục) là một thư viện. Khách truy cập gửi tập lệnh thư viện 2 datapoints - một mục type
và mục code
.
Library.php
sử dụng loại mục để chọn bao gồm và phần bao gồm lấy mã để truy cập cơ sở dữ liệu và sau đó tạo trang.
Một số ví dụ:
[type] [code]
game RoTo
map 32
unit 216
Một liên kết ví dụ sẽ là library.php?type=game&code=RoTo
Tất cả mọi thứ hoạt động độc đáo như là, nhưng như tôi đã bắt đầu với OOP tôi thấy rõ ràng dễ dàng điểm nhập cảnh và con đường thừa kế cho "objectifying" hệ thống này.
class LibraryObject
{
protected $_name;
protected $_description;
}
class Game extends LibraryObject
{
protected $_releaseDate;
etc.
}
Tôi cũng vui mừng về sự linh hoạt mà một số lớp học viết tốt sẽ cho tôi.
Ý tưởng mẫu thiết kế đang vấp ngã tôi. Nó có vẻ giống như một mô hình Nhà máy, nhưng tôi bối rối về sự khác biệt giữa F và AF. Tôi đã đọc các câu hỏi SO khác đặc biệt yêu cầu câu hỏi đó, và tôi đã đọc các ví dụ trên OODesign nhưng tôi cảm thấy như chúng được viết bằng một ngôn ngữ khác và nó khá bực bội.
Có lẽ nếu ai đó có thể giải thích nó bằng cách sử dụng cấu trúc dữ liệu của riêng tôi thì điều đó có ý nghĩa hơn với tôi?
Xin lỗi vì sự cố.
Tôi có thể đúng trong việc mô tả hệ thống thư viện của tôi như là thích hợp cho một mẫu thiết kế Abstract Factory , với mô tả tôi đã đăng? – Drew
@Andrew: Tôi tin rằng Nhà máy Tóm tắt sẽ phù hợp hơn với trường hợp sử dụng của bạn, có. – netcoder