OO design and circular dependencies
I am currently struggling with a circular dependency problem when designing my classes. Ever since I read about the Anemic Domain Model (something I was doing all the time), I have really been trying to get away from creating domain objects that were just "buckets of getters and setters" and return to my OO roots. However, the problem below is one that I come across a lot and I'm not sure how I should solve it. Say we have a Team class, that has many Players . It doesn't matter what sport this is :) A team can add and remove players, in much the same way a player can leave a team and join