All
-
RxSwift - DisposableProgramming/RxSwift 2022. 3. 17. 21:39
안녕하세요 BeePeach입니다 :) 오늘은 Disposable에 대해서 공부해보려고 합니다. subscribe 오퍼레이터를 통해서 구독을 시작하면 Observable이 동작을 하게 된다고 공부를 했습니다. 그럼 이벤트 방출을 시작한 Observable은 언제 종료될까요?? Observable은 Error나 Completed 이벤트를 방출하게 되면 종료됩니다. 혹은 두 이벤트를 방출하지 않아도 dispose()를 호출하면 Observable이 종료됩니다. Disposable Disposable이란 사전적 의미는 "처리할 수 있는" 입니다. Disposable를 이용해서 Observable과 Observer의 sequence를 끊고 Observable과 관련된 모든 리소스를 정리할 수 있습니다. Dispo..
-
RxSwift - SubscribeProgramming/RxSwift 2022. 3. 17. 21:39
안녕하세요 BeePeach입니다 :) 오늘 공부해볼 내용은 Subscribe입니다. 이전 포스팅에서 Observable을 생성해서 sequence를 정의했습니다. 그런데 정의만 하고 사용하지 않았죠? Observable에서 정의한 이벤트들을 받기 위해서는 Subscribe(구독)을 해야 합니다. Subcribe 그럼 어떻게 구독할 수 있을까요?? Observable과 Observer를 연결해주는 방법은 Observable에서 제공하는 subscribe(_:) 인스턴스 메서드를 사용하는 것입니다. 이 메서드는 ObservableType 프로토콜에 정의된 메서드인 것을 이전에 확인했었습니다. subscribe(on:) 메서드는 파라미터로 escaping 클로저를 받고 Disposable을 리턴하는 메서드입니..
-
iOS - Firebase 기본 설정하기Programming/iOS 2022. 3. 16. 15:35
안녕하세요 BeePeach입니다 :) 오늘 공부해볼 내용은 Firebase 기본 설정하는 방법에 대해서 공부해보도록 하겠습니다. 사실 기본적으로 너무 잘 설명이 되어있어서 굳이 포스팅하지 않아도 될지도...? 시작하기 전에 먼저 Firebase에 회원가입을 완료해주세요. 바로 시작해보겠습니다! 시작하기 먼저 콘솔로 이동해줍니다. 그리고 프로젝트 추가를 눌러주셔서 새로운 프로젝트를 추가해주세요. 그럼 이름을 지정하라고 하는데 원하는 이름으로 해주시면 됩니다. 두 번째는 Goovle 애널리틱스를 이용할 거냐고 물어보는데 설명대로 해당 기능들을 사용하고 싶다면 켜줍니다. 여기서는 로그인만 구현할 프로젝트이기 때문에 사용하지 않도록 할게요! 그리고 프로젝트 만들기를 하시면 프로젝트가 생성됩니다. 프로젝트를 생성..
-
Library - Kingfisher 사용해보기Programming/Library 2022. 3. 14. 21:12
안녕하세요 BeePeach입니다 :) 오늘은 image를 외부에서 가져올 때 많이 사용하는 Kingfisher에 대해서 공부해보려고 합니다. Kingfisher는 Web에서 image를 다운로드하거나 캐싱할 때 사용하는 오픈소스 라이브러리입니다. Kingfisher는 URLSession을 기반으로 만들어졌습니다. 주요 특징으로는 여러가지가 있습니다. 두 가지 정도만 예로 들어보자면 Asynchronous 이미지 다운로드 및 캐싱 메모리 또는 디스크에 저장하는 캐시 지원 https://github.com/onevcat/Kingfisher GitHub - onevcat/Kingfisher: A lightweight, pure-Swift library for downloading and caching imag..
-
Library - Lottie 사용해보기Programming/Library 2022. 3. 14. 01:29
안녕하세요 BeePeach입니다 :) 오늘 공부해볼 내용은 Lottie입니다. Lottie는 Vector기반의 애니메이션을 실시간으로 랜더링 해주는 오픈소스 라이브러리입니다. iOS뿐만 아니라 Android, React Native등 다양한 곳에서 사용될 수 있습니다. 쉽게 말해서 Gif, 짤 같은 애니메이션이 적용된 화면을 쉽게 추가할 수 있게 해 주는 라이브러리입니다. 특이한 점은 Lottie file은 JSON형태로 되어있습니다. 한번 다운 받은 파일을 열어보겠습니다. 형식은 JSON이 맞는데 우리가 직접 보기에는 상당히 복잡하게 느껴지네요. 하지만 이렇게 JSON으로 되어있어서 크기가 작다는 장점이 있다고 하네요. 준비물 https://github.com/airbnb/lottie-ios GitHu..
-
iOS - SwiftUI를 이용해서 Preview 보기Programming/iOS 2022. 3. 12. 03:06
안녕하세요 BeePeach입니다. 이전 포스팅에서 storyboard를 삭제하는 방법에 대해서 같이 공부를 해봤는데요. 코드로 UI를 구성하다 보면 아쉬운 부분은 실시간으로 화면 구성을 못 본다는 부분입니다. 계속 시뮬레이터를 켰다가 껐다가 하는 부분이 불편할 수 있는데요. 이러한 불편함을 해소할 수 있는 부분이 바로 SwiftUI에서 제공하는 Preview를 이용하는 방법입니다. 이 방법은 iOS13.0이상에서만 사용할 수 있습니다. Preview 만들기 디버그모드에서만 사용하도록 #if Debug #endif를 이용해 전처리를 해줍니다. 그리고 UIViewControllerRepresentable 프로토콜을 채용하는 구조체를 하나 생성해줍니다. 요구 메서드는 2가지가 있습니다. makeUIViewCo..
-
iOS - Project의 Storyboard 삭제하기Programming/iOS 2022. 3. 12. 02:20
안녕하세요 BeePeach입니다 :) 이번에 공부해볼 내용은 Project에서 storyboard file 삭제하는 방법입니다. 만약 코드로만 UI를 구성하려고하는데 main.storyboard를 삭제하고 싶은 경우가 있습니다. 그렇다고 무턱대로 storyboard 파일만 삭제하고 시뮬레이터를 실행하면 에러가 발생하게 됩니다. 그때 어떻게 삭제 해야하는지 한번 알아보도록 하겠습니다. 삭제하기 먼저 Main.storyboard를 Move to Trash로 삭제해줍니다. 이때 가끔 Remove Reference가 파란색 표시가 되어있다고 선택하시는 분들이 있는데 이렇게 삭제하게되면 Xcode에서만 삭제되고 실제로 Finder로 경로를 찾아가보면 파일은 그대로 남아있게됩니다. 그리고 LaunchScree.st..
-
Library - SnapKit 사용해보기Programming/Library 2022. 3. 11. 21:25
안녕하세요 BeePeach입니다 :) 이번에 공부해볼 내용은 바로 SnapKit입니다. 코드로 Autolayout을 작성할 때 편리하게 해주는 오픈소스 라이브러리입니다. https://github.com/SnapKit/SnapKit GitHub - SnapKit/SnapKit: A Swift Autolayout DSL for iOS & OS X A Swift Autolayout DSL for iOS & OS X. Contribute to SnapKit/SnapKit development by creating an account on GitHub. github.com 사용해보기 먼저 SnapKit을 사용하지 않고 view를 하나 추가해보겠습니다. 일단 translateAutoresizingMaskConst..