I have recently completed training material that teaches how to develop plugins for WordPress. The following three video clips explain how to develop different types of WordPress plugins. The source code is available in my WordPress Plugins Development new course. You can find its community version available for free personal and academic usage at www.abelski.com
The Visitor Design Pattern
The visitor design pattern allows us to add operations to objects that already exist without modifying their classes and without extending them.