일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- error
- viewlifecycle
- mvvm
- struct
- singleton
- segue
- apns
- ScrollView
- uikit
- 화면전환
- SWIFTUI
- list
- array
- self
- protocol
- NotificationCenter
- Refresh
- SWIFT
- IOS
- Switch
- 고차함수
- http
- Git
- 글또
- PushNotification
- 회고
- class
- calendar
- Observer
- escaping
- Today
- Total
목록IOS (94)
seong_hye, the developer
고차함수에 대해 공부하고 사용하다가 보니for문을 사용해도 되는 걸 고차함수로 사용하는 게 이득인가? 라는 생각을 하게 되었다.https://programming-seonghye.tistory.com/25 Swift)문법 정리 - 고차함수📘 Swift 문법 정리: 고차함수Swift 문법 중 고차함수에 대해 정리한 글입니다. 🔹 1. 문법 설명Swift에서 매우 핵심적인 개념으로 컬렉션 처리 (Array, Set, Dictionary) 에 자주 사용됩니다.다른 함수를programming-seonghye.tistory.com 그런 이유로 한 번 알아보자.📘 고차함수 사용이 메모리 측면에서 이득인가?🔹 결론 먼저 요약Swift에서 고차함수(map, filter, reduce 등)는 가독성과 표현력은 ..
📘 Swift 문법 정리: Class vs Structclass와 struct는 둘 다 앱을 만들 때 가장 처음 보게 되는 키워드라고 할 수 있다.두 키워드의 공통점과 차이점에 대해 한 번 알아보자 🔹 기본 구조class와 struct 모두 데이터를 정의하는 사용자 정의 타입class Animal { var species: String = "" func sound() { print("소리를 냅니다") }}struct Person { var name: String func greet() { print("안녕하세요 \(name)님") }}🔹 공통점프로퍼티(변수), 메서드(함수), 초기화(init), 확장(extension) 프로토콜 채택 등 가능🔹 차이점항목str..
싱글톤 패턴이란?메모리상에 유일하게 1개만 존재하는 객체 설계하는 패턴한번 생성된 이후에는 앱이 종료될 때까지, 유일한 객체로 메모리에 상주static let 변수에 접근시 유일한 객체가 생성되고 데이터가 메모리에 lazy 하게 올라감외부에서 또다른 새로운 객체 생성을 금지하고 싶은 경우, private init 메서드로 선언(선택적) 싱글톤 패턴이 필요한 이유?앱 구현 시에 유일하게 한개만 필요한 객체가 필요한 경우(특정한 유일한 데이터 / 관리 객체가 필요한 경우) class UIbirthday { // 싱글톤 패턴 static let singleton = UIbirthday() // 저장 속성 초기화 var screenCount: Int = 1 var screenBrigh..

📘 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..