본문 바로가기

전체 글79

[iOS/Swift] Closure에 대해 알아보자 아래 글들을 참고하며 정리했습니다 - Closures - Dive in Closure 들어가며 클로저란 이른바 이름 없는 함수, “익명 함수"로 불리는 코드블럭입니다. 이번 게시글에서는 iOS 개발을 하며 정~말정말 많이 사용했던 문법인 클로저에 대해 탐구해보는 시간을 가지겠습니다 🤓 Swift 문법에서의 클로저 기본 형식은 아래와 같습니다. {(parameters) -> ReperenceType in // ✅ in ➜ 반환 타입과 바디를 분리 body } 함수와 비슷해보이죠? 하지만 함수는 func 키워드를 앞에 반드시 붙여줘야 하고, 이름도 가지고 있고, 저기 보이는 in 키워드도 없으므로 비슷하지만 다릅니다. (클로저가 조금 더 포괄적) 함수와 구별되는 클로저의 특징을 더 살펴보도록 하겠습니다. 1.. 2022. 2. 8.
[iOS] GCD에 대해 알아보자 아래와 이어지는 게시글입니다 비동기 프로그래밍 방식에 대해 알아보자 아래 글들을 참고했습니다 Grand Central Dispatch / Dispatch / Concurrency Programming Guide / 차근차근 시작하는 GCD 1~4 들어가며 처음에는 Operation Queue부터 쓰려고 했는데, 공부하다보니 GCD를 먼저 적고 합쳐서 올리는 게 나을 것 같아서 방향을 바꾸었습니다 ! Review 우선 동시성 프로그래밍을 복습해 보겠습니다... 동시성 프로그래밍이란? "메인 스레드에 몰려 있는 작업들을 다른 스레드에서도 동시에 작업하도록 하는 것" 즉 메인 스레드가 처리해야 할 것들을 다른 스레드에 나눠 주어, 적절하게 일을 분배시켜 동작하도록 하는 것을 말합니다. 여기서 작업을 보내는 곳.. 2022. 2. 4.
비동기 프로그래밍 방식에 대해 알아보자 링크를 참고하며 정리했습니다 비동기 프로그래밍 (Asynchronous Programming) 코드의 실행 결과에 대한 처리를 별도의 공간에 맡겨둔 뒤, 바로 다음 코드를 실행 시킨다. 프로그램의 실행 흐름을 멈추어서, 기다림 없이 바로 다음 작업을 실행할 수 있게 하는 방식이다. 한마디로 코드를 병렬 처리하는 것 ...! 1. 동시성 프로그래밍 (Concurrency Programming) - 멀티 태스킹을 위해 여러 개의 스레드를 번갈아가며 실행한다. - (주로) 싱글 코어에서 멀티 스레드를 동작 시킬 때 이용하는 방식이다. 2. 병렬성 프로그래밍 (Parallelism Programming) - 물리적으로 정확히 동시에 실행한다. - 멀티 코어에서 멀티 스레드를 동작 시킬 때 이용하는 방식이다. 동.. 2022. 2. 1.