일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- Animation
- Refresh
- calendar
- struct
- viewlifecycle
- CoreImage
- IOS
- singleton
- list
- SWIFTUI
- uikit
- 고차함수
- class
- Git
- apns
- error
- escaping
- self
- PushNotification
- SWIFT
- array
- mvvm
- Observer
- segue
- 화면전환
- ScrollView
- 글또
- NotificationCenter
- http
- Switch
- Today
- Total
목록My P_Life (121)
seong_hye, the developer

📘 Swift 기능 정리: 코드 스니펫(Code Snippet)코드 스니펫은 자주 사용하는 코드 블록을 저장하고 재사용할 수 있게 해주는 기능으로Xcode에서 개발 시간을 단축하고 실수를 줄여주는 생산성 도구이다.이에 대해 조금 더 자세히 알아보자 🔹 코드 스니펫이란?반복적으로 사용하는 코드 패턴(구문, 템플릿)을 저장해두고필요할 때 빠르게 불러와 자동 완성으로 삽입할 수 있는 기능 🔹 접근 방법1. 상단 바에 있는 + 버튼을 클릭해서 접근 2. cmd + shift + L 을 눌러 띄우는 방법 3. 도구 탭에서 Menu -> Editor -> Create Code Snippet 선택하는 방법 🔹 생성 방법XCode에서 스니펫으로 저장하고 싶은 코드를 선택해 드래그 후 우클릭Create Code..

자기자신을 가르키는 것으로 알고 있는 self가소문자인지 대문자인지에 따라 의미와 목적이 다르다고 한다.그 내용에 대해 정리해보려 한다.self인스턴스를 가르킴모든 인스턴스들이 암시적으로 생성하는 속성 사용 목적1) 인스턴스 내부에서 인스턴스의 속성을 더 명확하게 가르키기 위해 사용class Person { var name: String init(name: String) { self.name = name }}2) 값타입에서 인스턴스 자체의 값을 치환할 때 사용 가능 (클래스에서는 사용불가)struct Calculator { var number: Int = 0 mutating func plusNumber(_ num: Int) { number = n..

📘 Swift - SwiftUI) 화면 전환 방식SwiftUI에서는 UIKit처럼 pushViewController나 present()를 쓰지 않고,선언형 방식으로 화면 전환을 구현한다방식 하나하나에 대해 알아보자 🔹 화면 전환 4가지 방식방식설명사용 상황NavigationLink푸시(push) 전환리스트 -> 상세NavigationStack + 프로그래밍 전환상태 기반 전환조건 분기, 버튼 전환.sheet모달(modal) 전환팝업처럼 위에 띄움.fullScreenCover전체 화면 모달로그인, 온보딩 등 🔹 1. NavigationLink - Push 방식버튼이나 텍스트처럼 NavigationLink 자체가 클릭 가능한 이동 UI가 됨 🔍 NavigationLink란?SwiftUI에서 뷰 간의 ..

📘 Swift - UIKit) 화면 전환 방식Swift에는 화면 전환(화면 이동)을 구현하는 여러 방식이 존재한다이에 대해 하나하나 알아가보자🔹화면 전환 3가지 방식방식설명사용 환경PushNavigation Stack에 밀어 넣는 방식UINavigationControllerPresent (Modal)현재 화면 위에 새 화면을 덮는 방식모든 UIViewController 가능Segue스토리드에서 화살표로 연결스토리보드 기반🔹1. PushViewController 방식현재 UINavigationController 가 관리하는 화면 스택에 새로운 ViewController를 추가(push) 하여 화면을 전환하는 방식func pushViewController( _ viewController: UIVi..
📘 Swift 문법 정리: @escaping클로저를 사용할 때 사용하게 되는 @escaping에 대해 자세히 알아보자 🔹 문법 설명 @escaping은 클로저가 함수의 실행이 끝난 후에도 실행될 수 있음을 나타내는 키워드즉, 클로저가 함수 외부에서 나중에 호출될 가능성이 있다면 Swift는 명시적으로 @escaping 키워드를 요구함비동기 처리, API 응답, 딜레이 작업 등에서 주로 사용되며잘못 사용하면 메모리 누수나 컴파일 에러로 이어질 수 있다.🔹 예제 1 : 비동기 작업func fetchData(completion: @escaping (String) -> Void) { DispatchQueue.global().asyncAfter(deadline: .now() + 1) { complet..

📘 Swift: Alert와 Action Sheet앱을 사용하다보면 사용자에게 메시지를 전달하거나 선택지를 받아야하는 경우가 생기죠이 때 사용할 수 있는 alert와 action Sheet에 대해서 한번 알아보려 해요🔹 Alert에 대하여Alert(알림창)은 사용자에게 메시지를 전달하거나, 확인/취소와 같은 간단한 선택지를 제공하는 UI요소SwiftUI와 UIKit 에서 만드는 방식이 다름🔍 SwiftUI에서 Alert 사용법import SwiftUIstruct ContentView: View { @State private var showAlert = false var body: some View { VStack { Button("알림창 띄우기") { showAlert ..

📘 Swift 문법 정리: AutoLayout vs FrameAuto Layout 과 frame은 뷰의 위치와 크기를 설정하는 두 가지 방식이다각각에 대해 한 번 알아보자 🔹 Auto Layout 이란?뷰들 간의 관계(제약 조건)를 통해 위치/크기를 자동으로 계산하는 시스템기기의 화면 크기, 회전, 콘텐츠에 따라 동적으로 레이아웃을 조정할 수 있다. 🔍 사용 예시import UIKitclass ViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() let label = UILabel() label.text = "안녕하세요" label.backgrou..
📘 Swift 문법 정리: guard 문코드를 작성할 수록 if문이 깊어져서 불편했던 경험 없으신가요?if문이 깊어지게 되면 지속적으로 들여써야해서 코드의 가독성이 안좋아져요.이를 위해 사용하는 것이 바로guard문 입니다. 🔹 문법 설명 'guard: 감시하다' 라는 뜻으로 조건을 일찍 감시하고 코드가 진행될 수 있도록 도와준다. 조건이 틀린 경우는 진행하던 작업을 일찍 끝내버리고, 우리가 원하는 조건의 경우에만 진행하도록 해준다.if문은 '~면 ~해라' 라는 뜻이라면, guard는 '~아니면 끝내라' 라는 의미이기 때문이다. 따라서 guard문은 '빠른 종료'를 해주는 것이 핵심이다. 반드시 else 블록이 따라와야 하며, 그안 에서 return, break, continue, thorw 중 하..