For example, if 2 classes depend on each other, it is a kind of circular dependency and should be avoided. How about methods? for example, if I have 2 methods which call each other:
public void methodA(){
//some other code
if(something){
methodB();
}
.
.
.
//some other code
}
public void methodB(){
//some other code
methodA();
//some other code
}
is it a code smell?
Note: I think In plain English, what is recursion? don't answer my question, because that question is about WHAT is recursion, while I'm asking HOW to write recursion function (and I don't know if my case is called recursion actually), i.e.: should I condense recursion code to run into a single function?