객체 지향 특징

<aside> 💡 아주 지겹게 확인했던 내용이지만 사실 항상 명확하게 머리에 그려지지 않았다 하지만 NestJS를 사용하면서 객체 지향의 장점을 느끼게 됐고 강의를 통해서 좀 더 깊게 알 고 싶은 마음이 커졌다

</aside>

<aside> 💡 이 중에서 강의는 다형성에 초점을 두었다

</aside>

ex. 1 )

자동차가 변경돼도 운전자가 운전을 하는 방식에 대해서는 영향을 미치지 않는다

→ 운전자는 자동차 역할만 알고 있으면 된다 → 다른 대상으로 변환이 가능하다 → 자동차 대상을 무한하게 확장이 가능하다 → 새로운 자동차가 나와도 클라이언트를 변경할 필요가 없다

ex. 2 )

공연 무대의 역할도 동일하다. 로미오와 줄리엣의 역할이 존재한다고 생각해보자

→ 로미오, 줄리엣의 배역이 누구이던 상관없이 해당 역할만 진행한다면 공연은 잘 흘러간다

→ 로미오의 배역이 배우 A, 배우 B여도 문제없다

→ 새로운 배우가 역할을 담당해도 로미오, 줄리엣의 역할은 바뀌지 않는다

<aside> 💡 결과적으로 역할과 구현으로 구분하면 세상이 단순해지고, 유연해지며 변경도 편리하다

</aside>

<aside> 💡 자바 언어의 다형성을 활용한다는 것

</aside>