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

[백지연] 챕터 7: 자바스크립트 디자인 패턴 (3/3) #63

Merged
merged 1 commit into from
Nov 15, 2024

Conversation

100Gyeon
Copy link
Member

No description provided.

Copy link
Member

@hyesungoh hyesungoh left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

GOD 👍 👍


- 관계를 추적하기 어려울 수 있음

> 책에서는 언급하지 않았지만 메모리 누수가 발생할 수 있다는 단점도 있어요
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

제가 부족해서 잘 모르겠는데 😢, 어떤 경우에 메모리 누수가 발생하는 걸까요 ??

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

아마도 옵저버 객체가 주체에 계속 남아있는 경우를 말씀하시는 것 같아요 💭 unSubscribe 를 하지 않으면 메모리 누수가 발생할 수 있다?!

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

맞아요! 상범님이 남겨주신 경우를 생각했습니다 ㅎㅎ

Copy link
Contributor

@sangbooom sangbooom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍🏻👍🏻👍🏻

Comment on lines +628 to +638
- 실행 시점을 유연하게 조정하고 호출을 매개변수화
- 명령을 실행하는 객체와 명령을 내리는 객체 간의 느슨한 결합을 통해 객체 변경에 대한 유연성을 향상시킴
- 명령을 실행하는 객체와 명령을 내리는 객체의 책임을 분리하는 게 기본 원칙

> 네이버에서 웹 기반 그래픽 편집기를 개발할 때 커맨드 패턴을 적용했다고 해요👍
> https://youtu.be/IaIFGYWDuuo?t=2365
>
> [영상에 나온 팁]
>
> - Command 객체의 undo, redo를 일일이 구현하지 않으려면 immutability 활용하면 된다.
> - immer를 이용하면 상위 클래스에서 undo, redo 한 번만 구현하고 하위 클래스에서는 상속받아 쓰면 된다.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오호.. 분리와 캡슐화가 핵심인거 같네요 👍🏻

@100Gyeon 100Gyeon merged commit c82ebac into main Nov 15, 2024
1 check passed
@100Gyeon 100Gyeon deleted the 챕터7_3/백지연 branch November 15, 2024 13:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants