A few weeks ago I was asked what I thought was a very easy question, why do I use object oriented programming (OOP)? My immediate answer was "to keep my code clean and easy to update". But I realized that I was just repeating what I have been heard in my programming classes and various other programming contacts, I had not really thought through the use of OOP myself.
While I think my first answer is pretty simple and doesn't really explain a lot of why I use OOP I do think it explains a lot of why I use OOP. From my experience it is fairly easy to write a program to solve what ever problem you have. The hard part comes from when the client (or you) want more. Extending a program is what really tests your programming skills. OOP helps you prepare to extend your program how ever you might need to. It also helps modulate your code to make it easy to reuse parts in other projects or in other places in the same project.
That highlights another reason I use OOP. Because of how modulated you can make OOP code it becomes very easy to implement classes and code that others have wrote much better then I could of wrote in the time I have to solve a problem.
So that is why I use OOP. I'm sure there are many reasons I left out but these are some of the main reasons I use OOP that I could think of.
