출처
: 객체지향은 여전히 유용한가? - 인프콘 조용호 개발자님
🔴 객체지향은 유효한가?
🟠 객체지향에 대한 고민
객체지향 프로그래밍을 진행하다 보면 이게 맞을까? 라는 생각이 들때가 있다. 어떨때는 개발적으로 편리하고 좋은 코드를 작성할 수 있지만 어떨때는 비효율적인 코드를 작성하게 된다. 이런 상황을 해결하기 위해 객체지향에 대한 고민이 있었고 이를 해결하기 위해 객체지향에 대한 고민을 정리해보았다.
🟠 객체지향이란
오늘 내용은 이중에서도 복잡성에 대해 절차지향과 비교하여 정리해보려고 한다.
🟢 객체지향의 장점
- 코드의 재사용성
- 유지보수성
- 확장성
- 테스트 용이성
🟢 객체지향의 단점
- 코드의 복잡성
- 성능 저하
- 러닝커브
🟢 객체지향에 대한 오해
- 객체지향은 만능이 아니다.
- 모든 문제를 객체지향으로 풀려고 하면 비효율적일 수 있다.
- 객체지향의 핵심은 역할, 책임, 협렵이다.
DDD, 클린코드에서도 객체지향을 사용하게 된다. 하지만 객체지향이 무조건 좋은 것은 아니다. 객체지향은 코드의 재사용성, 유지보수성, 확장성, 테스트 용이성을 제공하지만 코드의 복잡성, 성능 저하, 러닝커브가 있을 수 있다.
🟢 객체지향 vs 절차지향
절차지향
- 데이터를 중심으로 기능을 구현
- 코드의 순서가 중요
- 유지보수 및 확장이 어려움
객체지향
- 객체를 중심으로 기능 구현
- 객체 간의 협력이 중요
- 유지보수 및 확장이 용이
✅ 영상에서 개인적으로 느낀점
- 객체지향은 해당 도메인이 지속적으로 성장하고 확장할 경우 유용하다.
- 절차지향은 해당 도메인이 성장하지 않지만 지속적으로 기능이 추가되고 유지보수가 필요할 경우 유용하다.
- 모든 문제를 객체지향으로 해결하려고 하면 비효율 적일 수 있다.
자세한 코드와 내용은 출처에 있으니 참고하면 좋을 것 같다.