iOS

iOS/Swift 기초

[ Swift 기초 ] 프로퍼티

안녕하세요 공공돌🧸 입니다. 프로퍼티에 대해 정리 해봤습니다. 1. 프로퍼티 1. 프로퍼티의 종류 인스턴스 저장 프로퍼티 타입 저장 프로퍼티 인스턴스 연산 프로퍼티 타입 연산 프로퍼티 지연 저장 프로퍼티 2. 정의와 사용 프로퍼티는 구조체, 클래스, 열거형 내부에 구현할 수 있습니다. 다만 열거형 내부에는 연산 프로퍼티만 구현할 수 있습니다. 연산 프로퍼티는 var로만 선언할 수 있습니다. 연산프로퍼티를 읽기전용으로는 구현할 수 있지만, 쓰기 전용으로는 구현할 수 없습니다. 읽기전용으로 구현하려면 get 블럭만 작성해주면 됩니다. 읽기전용은 get블럭을 생략할 수 있습니다. 읽기, 쓰기 모두 가능하게 하려면 get 블럭과 set블럭을 모두 구현해주면 됩니다. set 블럭에서 암시적 매개변수 newValu..

iOS/Swift 기초

[ Swift 기초 ] 다양한 클로저 표현

안녕하세요 공공돌🧸 입니다. 다양한 클로저 표현에 대해 정리 해봤습니다. 1. 다양한 클로저 표현 클로저는 아래 규칙을 통해 다양한 모습으로 표현될 수 있습니다. 후행 클로저 : 함수의 매개변수 마지막으로 전달되는 클로저는 후행클로저(trailing closure)로 함수 밖에 구현할 수 있습니다. 반환타입 생략 : 컴파일러가 클로저의 타입을 유추할 수 있는 경우 매개변수, 반환 타입을 생략할 수 있습니다. 단축 인자 이름 : 전달인자의 이름이 굳이 필요없고, 컴파일러가 타입을 유추할 수 있는 경우 축약된 전달인자 이름($0, $1, $2...)을 사용 할 수 있습니다. 암시적 반환 표현 : 반환 값이 있는 경우, 암시적으로 클로저의 맨 마지막 줄은 return 키워드를 생략하더라도 반환 값으로 취급합니..

iOS/Swift 기초

[ Swift 기초 ] 클로저 기본

안녕하세요 공공돌🧸 입니다. 클로저 기본에 대해 정리 해봤습니다. 1. 클로저 기본 1. 클로저 클로저는 실행가능한 코드 블럭입니다. 함수와 다르게 이름정의는 필요하지는 않지만, 매개변수 전달과 반환 값이 존재 할 수 있다는 점이 동일합니다. 함수는 이름이 있는 클로저입니다. 일급객체로 전달인자, 변수, 상수 등에 저장 및 전달이 가능합니다. 2. 기본 클로저 문법 클로저는 중괄호 { }로 감싸져있습니다. 괄호를 이용해 파라미터를 정의합니다. -> 을 이용해 반환 타입을 명시합니다. "in" 키워드를 이용해 실행 코드와 분리합니다. { (매개변수 목록) -> 반환타입 in 실행 코드 } 3. 클로저 사용 // sum이라는 상수에 클로저를 할당 let sum: (Int, Int) -> Int = { (a:..

iOS/Swift 기초

[ Swift 기초 ] 클래스 vs 구조체/열거형

안녕하세요 공공돌🧸 입니다. 클래스와 구조체/열거형 비교에 대해 정리 해봤습니다. 1. 클래스 vs 구조체/열거형 클래스는 참조 타입, 열거형과 구조체는 값 타입이라는 것이 가장 큰 차이입니다. 클래스는 상속이 가능하지만, 열거형과 구조체는 상속이 불가능 합니다. 1. 값 타입과 참조 타입 비교 값 타입(Value Type) : 데이터를 전달 할 때 값을 복사하여 전달합니다. 참조 타입(Reference Type) : 데이터를 전할 할 때 값의 메모리 위치를 전달합니다. struct ValueType { var property = 1 } class ReferenceType { var property = 1 } // 첫 번째 구조체 인스턴스 let firstStructInstance = ValueType(..

iOS/Swift 기초

[ Swift 기초 ] 열거형

안녕하세요 공공돌🧸 입니다. 열거형에 대해 정리 해봤습니다. 1. 열거형 1. 열거형 Swift 열거형은 다른 언어의 열거형과 많이 다릅니다. 강력한 기능을 지니고 있어 잘 알아두고 사용하면 좋습니다. 유사한 종류의 여러 값을 한 곳에 모아서 정의한 것입니다. 예) 요일, 월, 계절 등 enum 자체가 하나의 데이터 타입으로, 대문자 카멜케이스를 사용하여 이름을 정의합니다. 각 case는 소문자 카멜케이스로 정의합니다. 각 case는 그 자체가 고유의 값입니다.(각 case에 자동으로 정수값이 할당되지 않음) 각 case는 한 줄에 개별로도, 한 줄에 여러개도 정의할 수 있습니다. enum 이름 { case 이름1 case 이름2 case 이름3, 이름4, 이름5 // ... } // 예제 enum Na..

iOS/Swift 기초

[ Swift 기초 ] 클래스

안녕하세요 공공돌🧸 입니다. 클래스에 대해 정리 해봤습니다. 1. 클래스 1. 클래스란? 클래스는 참조(reference) 타입입니다. 타입이름은 대문자 카멜케이스를 사용하여 정의합니다. Swift의 클래스는 다중 상속이 되지 않습니다. 2. 클래스 문법 정의 : "class" 키워드 사용 class 이름 { /* 구현부 */ } 프로퍼티 및 메서드 구현 class Sample { // 가변 프로퍼티 var mutableProperty: Int = 100 // 불변 프로퍼티 let immutableProperty: Int = 100 // 타입 프로퍼티 static var typeProperty: Int = 100 // 인스턴스 메서드 func instanceMethod() { print("instance..

Sheep1sik
'iOS' 카테고리의 글 목록 (5 Page)