Delegate Pattern
MVC패턴
MVVM패턴
https://beomy.tistory.com/43