| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- escaping
- calendar
- singleton
- http
- segue
- Animation
- ScrollView
- list
- NotificationCenter
- IOS
- Git
- Refresh
- error
- apns
- viewlifecycle
- struct
- array
- CoreImage
- Switch
- 글또
- uikit
- 화면전환
- Observer
- PushNotification
- SWIFTUI
- self
- SWIFT
- 고차함수
- mvvm
- class
- Today
- Total
목록uikit (18)
seong_hye, the developer
📘UIKit - View Life Cycle (뷰 생명주기)UIKit에서의 View Life Cycle은 UIViewController가 화면에 나타나고 사라질 때어떤 메서드 순서로 호출되는 지를 의미한다. 🔹 전체 흐름🔍일반적인 호출 순서 (화면이 나타날 때)init() // 생성자 (코드에서 직접 호출 시)|loadView() // 뷰 계층을 생성 (직접 구현 가능)|viewDidLoad() // 뷰가 메모리에 로드도니 직후 (1회만 호출)|viewWillAppear() // 뷰가 나타나기 직전 (매번 호출)|viewDidAppear() // 뷰가 화면에 나타난 직후 (매번 호출) 🔍 화면이 사라질 때viewWillDisappear() // 뷰가 사라지기 직전|viewDidDis..
📘 SnapKitiOS 앱 개발에서 사용하는 Auto Layout을 코드로 쉽게 작성할 수 있게 해주는 Swift 전용 DSL(도메인 특화 언어) 라이브러리 SnapKit = NsLayoutConstraint를 간결하고 읽기 쉬운 코드로 작성할 수 있도록 도와주는 Swift 라이브러리 🔹 사용 방법 - XCode > File > Add Packages Dependencies...URL : https://github.com/SnapKit/SnapKit - CocoaPods로 패키지 다운로드pod 'SnapKit'🔹 예제import SnapKitlet box = UIView()vew.addSubview(box)box.snp.makeConstraints { make in make.top.equalToS..
UIKit을 사용하기 위해 프로젝트를 만들게 되면만들어져있는 기능들에 대해 알아보려 한다📘 AppDelegateiOS 앱의 생명 주기(lifeCycle)와 시스템 이벤트를 관리하는 핵심 클래스앱이 실행될 때부터 종료되기까지의 흐름을 제어하며,앱 수준의 이벤트(ex_푸시 알림, 백그라운드 진입, 외부 URL 열기 등)를 처리하는 데 사용 AppDelegate = iOS 앱 전체의 실행 상태와 시스템 이벤트를 처리하는 앱 생명 주기 관리자 클래스🔹기본 구조import UIKit@mainclass AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWi..
📘 FirebaseGoogle에서 제공하는 모바일 및 웹 애플리케이션 개발 플랫폼앱 개발에 필요한 다양한 백엔드 기능을 빠르게 구현할 수 있도록 도와줌서버를 직접 구축하지 않고도 인증, 데이터베이스, 알림, 분석 등을 활용할 수 있어 스타트업, 개인 개발자, 프로토타입에 자주 사용됨 Firebase = 서버 없이 앱의 백엔드 기능을 클라우드에서 처리할 수 있게 해주는 플랫폼 🔹 주요 기능기능설명Authentication이메일/ 비밀번호, SNS, Apple, Anonymous 로그인 지원Firestore / Realtime Database클라우드 기반 NoSQL 데이터베이스Cloud Storage이미지 / 동영상 등 파일 저장Cloud Messaging (FCM)푸시 알림 서비스Analytics사용자..
📘 KingfisherSwift에서 널리 사용되는 이미지 다운로드 및 캐싱 라이브러리특히 URL 기반 이미지 로딩을 간단하게 처리할 수 있고.내부적으로 강력한 메모리/디스크 캐싱, 다운로드 관리, 프리페치, 리사이징, 리사이클링 등을 제공 Kingfisher = Swift에서 이미지 URL을 비동기 로딩 + 캐싱까지 한 번에 해주는 라이브러리 🔹 주요 기능기능설명URL 이미지 다운로드imageView.kf.setImage(with: URL) 한 줄로 가능메모리 + 디스크 캐싱자동으로 처리 (옵션 조정 가능)SwiftUI 지원.kfImage 뷰로 간편하게 사용 가능이미지 가공리사이징, 블러, 라운딩, 필터 등 적용 가능프리페칭다가올 이미지 미리 다운로드재사용 최적화셀 재사용 상황에서 매우 효율적프로그레..
📘 AlamofireSwift에서 가장 널리 쓰이는 HTTP 네트워킹 라이브러리복잡한 URLSession 코드를 간단하게 만들고, REST API 요청/응답처리, 파일 업로드/ 다운로드, JSON 파싱, 인증 등을 쉽게 처리할 수 있음 Alamofire = Swift의 간편하고 강력한 HTTP 통신 라이브러리 🔹 주요 기능기능설명HTTP 요청GET, POST, PUT, DELETE 등 API 요청JSON 처리자동으로 JSON -> Swift 객체로 파싱 가능인증/헤더 처리토큰, 커스텀 헤더 쉽게 추가 가능파라미터 인코딩 URL, JSON, multipart 등 지원파일 업로드/ 다운로드Progress 추적 가능오류 처리상태코드, 네트워크 실패 등 깔끔하게 관리오쳥 시간 측정, 리트라이고급 요청 관리 ..
📘Swift) Background Execution어떤 경우 앱이 백그라운드 상태로 들어가도 내용이 진행되고 상태를 받아온다그런 경우는 어떻게 진행되는 걸까?🔹 백그라운드 실행 ( Background Execution )앱이 화면에 보이지 않더라도 작업을 계속 수행하거나 완료할 수 있도록 하는 기능iOS는 리소스 절약을 위해 앱이 백그라운드로 가면 대부분의 실행을 중지시키므로,특정 조건과 방식에 따라 백그라운드에서도 작업을 지속할 수 있도록 해야 함🔹 iOS에서 백그라운드 실행 가능한 주요 케이스iOS는 백그라운드 작업을 허용하는 제한된 기능만 공식적으로 지원함유형설명백그라운드 오디오음악 / 음성 등 재생 유지백그라운드 위치 추적GPS나 위치 업데이트 지속VolP인터넷 전화 대기 (iOS 13 이후..
📘 Swift) DispatchSoureTimer알람 앱을 사용하다보면 백그라운드에 있어도 타이머가 잘 진행되는 모습을 볼 수 있다이번에는 그렇게 백그라운드에서 실행될 수 있는 타이머에 대해 알아보자 🔹 문법 설명 GCD(Grand Central Dispatch) 기반으로 정밀하고 효율적인 타이머를 만들 수 있게 해주는 객체Timer보다 더 낮은 수준에서 제어 가능 백그라운드에서 안정적으로 동작반복주기, 시작 시점, 허용 오차 등을 세밀하게 조절 가능🔹 주요 구성 요소구성설명DispatchSource.makeTimerSource(queue:)타이머 생성, 큐는 실행할 대상 지정schedule(deadline:repeating:leeway:)시작 시점, 반복 주기, 허용 오차setEventHandle..