WooKoo Blog

물과 같이

분류 전체보기 123

[iOS] - 움직이는 애니메이션 효과 Lottie

스위프트에서 특별한 움직이는 애니메이션 효과를 주려면 어떻게 하면 좋을까? GIF로 해야하나..? 이럴 때 도움이 될만한 라이브러리가 있다. 바로 Lottie github.com/airbnb/lottie-ios airbnb/lottie-ios An iOS library to natively render After Effects vector animations - airbnb/lottie-ios github.com Json 데이터를 받아서 실행 시켜줄 수 있는데 오늘은 이것을 한번 해볼 것이다. 코코아팟으로 설치를 해줍니다. pod 'lottie-ios' 그리고 필요한 json 파일을 lottiefiles.com/ Free Lottie Animation Files, Tools & Plugins - Lott..

개발/개발 2021.04.10

[iOS] - Xcode Code Coverage 정복하기

일을 하다가 iOS도 Code Coverage가 가능하냐는 질문을 받았다. Code Coverage가 뭐지...? 처음 들었다. 찾아보니까 Xcode도 이런 기능이 있어서 정리해보려고한다. 제드님이 잘 정리해주셔서 따라 해보면서 추가 정리를 하도록 해야겠다. zeddios.tistory.com/1141 Code Coverage 안녕하세요 :) Zedd입니다. 오늘은 Code Coverage를 알아보는 방법에 대해서 공부해보겠습니다. # Code Coverage? Code Coverage는 테스트의 가치를 측정하는 도구. (Code coverage is a tool to measure t.. zeddios.tistory.com Code Coverage의 정의 (사전적 정의는 코드의 적용 범위) 테스트의 가..

개발/개발 2021.04.03

iOS - 레이아웃 사이클 및 드로잉 사이클

오늘은 레이아웃 사이클과 드로잉 사이클에 대해서 알아보도록 하겠다. 먼저 iOS의 레이아웃은 디바이스별로 다양한 해상도와 사이즈가 다르기 때문에 레이아웃을 조정하는 것이 중요하다. 레이아웃의 사이클은 3단계이다. 1. 제약 조건(Constraints) - 오토레이아웃 제약 조건 - 제약 조건의 갱신은 뷰 계층구조에서 하위뷰 > 상위뷰 순서로 2. 레이아웃(Layout) - 제약 조건을 바탕으로 갱신 - 레이아웃은 구체적인 뷰의 frame - 여기서 center와 bounds 결정 - 레이아웃은 뷰 계층 구조에서 상위 > 하위 순서 3. 그리기(Draw) - 레이아웃 단계에서 구한 framedmf coreGraphics 사용하여 화면에 그림 드로잉 사이클 드로잉 사이클은 뷰가 처음 화면에 나타나면 시스템이..

개발/개발 2021.03.29

[iOS] - 프로젝트에 SwiftLint 적용 시키기

