If you can do everything you need without OOP, do so. If you reach the point where something would be easier to implement using OOP, use it. That's the way I'd go. It has its uses, but it is more code for none to little gain if you don't specifically need it.
I'll half agree with the above.
OOP is always more work and more code than it would take to do the same task procedurally. This is the nature of OOP.
However, I won't agree with little to no gain. OOP provides you with many benefits including extreme reusability, centralized control, and dynamic handling with polymorphism. These can all be done in procedural as well, but to simulate the polymorphism in particular would take a lot of procedural code to do so.
So my approach is more of a short term pain for long term gain approach. If you have an extensive library of classes available to you, each project takes less and less custom code to build it. This becomes especially true when dealing with design patterns which you come to know (and love) when developing. The only thing to remember in OOP is that an interface is your best friend.
I'll half agree with the above.
OOP is always more work and more code than it would take to do the same task procedurally. This is the nature of OOP.
However, I won't agree with little to no gain. OOP provides you with many benefits including extreme reusability, centralized control, and dynamic handling with polymorphism. These can all be done in procedural as well, but to simulate the polymorphism in particular would take a lot of procedural code to do so.
So my approach is more of a short term pain for long term gain approach. If you have an extensive library of classes available to you, each project takes less and less custom code to build it. This becomes especially true when dealing with design patterns which you come to know (and love) when developing. The only thing to remember in OOP is that an interface is your best friend.
I mostly agree with this but I would like to add to it. If your only exposure to OOP is in web development you might not really see the benefit and the full potential of OOP. I wouldn't say OOP always takes more work than procedural code though, since as you said to replicate some of the advanced OOP features would take a lot of procedural code.
I mostly agree with this but I would like to add to it. If your only exposure to OOP is in web development you might not really see the benefit and the full potential of OOP. I wouldn't say OOP always takes more work than procedural code though, since as you said to replicate some of the advanced OOP features would take a lot of procedural code.
Oooh yeah that's a good point. I personally see great potential in OOP with web environments now, but I had not until I learned OOP outside of a web environment.
But with me its not the understanding how they work and why a static :: should be used etc etc.
I think, it will be good for you when you read some literatur about the different design patterns. so you can learn for example why and when a static function can be usefull...