Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[아이템 10] equals는 일반 규약을 지켜 재정의하라 #10

Open
ghojeong opened this issue Feb 28, 2021 · 2 comments
Open

[아이템 10] equals는 일반 규약을 지켜 재정의하라 #10

ghojeong opened this issue Feb 28, 2021 · 2 comments

Comments

@ghojeong
Copy link
Member

No description provided.

@punsoo
Copy link
Member

punsoo commented Apr 19, 2021

p.58 을 보면

구체 클래스를 확장해 새로운 값을 추가하면서 equals 규약을 만족시킬 방법은 존재하지 않는다. 객체 지향적 추상화의 이점을 포기하지 않는 한은 말이다.

라고 되어있습니다.

여기서 말하는 객체 지향적 추상화의 이점이란 무엇일까요???

item 14의 p.89에도 같은 말이 나옵니다

@ghojeong
Copy link
Member Author

여기서 말하는 객체 지향적 추상화의 이점이란 무엇일까요???

저는 이 말을 설명하는데, 로버트 C 마틴의 <클린 아키텍처> 를 언급하고 싶습니다.
2부 5장 객체지향 프로그래밍에서 객체지향이란 대체 무엇인가를 언급할 때,
캡슐화와 상속은 OOP 만의 특징이 아니지만, 추상화에 대해서는 이게 얼마나 강력한 기능인지 언급이 되거든요.

저는 굳이 이점을 이야기하자면, SOLID 원칙 중 DIP 를 언급하고 싶습니다.
구체 클래스를 확장해가면 DIP 를 지키기 점점 어려워질 것입니다.
그리고 DIP 는 제가 생각하기에 추상화를 통해 얻을 수 있는 끝내주는 이점 중 하나입니다.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants