문제

Say, I have 2 classes which are Audio and AudioManager. My question is, should these functions

void Play();
void Resume();
void Pause();
void Stop();
void Load();

be within Audio class or AudioManager?

Well, what I did is put them all into AudioManager class, but I'm not so sure about it.

도움이 되었습니까?

해결책

Think about them as if they were real word concepts. In fact they are. If you insert your CD to a CD Player will you tap the CD or the Player? Of course the Player. The functions you listed belong to the player.

I think that the name AudioManager does not describe its task. In general the use of the name Manager is discouraged since it is a broad concept. In your case Player would be better.

Audio in your case is just a data structure and should not have those functions.

Just a remark: most of the functions in your post are straightforward but Load is somehow confusing. Does It load a track or it loads the CD into the player or?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top