Qua các series tự học về Design Pattern, hôm nay cafedevn chia sẻ cho ace ví dụ và code cụ thể về cách sử dụng Iterator design pattern với ngôn ngữ lập trình PHP. khó giúp ace hiểu cách sử dụng Pattern này với PHP một cách nhanh nhất và áp dụng nó vào thực tế
mô tả codeTrong ví dụ này, Layer BookList sẽ được lưu trữ từ 0 đến nhiều phần tử của Layer Book. BookListIterator có thể trả lại một lần tất cả các Sách trong BookList và theo thứ tự tuần tự mà các phần tử Sách đã được thêm vào BookList
Tôi cũng đã hiển thị một BookListReverseIterator. BookListReverseIterator có thể trả lại một lần tất cả các Sách trong BookList và theo thứ tự tuần tự đảo ngược mà các Phần tử Sách đã được thêm vào BookList. Điều này được thêm vào để thấy rằng các tùy chỉnh vòng lặp của trình duyệt có thể khá hữu ích khi bạn cần xử lý một danh sách theo một trình tự khác với tuần tự từ đầu đến cuối. Trong khi trình lặp này quay ngược lại, tôi cũng có thể hiển thị một trình lặp trả về, ví dụ, chỉ các phần tử được đánh số lẻ
Lưu ý rằng các iterators được hiển thị không “mạnh” và sẽ mang lại kết quả không thể đoán trước được nếu List mà iterators đang quản lý có các phần tử bị loại bỏ khi iterators đang duyệt qua List.
Mã phần
Kết quả
BEGIN TESTING ITERATOR PATTERN
Testing the Iterator
getting next book with iterator :
Core PHP Programming, Third Edition by Atkinson and Suraski
getting next book with iterator :
PHP Bible by Converse and Park
getting next book with iterator :
Design Patterns by Gamma, Helm, Johnson, and Vlissides
getting current book with iterator :
Design Patterns by Gamma, Helm, Johnson, and Vlissides
Testing the Reverse Iterator
getting next book with reverse iterator :
Design Patterns by Gamma, Helm, Johnson, and Vlissides
getting next book with reverse iterator :
PHP Bible by Converse and Park
getting next book with reverse iterator :
Core PHP Programming, Third Edition by Atkinson and Suraski
getting current book with reverse iterator :
Core PHP Programming, Third Edition by Atkinson and Suraski
END TESTING ITERATOR PATTERN
Cài đặt ứng dụng cafedev để dễ dàng cập nhật tin tức và học lập trình mọi lúc mọi nơi tại đây
Tài liệu từ cafedev
- Full series tự học Design Pattern từ cơ bản tới nâng cao tại đây nha
- Các nguồn kiến thức thức bổ trợ VÔ GIÁ từ cafedev tại đây
Nếu thấy hay và hữu ích, bạn có thể tham gia các kênh sau của cafedev để nhận được nhiều hơn nữa