23.11.02 목
·
Study/🌱 SeSAC
💡 Disposable dispose를 호출하지 않으면 발생하는 경고 subscribe의 반환 값이 Disposable이다. 언젠가는 리소스가 정리되어야 한다는 의미 때문에 dispose를 호출하지 않으면 경고 문구가 나타나는 것이다. next 이벤트가 방출되면, completed와 disposed가 순서대로 실행되고 리소스를 정리한다. BehaviorSubject는 observable과 observer 역할을 모두 하기 때문에 언제 어떤 이벤트가 올지 모른다. 언제든 이벤트가 emit될 수 있는 상황이기 때문에 disposed 되지 않고, 메모리 상에 남아있게 된다. error 이벤트를 만나게 되면 바로 리소스 정리를 시작한다. 때문에 error 이벤트 전달 이후의 next 이벤트는 동작하지 않는다. ..
23.11.01 수
·
Study/🌱 SeSAC
✅ 15 버전 업데이트 사항 에셋에 있는 리소스 사용 시 .이름 으로 사용할 수 있다. 편해짐! ui 프리뷰 💡 RxSwift ✅ UISwitch 구현하기 UIKit 방식 구현 RxSwift로 구현 observable이 bool 상태를 전달하여 Observer가 스위치 상태를 변경 → Observable 값을 생성하고, 전달한다. → Observer 받은 데이터를 기반으로 상태를 변경한다. 만약, 2초 후에 데이터를 변경하고 싶다면? isOn 값을 바꿔주면 변경된 값이 반영되게 해야한다. observable은 데이터를 전달하는 것만 가능하고, 이벤트를 받아 처리할 수는 없다. ✅ Observable과 Observer 이벤트를 전달하는 observable과 이벤트를 처리하는 observer Observab..
23.10.31 화
·
Study/🌱 SeSAC
💡 알고리즘 ✅ 그래프 노드와 간선으로 구성된 자료구조 이를 통해 연결된 노드간의 관계를 표현할 수 있다. 노드(정점) ✔️ 인접행렬 장점: 노드의 연결 상태를 바로 알 수 있음 단점: 노드의 개수가 N이라고 하면 이 배열의 크기는 N*N이 된다. 특정 노드에 연결된 노드를 찾으려면 N번만큼 확인해줘야 한다. ✔️ 인접 리스트 노드별로 연결된 노드를 기록 장점: 실제로 연결된 노드의 정보만 알면 된다. 단점: i와 j 노드의 연결 상태를 바로알 수 없다. ✅ 트리 사이클이 없고 방향이 없는 그래프 특징: 두 점을 연결하는 경로는 유일하다. 루트 노드 - 부모가 없는 최상위 노드 부모 노드 - 루트노드 방향으로 직접 연결된 노드 자식 노드 형제 노드 - 같은 부모를 갖는 노드 리프 노드 - 자식이 없는 노..
[iOS/Swift] Modal Style과 LifeCycle
·
Study/🚨 TroubleShooting
컬렉션 뷰의 셀을 선택한 후 좋아요 버튼 해제 시 DB에서 삭제되어 변경된 데이터가 컬렉션 뷰에 업데이트 되도록 구현하고 있었다. 버튼 클릭 후 데이터가 삭제후 dismiss를 수행하도록 구현하였다. 뷰가 다시 나타나려면 viewWillAppear()가 호출 될 것이고, 뷰가 갱신되어 깔끔하게 정리 될 컬렉션 뷰를 기대하였다.. 삭제 쿼리가 정상 작동하는 것은 확인했는데 대체 왜 바로 reload가 수행되지 않을까? 결국 sos 요청 후 굉장한 깨달음을 얻게 되었다ㅠㅠ viewWillAppear()에서 데이터가 잘 변경되었는지 확인해보려 출력시켜보니 viewWillAppear()가 호출되지 않고있었다. 그렇다면 뷰가 사라지긴 한건가? viewDidDisappear()도 호출해보자 애초에 컬렉션 뷰가 사라..