Author: Dave Smith
Updated on: 2015-05-11
Posted on: 2015-05-11
Package: PHP Plugin System
The concept behind the development of a plugin package
Years ago, I wondered if it would be possible for a class to manage other classes without hooks, extensions, listeners, etc...
One of the biggest complaints I hear from small site owners, who rely on different scripts to manage different tasks, is the lack of a unified member system. Each script has their own member system which requires the member to register, sign in, etc... for each script.
Then Facebook makes their appearance, and eventually provide an api that allows developers to use Facebook as the member manager. It works okay, but... it is Facebook... and that is another subject all together.
Time moves on, I have plenty of things to do, yet still in the back of my mind is that itch to figure it out. Eventually I sit down and decide to work out the details. Surprisingly it didn't take that long, I already had the concept that a controller class would feed information to a plugin class which in turn would do the heavy lifting for whatever script it was written for.
I work up the proof of concept, pat myself on the back for being the genius that I am and set out to get recognized. Not even 2 minutes after getting on the web, what do I find? There is a specification to using Observer Classes which does a good job of summing up what I had just worked so hard to develop. I would never have thought to call it an observer class, which is why some of those people get the big bucks, it was the prefect name.
Back I go to work, now changing the documentation, descriptions, etc... to observers and let my ego deflate just a bit. The moral of this story... sometimes it pays, after a long delay in development, to do another internet search before you dive into that project.
You need to be a registered user or login to post a comment
1,551,371 PHP developers registered to the PHP Classes site.
Be One of Us!
Login Immediately with your account on:
No comments were submitted yet.