항상 협업을 하면서 중요시 여겨야하는 것이 코 딩 스타일이다. SwiftLint는 그러한 코드 룰들을 적용시켜 사용자에게 경고를 주거나 고쳐주는 라이브러리다. 나의 프로젝트에 적용시켜보자. 먼저 코코아 팟을 이용해서 Pod file에 pod 'SwiftLint' 추가해도록 하자. 그다음에는 빌드 시 검사를 해야하므로 Project 설정에서 Build Phases 에 들어가도록하자. 여기 이렇게 들어오면 왼쪽 위에 + 버튼이 있는데 거기서 New Run Script Phase를 클릭하도록 하자. 그럼 아래와 같은 화면이 나오는데 Run Script 밑에 코드를 짤 수 있게 되어있다. ${PODS_ROOT}/SwiftLint/swiftlint 이거를 입력해주고 자동으로 수정해주길 원한다면 뒤에 ${PODS_..

개발/개발 2021.03.21

Unable to install "App Name"

디바이스로 빌드하려고하니까 빌드 석세스 나왔는데 앱이 실행이 안된다.. 인터넷을 뒤져보니 무료 개발자 계정인 경우 여러개의 앱을 깔 수 없다라고하는데.... 나는 개발자 계정인걸?? 디테일을 눌러보니 이런 메시지가 있었다. com.apple.dt.MobileDeviceErrorDomain 빌드셋팅에서 arm64를 다 제거해주고 빌드하면 잘 실행된다. Drived Data 폴더를 제거하고 클린 빌드를 실행해보자. 아 참~ 코드 사이닝도 확인해보자!!

개발/개발 2021.03.19

RxSwift - 옵저버블 생성하기

RxSwift에서 옵저버블을 만드는 방법은 크게 두 가지가 있다. 하나는 직접 옵저버블을 구현하는 것이고 다른 하나는 이미 만들어진 연산자를 통해 옵저버블을 만드는 것이다. 옵저버블은 옵저버가 구독 할 시점에 어떤 이벤트를 방출 시킬 것인지 정의하는 것이다. 그럼 숫자 1, 2, 3을 방출 시키는 옵저버블을 만들어 보도록 하자. Observable.create{ (observer) -> Disposable in observer.onNext(0) observer.onNext(1) observer.onNext(2) observer.onCompleted() return Disposables.create() } 온 넥스트를 통해서 옵저버에게 0, 1, 2를 방출 시키고 onCompleted 메서드를 통해 옵저버..

개발/개발 2021.03.06

[iOS] - 함수형 프로그래밍

뭐?? Rx를 공부하려면 함수형 프로그래밍과 프로그래밍을 공부해야한다고!!!!!!!!??? 우아악 함수형 프로그래밍이 각광 받는 이유는?? 객체지향 프로그래밍 언어에서는 특정 변수에 따라서 객체의 상태가 변하게 되고 결과가 달라진다. 하지만 함수형 프로그래밍은 같다.(멀티 스레딩 환경에서 좋은 듯..?) 즉, 함수의 결과를 예측하기 쉽고 동작을 쉽고 세이프하게?? 해주기 때문이다. 1급 객체인 함수를 변수처럼 사용이 가능하고하니 이것이 함수형 프로그래밍이다..?? 또한 함수를 함수의 변수로 사용이 가능한?? 뭐야... 조금 더 좋으 ㄴ내용을 찾으면 돌아오겠다...

개발/개발 2021.03.03

[iOS] - Swift Style Guide 정리

회사에서 항상 고려해야하지만 마음대로 잘 안되는 것이 바로 코딩 스타일, 컨벤션..?이 있겠다. 실제로 이런 사항을 항상 코드 리뷰 때 지적을 받는다. 오늘은 jinnify님의 블로그에 정리가 잘되어있어서 보고 정리해보려고 한다. 출처 github.com/raywenderlich/swift-style-guide#function-calls jinnify.tistory.com/57 [Swift] Swift Style Guide 정리 raywenderlich/swift-style-guide를 바탕으로 개인적으로 정리가 필요한 부분을 추가하며 작성하였습니다 :] raywenderlich/swift-style-guide The official Swift style guide for raywenderlich.com..

개발/개발 2021.02.26

RxSwift: Chapter - 1[Hello RxSwift!]

https://store.raywenderlich.com/products/rxswift RxSwift: Reactive Programming with Swift Leverage the power of RxSwift in your reactive apps! This book is for iOS developers who already feel comfortable with iOS and Swift, and want to dive deep into development with RxSwift. Start with an introduction to the reactive program www.raywenderlich.com 해당 책을 토대로 공부하고 정리한 내용들입니다. 오역과 잘못된 정보가 포함되어있을 수 ..

개발/개발 2020.10.04

RxSwift: Chapter - 2[Observables]

해당 내용은 RxSwift Reactive Programming with Swift 원서를 따라 정리하였다. 틀린 내용이나 오역이 있다면 지적 부탁드립니다. https://store.raywenderlich.com/products/rxswift RxSwift: Reactive Programming with Swift Leverage the power of RxSwift in your reactive apps! In this RxSwift book, you'll learn how to integrate RxSwift into real-world iOS apps. store.raywenderlich.com P43 ~ What is an observable? 옵저버블은 Rx의 심장이다. Observable, ..

개발/개발 2020.10.03