I've taken Java. If you don't include all the "including" you have to do, I WAS able to follow along...at the beginning. I know OOP = Object Oriented Programming...and that's about the extent of my understanding. Needless to say, I didn't continue to do well in Java.
Fast forward six years and I'm learning PHP basically through trial and error. I learn what works by first finding out what doesn't. I've then slowly learned how to do things quicker and cleaner, and THEN, here comes along the DREADED "OOP" again. I always knew to stay away from languages like C++, Java, and other OOP languages because I just couldn't wrap my brain around the concept. I've taken calculus and calculus 2 and enjoyed every minute of it...never struggled. But OOP just DOES NOT MAKE SENSE.
So it's 2010 and I'm working on this Joomla module...okay, fine; however, the more I add to it, the more it becomes clear that I can't go on until I learn OOP! I've sort of worked out in my head how to make the SEF work. Not fully understanding the functions and complex arrays is one thing...but having to understand the classes, objects, methods (whatever the hell those are) is something else entirely. As much as I want to finish it, everything is already sloppy compared to all the other modules I've seen and I don't want to make a complete mess of it.
Unfortunately, my only option at this point is to put further development on hold until I understand OOP enough to design this module properly. I ordered two books on the subject, sort of "OOP for Dummies" type books that had rave reviews: OOP Demystified by James Keogh & Mario Giannini and The Object-Oriented Thought Process (3rd Edition) by Matt Weisfeld. I should receive them Tuesday and the second is supposed to be a quick read, so hopefully I can get through them quickly and get on with my life...and my programming.