https://velog.io/@vipstar-_-/절차지향-vs-객체지향-vs-함수형