profile
iOS시작~
post-thumbnail

Operation Dependencies & Canceling

필수 구성요소 operation이 끝나기 전에 종속 operation이 시작되지 않는 것을 보장합니다.첫번째 operation에서 두번째 operation으로 데이터를 자동으로 전달하는 깔끔한 방법을 제공합니다.operation간의 종속성을 활성화하는 것이 GCD보다

2021년 7월 7일
·
0개의 댓글
post-thumbnail

Operations

Operation은 GCD와 비슷하게 동작합니다. GCD와 Operation 둘다 코드 덩어리를 분리된 thread에서 동작할수 있게 합니다. 그러나 Operation은 제출된 task를 훨씬 잘 제어할 수 있습니다. 앞에서 말했듯이 operation은 GCD를 기반으

2021년 7월 7일
·
0개의 댓글

Concurrency Problems

(앱 자체도 포함해서) 같은 process 내에 thread들은 동일한 주소공간을 공유합니다. 즉, 각각의 thread가 동시에 같은 공유 resource를 읽고 쓰려고 합니다. 주의하지않으면 여러 thread가 동시에 동일한 변수에 쓰려고 하는 경합조건(Race Co

2021년 7월 7일
·
0개의 댓글

Groups & Semaphores

DispatchQueue들을 그룹으로 묶어서, 후행 클로저 (일이 끝난다음의 처리)를 할 수 있도록 합니다.어떠한 task가 있고, group의 일부로써 task를 추적하려고 한다면, group을 dispatch queue의 async 메서드의 인수로 제공할 수 있습니

2021년 7월 7일
·
0개의 댓글

Queues & Threads

Thread는 thread of execution을 나타내는 말로, 실행중인 process가 시스템의 리소스 간에 작업을 분할하는 방식입니다. 디바이스 cpu의 코어 갯수만큼 한번에 여러 스레드를 실행할 수 있습니다.Multiple thread의 장점Faster exe

2021년 7월 5일
·
0개의 댓글

Introduction of GCD & Operation

C의 libdispatch의 애플 버젼clousure 단위로 task를 queue에 넣는 것이 목적가용한 자원에 따라 병렬로 실행 할 수 있다.Sync는 실행되고 있는 작업이 끝날 때까지 앱이 대기하고 현재 런루프를 차단합니다.Async는 작업을 실행한 즉시 앱으로 돌

2021년 7월 5일
·
0개의 댓글
post-thumbnail

Subscribe(on:_)과 Observe(on:_) 차이

Observable을 구독하는 과정은 아래와 같이 3부분으로 나눌 수 있습니다.먼저 Observable을 정의합니다. Observable을 만들어도 즉시 실행되는 것은 아닙니다. Observable은 추후에 구독자가 생길 때 까지 아무것도 하지 않고 기다립니다.map이

2021년 6월 7일
·
0개의 댓글
post-thumbnail

VIPER란?

View, Interactor, Presenter, Entity, Router로 이루어져 있는 패턴입니다.View와 ViewController 파일들입니다.Presenter의 요청대로 디스플레이 하고, 사용자 입력은 Presenter로 보냅니다.Business logi

2021년 6월 7일
·
0개의 댓글

Hash

해시(hash)란 단방향 암호화 기법으로 해시함수(해시 알고리즘)를 이용하여 고정된 길이의 암호화된 문자열로 바꿔버리는 것을 의미Hash Table(해시 테이블)과 Hash Function(해시 함수)으로 구성됨해시테이블(Hash Table, Hash Map이라고도 불

2021년 4월 28일
·
0개의 댓글

GP면접 후기

Array linkedList 비교 Array에 집어넣을때 어떻게 하냐? 해싱 충돌 뮤텍스

2021년 4월 23일
·
0개의 댓글

DI (Dependency Injection 의존성 주입)이란?

한 객체가 다른 객체와 상호작용(참조)하고 있다면 그 객체는 다른 객체에 의존성을 가집니다.위 코드에서 Bclass는 Aclass 객체에 의존합니다.Aclass 객체가 수정되면 Bclass도 같이 변경되게 됩니다. 즉, 하나의 모듈이 바뀌면 의존한 다른 모듈까지 변경되

2021년 4월 21일
·
0개의 댓글
post-thumbnail

RxSwift - 3. Subject

Observer인 동시에 ObservableSubject로 전달되는 이벤트를 Observer로 전달하는 가장 기본적인 Subject이다. 즉 이벤트를 전달하는 역할과 이벤트를 전달받는 역할 모두를 할 수 있습니다.Element없이 빈 상태로 생성되고, subscribe

2021년 4월 6일
·
0개의 댓글

BP면접 복기

DeadLock에 대해 아는데로 설명해보세요 자주쓰는 자료구조가 뭔가요? array와 map의 차이점은? 각각 언제 쓰나요? map과 hashmap의 차이는? git에서 주로 쓰던 명령어들은 뭐가 있었나요?

2021년 3월 31일
·
0개의 댓글

Swift String에서 원하는 문자열 Index 찾기

코테 문제 풀다가 원하는 문자열이 나오는 위치와 몇개가 나오는지에 따라 정렬해야하는 경우가 있었었습니다.주어진 문자열 내에서 특정 문자열의 범위를 알고 싶은 경우, range(of:)를 사용하여 문자열 안에 처음으로 일치하는 문자열의 범위를 알아낼 수 있습니다..bac

2021년 3월 22일
·
0개의 댓글

RxSwift - 2.Disposables

dispose() 호출 또는 disposeBag에 담는 것을 깜빡하거나, Observable이 어디에선가 의도치 않게 종료된다면 메모리leak이 발생할 수 있습니다.Observable은 subscribe하기 전까지 이벤트를 발생시키지 않습니다.Subscription이

2021년 3월 15일
·
0개의 댓글
post-thumbnail

RxSwift - 1. Observable

An API for asynchronous programming with observable streamsReactiveX는 관찰 가능한 시퀀스를 사용하여 비동기식 및 이벤트 기반 프로그램을 구성하기 위한 라이브러리 입니다. RxSwift는 ReactiveX 라이브러리

2021년 3월 12일
·
0개의 댓글

Diffable DataSource에 대한 간단한 설명

Raywenderlich의 UICollectionViewDiffableDataSource부분을 번역한 것입니다.iOS 13 이전에는 UICollectionView는 UICollectionViewDataSource를 채택하여 데이터 소스를 구성했습니다. 이 프로토콜은 C

2021년 2월 11일
·
0개의 댓글
post-thumbnail

Implicit Animation

UIKit은 implicit animation을 비활성화 합니다. 좀더 구체적으로 설명하자면 UIView에 있는 CALayer는 implicit animate 되지 않습니다. 사용자가 직접 생성하고 UIView에 연관되지 않은 CALayer는 implicit anima

2021년 2월 10일
·
0개의 댓글

면접준비 - 3

이미지 손실 압축압축률이 높아질수록 노이즈 같은 것이 생성된다.사진과 같이 복잡하고 많은 색을 담고 있는 이미지는 노이즈가 잘 드러나지 않기 때문에 jpg를 주로 사용한다.24bit (트루컬러) 지원, 투명도 미지원.비 손실 방식8bit, 24bit 색을 지원한다.GI

2021년 2월 6일
·
0개의 댓글

AutoLayout

AutoLayout은 뷰에 적용된 제약 조건에 따라 뷰 계층 구조에 있는 모든 뷰의 크기와 위치를 동적으로 계산합니다.이러한 제약 기반 접근 방식을 사용하면 내부 및 외부 변경에 동적으로 응답하는 사용자 인터페이스를 구축 할 수 있습니다.Item1의 항목 = Item2

2021년 2월 6일
·
0개의 댓글