수강 후기) 인프런 iOS 동시성 프로그래밍 GCD/Operation
「iOS Concurrency(동시성) 프로그래밍, 동기 비동기 처리 그리고 GCD/Operation - 디스패치큐와 오퍼레이션큐의 이해」 강의를 수강해 보았습니다. 이름 진짜 길다
가격은 55,000원으로 결코 적지 않은 금액입니다. 그럼에도 불구하고 결제부터 완강까지 할 수 있었던 수강 후기를 남겨보겠습니다.
1. 수강 전
iOS 개발 관련 오픈채팅방에서 추천을 받아 처음 접하게 되었습니다.
사실 추천받은 강의와 자료는 많은데 실천이 어려워서 그렇지 @!%$# 아무튼 그렇습니다.
강의 제작 동기와 목차를 살펴봤습니다.
중급 이상의 iOS 개발자로 성장한다는 것에 한 번 솔깃, 목차의 중요성을 아는 강사님이신 것 같아서 두 번 솔깃,
오래 듣고 있어도 졸리지 않은 목소리에서(차분한데 안지루함) 이거다 싶어 결정했습니다.
그리고 구글링해서 독학도 가능하지만 개념이 흩어져 있어 한 번쯤 정리하고 싶었습니다.
/* 강의 제작 동기 중 발췌 */
어쨌든, 제가 이 주제에 대해 경험해보고 나니... 본 과정은 중급 이상의 iOS 개발자로 성장하는 데 있어,
(앱 최적화와 관련해) 필수적이며 가장 기본적인 과정이라는 생각이 듭니다.
네트워크 작업에는 이 개념이 반드시 필요하고, 또 나아가 타 라이브러리 사용, 코어데이터(CoreData) 사용 등에도
응용될 수 있는 반드시 한 번은 거쳐가야 하는 관문이기 때문입니다.
2. 수강 후
31개의 강의, 7시간 51분 감격스럽네요!! 짧은 시간 내에 성취감 많이 느꼈습니다.
실제로는 1.25배속(추천)이나 1.5배속으로 들어서 7시간 이내로 듣기 가능해요.
듣다보면 복습이 정말 중요하다는 걸 느끼게 되실겁니다.
GCD 끝내고 Operation 듣는데 DispatchWorkItem 개념 나오면 ㅇ..ㅓ... 하고 버벅입니다. 제가 연달아 안들어서 그럴수도 있...
수강하다 보면 강사님의 섬세하고 꼼꼼한 면에 놀랄 때가 많았습니다.
우선, 자료를 받아보면 생각보다 양이 굉장히 많습니다.
수강 외 개인적으로 숙제(?)처럼 주어지는 번역본 👏 pdf도 포함되어 있는데,
나중에 봐야지 하고 미룰 것 같아서 날 잡고 타파해보려 합니다...
제일 좋았던 부분은 그림으로 이해하기 쉽게 설명해주신 점이었습니다.
동시성 프로그래밍에 대해 다루다 보니 Thread가 여러개, Task가 여러개 나오는데
Queue의 작업 관리를 시각적으로 표현해주셔서 금방 와닿았습니다.
아쉬웠던 점은 대부분의 예제가 Playground에 있었는데 GCD, Operation 파일만 열면 (다른 playground 파일은 문제 없음) Xcode 먹통되고 맥북 화나서 열냈어요....ㅜ 🔥🔥
아직도 이유를 모르는데 OS 업데이트 한 직후마다(?)는 문제가 없었습니다. 현재 macOS 11.2, Xcode 12.4 버전 사용중입니다.
만약 개선이 된다면 실습할 수 있는 예제가 많이 나왔으면 좋겠습니다.
잘 짜여진(적용 전/후) 소스코드를 보고 이해하는 것도 좋지만, Challenge가 있다면 더 오래 기억에 남을 것 같아서요.
3. 들을까 말까 🤔
- 내가 iOS를 막 시작했다. 앱 하나 스스로 만들어 본 적은 없다. 하시면 비추천합니다.
- 한 번만 강의를 들을거라면 비추천합니다. 솔직히 한 번 들어서는 개념 다 날라갈 것 같아요.
- 강의 소개에서 처럼 초급에서 중급으로 넘어가는 분들에게 추천합니다.
- 구현중인 앱에 UI 업데이트를 위해 DispatchQueue.main.async 를 사용했지만 이유는 모르신다면 추천합니다.
- 개발을 하긴 했는데 용어나 개념 정리가 미흡한 분들에게 추천합니다.
- Swift 기본 개념이 깔려있어야 합니다. 활용되는 예제들이 결코 간단하지만은 않습니다.
영어에 거리낌 없으신 분들은 raywenderlich 에서 듣는 것도 좋을 거라 생각합니다. 대신 구독료 결제라서 기한이 정해져 있습니다. 💸💸
제 개인 Github에 DispatchQueue와 Operation을 정리해보았습니다.
대략적인 흐름을 보실 수 있을거에요. 참고하세요! ㅎㅎ 하지만 직접 듣는 것과 요약본만 보는 건 많이 다릅니다.