본문으로 이동
Swift Concurrency Essentials / if(kakaoAI)2024
컨퍼런스

Swift Concurrency Essentials / if(kakaoAI)2024

if kakao 카카오 · YouTube

원문 보기

AI 핵심 요약

Swift 6의 엄격한 동시성 검사를 안전하게 적용하기 위해, 발표자는 데이터 레이스를 스레드가 아니라 격리 도메인 간 객체 공유의 관점에서 설명했다. 구조체와 클래스의 Sendable 조건, nonisolated(unsafe)와 락을 이용한 상태 보호, 액터 재진입성에 따른 오류 사례를 살펴보고, Mutex와 isolated 파라미터·격리 상속을 활용하는 방법도 소개했다. 또한 sending 키워드로 아직 독립된 데이터를 다른 격리 영역에 넘기는 방식과, 전달 후 원래 영역에서 재사용할 때의 주의점을 다뤘다. 핵심은 await 전후의 실행을 별개의 시점으로 보고, 컴파일러 검사를 우회할 때는 안전성 책임과 보호 범위를 명확히 하는 것이다.

  • 데이터 레이스는 스레드 수보다 객체가 여러 격리 도메인에 걸쳐 공유되는지로 판단한다.
  • 구조체의 Sendable 채택은 멤버의 Sendable 여부를 확인하고, 클래스는 상속과 가변 상태까지 고려해야 한다.
  • nonisolated(unsafe)는 컴파일러 검사를 끄는 대신 개발자가 안전성을 책임지므로, 가능하면 보호 범위를 좁혀 사용한다.
  • 액터의 비동기 함수는 await 전후로 다른 작업이 끼어들 수 있으므로, 상태를 읽고 수정하는 구간을 나눠 검토한다.
  • sending으로 전달한 값은 기존 격리 영역에서 다시 사용하지 않아야 한다.

소개

Swift 6부터 본격적으로 지원되는 Swift Concurrency에 대한 전반적인 개념을 소개합니다. 동시성 환경에서 안전한 코드를 만들기 위한 Concurrency의 주요 개념들에 대해 다루며, 이들을 다룰 때 주의할 점과 카카오톡에서는 어떻게 이용하고 있는지를 알아봅니다. #Swift #Concurrency #iOS #KakaoTalk 톡iOS에서 톡캘린더 개발을 담당하여, 더 나은 서비스를 만들기 위해 노력하는 Hayden입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-48 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024

비슷한 학습 자료

컨퍼런스 if kakao

운영이력이 쌓이면서 DTO들의 case들이 다양해진 상황에서, 개발 효율을 높이기 위해 case를 snake case로 일원화하기 위한 과정을 소개합니다. 24/7 상용환경과 MSA로 구성된 서버환경에서 Jackson 라이브러리를 활용해 서비스 중단없이 변경하려 고군분투한 일화입니다. #Spring #MSA #JAVA #DTO #Parsing 카카오톡 마이구독에서 백엔드 개발을 맡고 있는 Luis입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-83 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024

백엔드 프로그래밍 언어 로드맵 1개에 담김

컨퍼런스 if kakao

카카오톡 인앱결제 프로세스를 StoreKit 1에서 StoreKit 2로 변경 적용 사례를 소개합니다. StoreKit 2에 새로워진 기능 개발도구, 카카오톡 인앱 결제에 적용할 수 있는 신규 기능에 대해서 공유하고, 테스트 환경 및 기능 개선의 과정을 공유합니다. #iOS #StoreKit 2 #InAppPurchase #KakaoTalk 톡iOS에서 클라이언트 개발을 진행하고 있는 감성 개발자 David와 Jaime입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-49 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024

모바일 앱 개발

컨퍼런스 if kakao

카카오 내에 수많은 데이터에서 원하는 데이터를 빠르게 찾아주는 '0depth 사내봇 개발기'를 공유합니다. #Data #AI #LLM #RAG 카카오 데이터 조직의 Tory입니다. 실용적이고 사용자 친화적인 AI Application을 만드는 것에 관심이 많습니다. 카카오 내에 다양한 AI 프로덕트를 생산하는 Jennie입니다. 발표자료 보기 👉 https://speakerdeck.com/kakao/ifkakao24-27 if(kakaoAI)2024에 대한 자세한 정보는 👉 https://if.kakao.com #카카오 #이프카카오 #개발자컨퍼런스 #AI #기술 #개발 #ifkakaoAI2024

AI에이전트 개발

컨퍼런스 if kakao

Legacy Server의 포팅을 위해 Domain Driven Design을 적용하여 MSA 화 한 사례를 공유합니다. #MSA #DDD 카카오 엔터테인먼트에서 백엔드 개발자로 일하고 있는 셜록입니다. git blame을 열면 혹시나 제가 짠 코드일까 두근두근하면서, 레거시 서버로 고통받았던 나날과 함께 backlog를 열심히 청소하는 중입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-37 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022

백엔드

컨퍼런스 if kakao

SwiftLayout은 UIKit을 사용하면서 아쉬웠던 부분들을 개선하기 위해 선언적인 구문으로 UIKit을 사용할 수 있도록 도와주는 오픈소스 라이브러리입니다. SwiftLayout의 사용법을 코드와 함께 살펴보며 저희가 라이브러리를 개발하는 과정에서 격은 여러 의미 있었던 경험도 함께 공유하고자 합니다. #iOS #OpenSource 저는 카카오톡을 개발하고 있는 iOS 개발자 aiden 입니다 저는 카카오톡을 개발하고 있는 iOS 개발자 jay 입니다 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-86 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022

모바일 앱 개발 프로그래밍 언어

컨퍼런스 if kakao

Day1 Keynote / if(kakao)2022

컨퍼런스 if kakao

ifkakaodev2022 컨퍼런스 Day1 Streaming 를 소개합니다. [ Keynote ] 1. Our Social Mission 남궁훈 (nkay.play) / 비상대책위원회 재발방지대책 공동 소위원장 2. 1015 장애원인 분석 이확영 Grepp CEO / 비상대책위원회 원인조사 소위원장 3. 달라지는 카카오 1) 재발방지를 위한 기술적 개선 이채영 (ean.lee) / 비상대책위원회 재발방지대책소위원회 부위원장 2) 미래투자와 혁신 계획 고우찬 (gilbert.c) / 비상대책위원회 재발방지대책 공동 소위원장 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022