bloomLog

고정 헤더 영역

글 제목

메뉴 레이어

bloomLog

메뉴 리스트

  • 홈
  • 태그
  • 분류 전체보기 (28)
    • iOS (19)
      • RxSwift (14)
      • Swift (4)
    • Temporary (2)
    • 개발일기 (4)
    • 네이버 부스트캠프 (0)

검색 레이어

bloomLog

검색 영역

컨텐츠 검색

iOS

  • [Swift] URL Scheme: iOS 앱 간 연결의 핵심 기술

    2025.05.29 by kimrindev

  • [Swift] OAuth 인증 완벽 가이드: 안전한 앱 연동의 모든 것

    2025.05.28 by kimrindev

  • [Swift] Data Race

    2025.05.27 by kimrindev

  • [UIKit] Layout Consistency

    2025.05.25 by kimrindev

  • [RxSwift] Debugging & KVO

    2025.01.21 by kimrindev

  • [RxSwift] Playground & Error Handling

    2025.01.08 by kimrindev

  • [RxSwift] Infallible

    2025.01.03 by kimrindev

  • [RxSwift] Sharing Subscription and the share Operator

    2024.12.26 by kimrindev

[Swift] URL Scheme: iOS 앱 간 연결의 핵심 기술

URL Scheme이란?URL Scheme는 iOS 앱을 식별하고 외부에서 앱을 호출할 수 있게 해주는 고유 주소 체계입니다.마치 Safari에서 https://로 웹사이트를 여는 것처럼, letsgitit:// 같은 앱 전용 프로토콜을 등록해두면 다른 앱(예: Safari, GitHub 웹페이지)에서 우리 앱을 열 수 있어요.일상에서 만나는 URL Scheme가장 간단한 예시로는 기본 앱에서 많이 활용하는 기능들이 있습니다.번호 형태의 텍스트를 누르면 전화걸기가 바로 뜨는 방식이죠. 번호를 누르면 팝업메뉴가 뜨고 다양한 액션을 취할 수 있게 확인되는 부분에서 연결하는 느낌입니다. (기본 앱끼리 간의 호환성이 엄청 뛰어나지 않을까 하는 생각이 들었어요)문득 생각난 예시가 카카오T나 카카오페이에서 카카오톡..

iOS/Swift 2025. 5. 29. 19:33

[Swift] OAuth 인증 완벽 가이드: 안전한 앱 연동의 모든 것

OAuth가 뭔가요?OAuth는 다른 앱이 사용자의 비밀번호를 몰라도, 사용자의 정보를 안전하게 가져올 수 있도록 만든 권한 위임(authorization delegation) 방식이에요.용어 정리OAuth를 이해하기 위해 먼저 핵심 용어들을 정리해보겠습니다:Authentication (인증): "이 사람 맞아?" — 사용자 로그인 검증Authorization (권한 부여): "이 사람이 이 기능까지 해도 돼?" — 범위 제한Access Token: "로그인 완료 + 권한 확인"을 담은 열쇠 같은 토큰REST API: 서버와 클라이언트 간의 약속된 데이터 요청/응답 방식 (HTTP 기반)사용자(User): 정보를 소유한 사람클라이언트 앱(Client): 정보를 가져오려는 제3자 앱인증 서버(Auth Se..

iOS/Swift 2025. 5. 28. 19:55

[Swift] Data Race

Data Race 란? 여러쓰레드에서 동시에 하나의 데이터에 접근하고, 그중 하나의 쓰레드가 쓰기작업을 하게될경우 예측할수 없는 결과가 발생하는 문제이다. 예제: 클래스를 여러 Task에서 동시에 접근할경우 (Data Race 발생 )final class Counter { var value = 0 func increment() { value += 1 }}let counter = Counter()Task { for _ in 0.. class는 참조 타입이며 Task {} 는 비동기적이고 병렬적인 작업 단위인데. ( 내부적으로 별도 쓰레드에서 실행됨 )여러 Task가 동시에 동일한 class 인스턴스를 참조하고, 동일한 속성에 접근하면 문제가 발생한다.그 이유는 value ..

iOS/Swift 2025. 5. 27. 13:11

[UIKit] Layout Consistency

레이아웃 정합성이란?레이아웃 정합성(Layout Consistency)이란 UIKit이 UICollectionView를 화면에 그리기 위해 내부적으로 유지하고 있는 데이터 구조와 실제 데이터가 '서로 맞아떨어지는 상태'를 의미한다. UICollectionView의 레이아웃 캐싱 메커니즘레이아웃 사전 계산 (Pre-layout Phase)UICollectionView는 셀을 그릴 때 단순히 그리는 것이 아니다. 내부적으로 "섹션 몇 개, 각 섹션에 셀 몇 개, 셀의 위치, 크기"를 전부 계산해서 기억해둔다. 이를 레이아웃 캐시(layout cache)라고 한다. UICollectionView는 레이아웃을 그리기 전에:layoutSubviews()나 reloadData() 전 "지금 섹션 몇 개야? 각 섹..

iOS 2025. 5. 25. 16:14

[RxSwift] Debugging & KVO

Debugging Compile ErrorsWhen writting elegant RxSwift/RxCocoa code, you are probably relying heavily on the compiler to deduce types of Observables. This is one of the reasons why Swift is awesome,but it can also be frustrating sometimes. RxSwift/RxCocoa 코드를 작성할때, 컴파일러가 Observable의 타입을 유추하도록 크게 의존하게 됩니다. 이는 Swift가 멋진이유중 하나이지만, 때론 좌절감을 줄수도 있습니다.(아마 타입 추론과 연관된 얘기인듯? ) RxSwift는 클로저와 제네릭을 자주사용함, 이로인..

iOS/RxSwift 2025. 1. 21. 22:37

[RxSwift] Playground & Error Handling

PlaygroundsIf you are unsure how exactly some of the operators work, playgrounds contain almost all of the operators already prepared with small examples that illustrate their behavior.RxSwift의 연산자(operators)가 정확히 어떻게 작동하는지 확실하지 않다면, Playgrounds에서 제공되는 작은 예제를 확인할 수 있습니다.Playgrounds에는 **거의 모든 연산자에 대한 예제**가 준비되어 있으며, 이를 통해 연산자의 동작을 쉽게 이해할 수 있습니다.  To use playgrounds, please open Rx.xcworkspace, bu..

iOS/RxSwift 2025. 1. 8. 23:05

[RxSwift] Infallible

Infallinble is another flavor of `Observable` which is identical to it, but it's guaranteed to never fail and thus emit error. This means that when creating your own Infallible (using Infallible.create or one of the method mentioned in "Creating your first Observable"), you will not be allowed to emit errors.   Infallible은 Observable의 또 다른 유형 으로, Observable과 동일하지만 절대 실패하지 않으며, 에러를 방출할수 없습니다. 즉,I..

iOS/RxSwift 2025. 1. 3. 21:00

[RxSwift] Sharing Subscription and the share Operator

But what if you want that multiple observers share events (elements) from only one subscription? 만약 여러 Observer가 하나의 구독에서 생성된이벤트(요소) 를 공유하도록 만들고 싶다면 어떻게 해야할까요?   There are two things that need to be defined   1. How to handle past elements that have been recevied before the new subscriber was interested in observing them (replay latest only, replay all, replay last n). 2. How to decide when to f..

iOS/RxSwift 2024. 12. 26. 21:00

추가 정보

인기글

최신글

페이징

이전
1 2 3
다음
TISTORY
bloomLog © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바