목록차이 (10)
study record
Framework란? Framework 공유된 recources (dynamic shared library, nib files, image files, localized strings, header files, and reference documentation)를 single package로 캡슐화하는 계층형 디렉토리입니다. *헤더파일, localizable파일, 이미지, 문서와 같은 추가 리소스까지 이 모든 것을 하나의 Bundle로 묶어놓은 것 Bundle: 서브 디렉토리 내부의 파일 디렉토리 Library 자주 사용되는 로직을 재사용하기 편리하도록 잘 정리한 일련의 코드들의 집합을 의미한다. 프로그램이 연결할 수 있는 패키징된 Object 파일들의 모음 공통점 : 프로그램을 쉽게 만들 수 있게 하는..
클로저란? 클로저는 코드블럭으로 어떤 상수나 변수의 참조를 캡쳐해 저장할 수 있다. 스위프트는 캡처 관련 메모리를 알아서 처리한다. 클로저의 세 가지 형태 전역 함수 : 이름이 있고 어떤 값도 캡처하지 않는 클로저 중첩 함수 : 이름이 있고 관련한 함수로부터 값을 캡쳐할 수 있는 클로저 클로저 표현 : 경량화된 문법으로 쓰여지고 관련된 문맥으로부터 값을 캡쳐할 수 있는 이름이 없는 클로저 클로저에서는 argument label 은 쓰이지 않고 parameter name만 쓰임 closure("Sodeul") closure(name: "Sodeul") //error! 클로저는 익명이지만 함수이므로 1급 객체 함수의 특성을 다 가지고 있다. 클로저를 변수나 상수에 대입할 수 있다. 함수의 파라미터 타입으로 ..
Driver UI에 특화된 Observable로, MainScheduler에서 사용한다. error를 방출하지 않으며, Observable을 Wrapping한다. Driver는 다른 구현체에는 존재하지 않고, UI에 사용하기 위해 RxCocoa에 도입된 Observable의 특수 케이스이다. BehaviorRelay와 많은 공통점을 가지고 있으며, Observable을 UI 처리 목적으로 죽지 않는 스트림을 제공하기 위해 생성된 것이다. - 절대 종료되지 않는다. - 무조건 MainScheduler에서 돌아간다. - 구독 역시 MainScheduler에서 하는 것이 권장된다. 구독 메서드 : drive() 구독 시 가장 최근 이벤트를 받는다. 언제 사용? Main Thread를 사용하고자 할 때 .obs..
Subject 실시간으로 Observable에 값을 추가하고, Subscriber에게 이벤트나 값을 방출할 수 있는 것. Observable이자 Observer인 것이 Subject이다. Subject를 통해 실시간으로 값을 추가하고 구독할 수 있다. Subject를 사용하여 Cold Observable을 Hot Observable로 변환할 수 있다. Relay란? Relay Class는 RxCocoa4에서 구현되었고, PublishRelay와 BehaviorRelay 클래스가 존재한다. RxSwift인 Subject와 다르게 Relay는 RxCocoa의 클래스이다. 또한 Relay는 Subject와 다르게 onNext(_:)가 아닌 acceept(_:)를 통해 새로운 이벤트를 전달한다. 그리고 subs..