Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Is there something beyond OOP? In today's world, almost any problem can be solved with OOP as the basis. But how many of them are really effective? For example, Java is purely Object Oriented. It generates the byte code and interprets it. Now, obviously the execution time is greater in Java when compared with C and C++. Problems are of various nature. Some are really computationally intensive, some others are GUI Programming, some want to reduce the response time. So, globally can OOP solve all these or is there a life beyond it?

share|improve this question

closed as unclear what you're asking by Euphoric, Pieter B, gnat, Kilian Foth, Martijn Pieters May 2 at 7:45

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question.If this question can be reworded to fit the rules in the help center, please edit the question.

1  
You make some wild assumptions which are not necessarily true. –  Pieter B May 2 at 7:24
4  
I can already see the flames starting.. –  Euphoric May 2 at 7:24
1  
possible duplicate of What is Object Oriented Programming ill-suited for? –  Pieter B May 2 at 7:30
    
possible duplicate of Does Object Oriented Programming Really Model The Real World? –  gnat May 2 at 7:33
add comment

1 Answer

up vote 1 down vote accepted

OOP is an approach to design software, and not a tool to universally solve any kind of problem. It does solve some problems, but not all.

Major advantages of OOP are modularity, extensibility and reusability. For example, diving complex system into modules is very good, as it explains the system and it's subsystems better (divide and conquer).

But there are certain kind of problems, where OOP should not be used. Just to name few :

  • math algorithms
  • doing something quickly and dirty

The execution time has nothing to do with OOP, as OO program can be slower then it's functional counterpart.

Just to answer your last concern. I am not aware of anything beyond OOP. Currently it is a way to go if you want to have any complex application.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.