Strategy Pattern 예제(계속)
Worker List Manager의 class diagram 에서는 Id로 list를 관리하는 class밖에 없었기 때문에..
기본적으로 setter에서 id를 가지고 sorting을 하는 QuicjSorting이나 InsertionSorting을 사용하였습니다.
하지만 이번에는 Name으로 list를 관리하는 class가 추가 되었습니다.
이렇게 추가 되면서 이제는 setter에서 id를 가지고 Sorting을 하는 알고리즘을 injection하는 것이 아니라.. name을 가지고 Sorting하는 알고리즘을 injection해야합니다.
따라서 다음과 같이 다이어 그램이 바뀌게 됩니다.
SoringBehavior에는 기존의 Sorting들이 Id를 가지고 Sorting하였기에 ById라고 좀더 명확하게 이름을 바꿨으며 ByName의 class두개를 추가하였습니다. 그리고 NameListManager의 setSotringBehavior()에서는 InsertoinSortingByName으로 injection할 것입니다.