일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- calendar
- self
- 화면전환
- NotificationCenter
- Switch
- list
- error
- Animation
- apns
- IOS
- 고차함수
- Refresh
- SWIFTUI
- mvvm
- SWIFT
- escaping
- http
- class
- viewlifecycle
- struct
- Observer
- PushNotification
- uikit
- 글또
- CoreImage
- singleton
- ScrollView
- Git
- segue
- array
- Today
- Total
목록IOS (102)
seong_hye, the developer
Swift 공부를 하다보면 나오는 Library, Framework. Package에 대해 좀 더 자세히 알아보려고 한다. 📁 한 줄 정리모두 "코드를 재사용 가능하게 만든 단위"이지만 약간씩 의미와 사용방식이 다름용어한 줄 설명Library함수/ 클래스를 모다운 재사용 가능한 코드 집합Framework실행, 구조, 상호작용까지 포함된 큰 단위의 라이브러리Package하나 이상의 라이브러리/모듈을 포함한 배포 가능한 단위 (SwiftPM 기준)📘Library (라이브러리)특정 기능을 제공하는 코드 묶음, 개발자가 호출해서 사용 - 보통 함수나 클래스 집합- 앱이 직접 라이브러리를 "사용자"로써 호출 🔹 핵심 특징항목설명구성함수, 클래스, 구조체, 프로토콜 등재사용성여러 앱에서 동일한 기능을 공유수동..
보호되어 있는 글입니다.

📘 APNsApple Push Notification service의 약자iOS, macOS, watchOS, tvOS 앱에 **푸시 알림(Push Notification)**을 전송할 수 있도록Apple이 제공하는 공식 알림 전송 서비스 APNs = Apple 기기에 원격 푸시 알림을 전달하는 중앙 서버 시스템🔹 APNs의 역할"end-to-end"데이터를 송신자(앱 서버)에서 시작하여 수신자(사용자 디바이스)까지 안전하게 전달하는 전체 과정앱 서버가 보낸 메시지를 iPhone, iPad, Mac 등에 안정적이고 보안적으로 전달하는 중간 다리 역할🔹 APNs이 필요한 이유역할설명메시지 전달앱 서버가 직접 디바이스와 통신하지 않고 APNs를 통해 전달보안 유지토큰 기반 인증 및 암호화앱 상태에 상관..
📘 Attribute@attribute는 실제 키워드가 아닌 "속성"을 나타내는 표기 방식즉, @기호로 시작하는 것들을 통틀어 **Swift 속성"컴파일러나 런타임에게 특별한 의미를 부여하는 메타 정보 역할을 함 @attribute = 함수, 타입, 변수 등에 특수한 동작이나 정보를 부여하는 컴파일러 지시자 🔹주요 Swift Attribute 목록과 설명Attribute용도@available특정 OS 버전 이상에서만 사용 가능@discardableResult반환값을 사용하지 않아도 경고 발생 X@objcObjective-C와 상호 운용 (Selector 등)@IBAction, @IBOutlet스토리보드와 연결@StateSiwftUI 상태 변수 (UI를 다시 그림)@Binding부모 뷰로부터 전달받은 ..
notification은 쉽게 말하면 앱에서 오는 알림이다iOS에서는 크게 두 가지로 나뉘어 진다- NotificationCenter : 앱 내부에서 메시지를 주고 받는 방법- Push Notification : 외부 서버에서 사용자 기기로 보내는 알림 이 내용에 대해 자세히 알아보자 📘 NotificationCenter앱 내부에서 이벤트를 전달하는 "게시 - 구독(Pub - Sub)" 방식의 메시지 시스템 🔹 사용 예시✅ 알림 보내기 (Post)NotificationCenter.default.post(name: .testNotification, object: nil) ✅ 알림 수신 (Add Observer)NotificationCenter.default.addObserver(forName: .tes..
UIKit을 사용하기 위해 프로젝트를 만들게 되면만들어져있는 기능들에 대해 알아보려 한다📘 AppDelegateiOS 앱의 생명 주기(lifeCycle)와 시스템 이벤트를 관리하는 핵심 클래스앱이 실행될 때부터 종료되기까지의 흐름을 제어하며,앱 수준의 이벤트(ex_푸시 알림, 백그라운드 진입, 외부 URL 열기 등)를 처리하는 데 사용 AppDelegate = iOS 앱 전체의 실행 상태와 시스템 이벤트를 처리하는 앱 생명 주기 관리자 클래스🔹기본 구조import UIKit@mainclass AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWi..

📘 SwiftUI - 화면 맨 위로 올라오기어플을 사용하다보면 스크롤 하다가 버튼을 눌러 화면의 맨 위로 올라오도록 하는 경우를 볼 수 있다해당 경우를 어떻게 구현했는지 정리해보려 한다. 🔹 기본 개념- ScrollViewReader: 뷰에 스크롤 위치 조작 기능을 부여할 수 있음 - .id( id 값 ) : 스크롤 목표 위치에 식별자를 붙임- .scrollTo( id 값 ) : 해당 위치로 스크롤 이동이 가능함🔹List에 버튼을 통해 위로 올리기struct ContentView: View { @State private var showButton = false let items = Array(1...100) var body: some View { ScrollviewR..
확장(Extension)이란?기존 클래스, 구조체, 열거형 타입에 새로운 Property, Method, Initializer 등을 추가하는 것으로,원본 타입(소스 코드)에 접근하지 못하는 타입들도 확장해서 사용할 수 있음extension이란 키워드를 사용하여 확장함 사용하는 이유? 원본 소스 코드에 대한 액세스 권한이없는 유형을 확장하는 기능이 포함 (소급-모델링 retroactive modeling)예) Int, String, Double 등 애플이 미리 만들어 놓은 타입에 확장도 가능[ Struct에선 self를 사용할 때 mutating 키워드 필요 ]class Person { var id = 0 var name = "이름" var email = "1234@gmail.com" ..