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

📘 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 중 하..
📘 Swift 문법 정리: inout 키워드Swift 문법 중 inout 키워드에 대해 정리한 글이다. 일반적인 변수들은 값을 복사해서 사용하게 된다.하지만 복사한 값이 아닌 그 값 자체가 필요하게 된다면 어떻게 해야할까?copy-in copy-out 메커니즘과도 관련이 깊은데https://programming-seonghye.tistory.com/42 Swift) 문법 정리 - COW(Copy-On-Write)swif에는 저희가 인지하지 못하고 사용하고 있는 여러 프로그래밍 기술들이 있죠 오늘은 그 중에서 COW(Copy-On-Wirte)에 대해 알아보려고 합니다. COW(Copy-On-Write) 컴퓨터에서 복사할 때 값을 복사해서programming-seonghye.tistory.com swi..
📘 Swift 문법 정리: 고차함수Swift 문법 중 고차함수에 대해 정리한 글입니다. 🔹 1. 문법 설명Swift에서 매우 핵심적인 개념으로 컬렉션 처리 (Array, Set, Dictionary) 에 자주 사용됩니다.다른 함수를 전달 인자로 받거나 함수 실행의 결과를 함수로 반환하는 함수를 고차함수라고 합니다.for문보다 코드가 간결하고, 의도를 명확하게 표현할 수 있다는 장점이 있습니다.UI 코드에서도 종종 활용되며 SwiftUI에서도 자주 활용됩니다. 🔹 2. 주요 고차 함수와 코드 예제map콜렉션 내부의 데이터를 가공하여 새로운 콜렉션을 생성하는 함수인자를 클로저로 받아 컨테이너 내부에 들어있는 요소들의 값을 어떻게 바꿀 것인지 정합니다.let numbers = [1, 2, 3, 4]..
📘 Swift 문법 정리: 클로저(Closure)Swift 문법 중 클로저에 대해 정리한 글입니다.Swift를 공부하다 새로운 기술을 많이 보게 되는데가장 흥미롭게 공부하는데 시간이 꽤 걸린 클로저에 대해 알아보려고 합니다. 🔹 문법 설명클로저를 한마디로 정의한다면 익명함수라고 할 수 있습니다.함수에서 이름을 땐 기능 블록을 의미합니다.하지만, 사실은 func 키워드를 이용해 이름이 붙어있는 함수들도 모두 클로저라고 합니다. 📌 이름이 있는 클로저(Named Closure) + 이름이 없는 클로저(Unnamed Closure) = 클로저 (Closure)여기서 우리는 Named Closure 를 함수라고 부르고 있으며Unnamed Closure를 클로저라고 말합니다. 클로저가 함수보다 큰 범위인 ..

프로젝트를 진행하다보면 만날 수 밖에 없고 반드시 해결해야 할 에러(Error)를 만나게 되는데요오늘은 에러를 해결하기 위한 방법인 에러와 에러 처리 방식에 대해 알아보도록 하겠습니다. 오류(Error)란?스위프트에서 Error란 오류를 보여주는 하나의 프로토콜로 오류가 발생하게 되면 throw로 해당 오류를 알려주게 됩니다. 오류 표현 방법으로는 Error 프로토콜을 사용하여 열거형을 통해 오류를 표현하게 됩니다.enum 오류이름: Error { case 종류1 case 종류2 case 종류3} 예시로 문자열을 숫자로 바꾸는 경우 발생할 수 있는 오류를 작성해본다면 아래와 같이 작성될 수 있습니다.enum IntParsingError: Error { case overflow case invalidIn..
swift에서 사용하던 타입 중 가장 대표적인 Int, String, Double의 경우 스위프트에 내장되어 있는 기본 타입인 Basic Type이라고 한다면 개발자가 마음대로 만들어 쓸 수 있는 타입인 Custom Type이 있다.그 중 하나에 대해 오늘 알아보려 한다.열거형 (Enumeration)타입 자체를 한정된 사례 안에서 정의할 수 있는 타입타입으로 만든 경우, 미리 정의해둔 타입의 케이스에서 벗어날 수 없으므로코드의 가독성과 안정성이 높아짐ex) 월, 화, 수, 목, 금, 토, 일 / 가위, 바위, 보 enum Weekday { case monday case tuesday case wednesday case thursday case friday case saturd..
프로토콜규약 / 협약최소한의 요구사항만 가지면 사용 가능특정 역할을 하기 위한 메소드, 프로퍼티, 기타 요구사항등의 청사진protocol MyProtocol { func doing() -> Int // 요구사항}프로토콜이 필요한 이유?상속의 경우 하나의 클래스만 상속이 가능( 다중 상속 불가능)상속의 경우 기본적인 상위클래스의 메모리 구조를 따라갈 수 밖에 없음(필요없는 속성/메서드도 상속됨)class Bird { var isFemale = true func layEgg() { if isFemale { print("새가 알을 낳는다.") } } func fly() { print("새가 하늘로 날아간다.") ..