일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 열거형
- 패캠챌린지
- 패스트캠퍼스후기
- Realm
- 기본문법
- TableView
- 독학
- SeSAC
- swift
- ios
- switch
- Threading
- userDefaults
- xcode
- 직장인자기계발
- 30개프로젝트로배우는iOS앱개발withSwift초격자패키지Online
- 옵셔널 체이닝
- RawValue
- 문자열 보간법
- 함수
- Optional Chaining
- 패스트캠퍼스
- beginAsyncWrite
- enum
- cancelAsyncWrite
- Git
- 인스펙터
- Background
- 직장인인강
- 프로퍼티 관찰자
- Today
- Total
목록직장인인강 (50)
아삭아삭 iOS 개발
■ 초기화 (Initialization) 클래스 구조체 또는 열거형의 인스턴스를 사용하기 위한 준비 과정 인스턴스의 프로퍼티마다 초기값을 설정해주기 위해 사용 새 인스턴스를 사용하기 전, 필요한 설정을 해주기 위해 사용 → 프로퍼티 기본값을 지정하기 어려운 경우, 초기화(initializer)를 통해 인스턴스가 가져야 할 초기값을 전달할 수 있음 init (매개변수: 타입, ...) { // 프로퍼티 초기화 // 인스턴스 생성시 필요한 설정을 해주는 코드 } ■ 생성자(이니시얼라이져) 인스턴스의 초기화를 담당하는 것 클래스나 구조체 열거형 안에 정의할 수 있음 매개변수로 전달받지 않고 생성자 안에서 프로퍼티에 값을 대입해 초기화도 가능 프로퍼티의 초기값이 필요 없을 경우, init 전 변수정의시 옵셔널을..
swift에는 클래스와 구조체 타입이 공존하고 있음 ■ 클래스 전통적인 OPP관점에서의 클래스 단일 상속 참조 타입(reference type) Apple framework 대부분의 큰 뼈대는 모두 클래스로 구성되어 있음 타입을 정의하는 것이기 때문에 타입이름은 파스칼 표기법을 사용하여 정의(즉, 대문자로 시작) 바디 내부의 프로퍼티와 메서드는 소문자를 사용하여 정의 타입내에 들어가 있는 변수는 프로퍼티, 함수는 메서드라고 이해할 수 있음 구조체 바디내 포함 가능한 선언 종류 → 가변 프로퍼티, 불변 프로퍼티, 타입 프로퍼티, 인스턴스 메서드, 타입 메서드, 초기화 구문, 초기화 해제 구문, 서브 스크립트, 타입 별칭, 다른 클래스 구조체, 행위자, 열거형 선언 등 (단, 프로토콜 선언은 포함 불가) c..
swift에는 클래스와 구조체 타입이 공존하고 있음 ■ 구조체 C언어 등의 구조체보다 다양한 기능 수행 가능 상속 불가 값 타입(value type) Swift 대부분의 큰 뼈대는 모두 구조체로 구성되어 있음 타입을 정의하는 것이기 때문에 타입이름은 파스칼 표기법을 사용하여 정의(즉, 대문자로 시작) 바디 내부의 프로퍼티와 메서드는 소문자를 사용하여 정의 타입내에 들어가 있는 변수는 프로퍼티, 함수는 메서드라고 이해할 수 있음 구조체 바디내 포함 가능한 선언 종류 → 가변 프로퍼티, 불변 프로퍼티, 타입 프로퍼티, 인스턴스 메서드, 타입 메서드, 초기화 구문, 서브 스크립트, 타입 별칭, 다른 구조체, 클래스, 행위자, 열거형 선언 (단, 초기화 해제 구문, 프로토콜 선언은 포함 불가) ■ 구조체 특징 ..
옵셔널 값을 추출(optional unwrapping) 방법에는 크게 2가지 명시적 해제와 묵시적 해제가 존재합니다. 보다 세분화해서 살펴보면 각각 강제 해제/비강제 해제, 비교연산자 이용 해제/! 이용 해제 등으로 작게 4가지 방법을 사용할 수 있습니다. 방법 하나하나 예시를 들어가며 살펴보겠습니다. ※ 주의! 본 게시물은 개인 공부 기록용이므로 내용에 오류가 있을 수 있습니다. ■ 명시적 해제 1-1. 강제 해제 (force unwrapping) 옵셔널로 선언된 변수 뒤에 ‘!’를 붙여서 적용 '!'는 옵셔널 강제 해제 연산자 옵셔널 값을 추출하는 위험한 방법 → 값이 nil인 옵셔널을 강제로 해제할 경우, 값이 없으므로 런타임 오류가 발생하며 프로그램 강제종료될 가능성 존재 var someValue..