Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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
일기장 [STEP 2] Mary, Whales #134
base: ic_9_whale
Are you sure you want to change the base?
일기장 [STEP 2] Mary, Whales #134
Changes from 16 commits
fecc10b
971a07b
03b05c1
eee7407
a200cfa
5248c7b
5f79326
ef67611
fbc2d86
a180043
1fb5d7d
0dcaad6
1c89149
45db402
936d211
a45087f
1ec8d4a
7eb44ef
95dd5d9
8928097
d838492
cfecbc7
c9e4490
dfc8a85
a3fae63
3883a95
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
escaping하는 closure에서 self를 잡을 때 메모리가 어떻게 되는지, 어떤 점을 주의해야하고 사용해야하는지 설명해주세요~
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
기본적으로 클로저 내부에서 self를 사용하는 경우 클로저는 self에 대한 강한 참조를 유지합니다. 그리고 만약 클로저 내부에서 self의 프로퍼티에 저장하는 것과 같이 self가 클로저에 대한 강한 참조를 유지하는 경우, self와 클로저 간 순환 참조가 발생하게 됩니다.
순환 참조가 발생하게되면 각 인스턴스가 할당 해제되는 것을 방지하여 앱에서 메모리 누수를 유발하기 때문에 주의하고 사용해야합니다.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
뷰의 상태값을 가지고 어떤 행동을 하는 것은 위험할 것 같아요.
일기장 편집에서 나가는 행위는, 뒤로가기를 누르거나 스와이프 백 액션이 있을 수 있고,
그 액션들은 코드로 받을 수 있을거 같아요
또한 이렇게 어떤 조건이 아닐 때만 어떤 행동을 해야한다. 라는 context라면 guard를 쓰는게 더 자연스러워보여요
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
알려주신 것처럼 guard가 문맥상 더 자연스러워 보여서 수정하였습니다!!
cfecbc7
근데
뷰의 상태값을 가지고 어떤 행동을 하는 것은 위험할 것 같아요.
라는 부분이 잘 이해가 되지 않습니다.😓
코드 자체를 수정하는 방법으로는
이렇게 두 가지를 생각해보았지만 왜
viewWillDisappear
를 쓰는 것이 위험한지, 셋 중 어떤 방법이 어떤 면에서 더 좋을지를 공부해보아도 확신이 들지 않아서 한 번 더 질문드립니다.추가 설명을 부탁드려도 될까요?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
개인적으로 요런 식으로 분리되면 좋을거 같은데 요것도 오답이다 는 아니구 고민해보면 좋을거 같은 포인트인거 같아요~
// 처음 뷰를 그리기 위한 일기 객체
// 텍스트뷰에 써진 텍스트
// 저장하기 위한 새로운 일기장 객체 생성
// 새로 만든 객체로 저장
// 성공하면 self의 일기장을 바꿔주거나