본문 바로가기

Mobile/Swift4

[SwiftUI] SwiftUI 문서 찍먹하기 이번 글에서는 예전에 UIKit, Storyboard 개발을 다 해보았지만 SwiftUI에 대해서는 얕은 지식을 가지고 있다는 생각이 들었습니다. 저의 궁극적인 목표는 UIKit과 SwiftUI 모두 구현하여 두가지를 하나의 프로젝트에 녹여내는게 제 목표입니다.아래는 각각의 사용후기를 적어보았습니다.사용후기UIKit장점오랫동안 사용되어 아직도 사용되는곳이 많습니다.레퍼런스가 많습니다.단점CodeBase로 UI를 구현하다보니 코드의 양이 방대해집니다. (관리가 필요하다)SwiftUI처럼  Preview가 지원되지않음습니다.SwiftUI장점UIKit에 비해 적은 양의 코드로 UI개발이 가능합니다.실시간 미리보기를 통해 빠른 개발이 가능합니다.단점UIKit에 비해 새로운 개념과 접근 방식을 익혀야 합니다.iO.. 2024. 11. 11.
[Swift] RxSwift RxSwift의 정의Rx 구현과 마찬가지로 RxSwift의 의도는 비동기 작업과 Observable이러한 비동기 작업 조각을 변환하고 구성하는 메서드 모음 및 개체 형태의 데이터 스트림을 쉽게 구성할 수 있도록 하는 것입니다.RxSwift는 SPM, CocoaPods 둘 다 지원한다. 나는 SPM으로 설치를했다.RxSwift의 구조이해RxSwift : RxSwift의 핵심으로서 ReactiveX 에 의해 정의된 (대부분) Rx 표준을 제공합니다 . 다른 종속성이 없습니다.RxCocoa : 공유 시퀀스, 특성 등과 같은 일반적인 iOS/macOS/watchOS 및 tvOS 앱 개발을 위한 Cocoa 전용 기능을 제공합니다. RxSwift및 에 따라 다릅니다 RxRelay.RxRelay : 및 Publish.. 2022. 11. 7.
[Swift] Singleton Pattern 뽀개기 싱글톤 패턴이란 ? 공용으로 사용할 객체를 하나만 생성하여서 공용으로 사용하는 방법 처음에 들으면 무슨 말인가 싶습니다. 근데 실제로 코드를 짜다보면 제가 객체를 마구 생성해서 한 번 피를 봤던 경험이 있었습니다. 우선 공용으로 사용할 ViewModel을 예시로 들어서 설명하겠습니다. 이 VIewModel은 각각의 뷰에서 사용될 녀석인데 로그인한 유저의 데이터를 가지고 있습니다. 로그인한 데이터는 로그인한 유저의 Token값을 가지고 있습니다. (Token을 키체인을 저장할 수도있지만 예시를 들겠습니다.) 이 토큰은 페이지를 접근할때마다 필요하게 됩니다. 근데 각 뷰마다 이렇게 ViewModel을 생성을 해버리면 뷰마다 각자 UserData를 가지게 됩니다. 그래서 아래의 방법으로 Singleton Pa.. 2022. 11. 7.
Optional 뽀개기 Swift는 다른 언어들과 달리 Optional 이라는 개념이 존재한다. 더보기 Optional은 nil을 사용할 수 있는 타입과 없는 타입을 구분하기 위함이며, nil을 사용할 수 있는 Type을 Optional Type이라 부른다 여기서 nil인 경우는 '값이 없다' 라는 것을 의미한다. 그럼 예시를 들기위해 하나를 만들어볼게요. Type뒤에 '?'를 붙여 생성할 수 있으며, 옆에 결과를 보니 nil로 출력되네요. 네, 변수 Type만 선언해놓고 변수 안에 값을 넣어주지 않았으니 당연히 "값이 없다" 라는게 맞고, 위에 Optional의 정의와 맞는 부분인거 같네요. 여기서 Type만 선언한 nameOptional에 값을 넣어볼까요? Type을 미리 선언해놓고, 안에 값을 넣는것도 가능합니다. 이렇게.. 2022. 11. 6.