Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

There is this new kid on the block called Interaction Oriented Programming (IOP).

Can somebody explain how it works? How does it compare to object oriented programming? Will this replace object oriented programming or will it just be a niche thing?

What exactly is it and what is its intended purpose?

share|improve this question

closed as too broad by MichaelT, Snowman, durron597, gnat, Ixrec Aug 20 '15 at 10:49

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

All I can find are all those sesquipedalian journals. I want it explained to me like as if I am 5. – DrinkJavaCodeJava Dec 11 '12 at 8:48
voting to close because the question is too broad in its current form. – GlenH7 Dec 11 '12 at 15:47

This answer is out of my context:


is currently programmed with classes. If you program an object you look inside the object and model the reactions to the outside. You do not look outside the object. It is more like class-oriented programming.


you model the interactions (such as use-cases) between the objects. I think of it like writing a theater play with scenes. Each object acts along with the script. All interactions between the objects are visible.

Maybe this is related to the method-object-pattern where you perform one special task and you can look at what is done in this one object. It may solve that your interactions are scattered all over many classes.


to get an update on this have a look at the Data-Context-Interaction-Paradigm. It uses classes to model the domain. In every context you assign roles to the objects. What an object can do is defined in the role it plays. (like a theater scene) The interaction then evolves between the roles.

share|improve this answer

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