본문 바로가기

Swift공부6

[Swift] 프로퍼티 - 저장 프로퍼티, 연산 프로퍼티, 타입 프로퍼티, 프로퍼티 감시자 프로퍼티란? 클래스, 구조체, 열거형 등에 관련된 값을 의미한다. (변수나 상수, 함수 등이 어디에서 어떻게 쓰이느냐에 따라 용어가 조금씩 달라질 뿐이다.) 저장 프로퍼티 인스턴스의 변수 또는 상수를 의미한다. (값을 저장하는 가장 단순한 개념의 프로퍼티) 구조체와 클래스에서만 사용 가능하다. (열거형에서는 사용 X) var 키워드를 사용하면 변수 저장 프로퍼티, let키워드를 사용하면 상수 저장 프로퍼티이다. 이니셜 라이저 구조체와 클래스의 저장 프로퍼티는 이니셜라이저 부분에서 조금 차이가 난다. [구조체 저장 프로퍼티] 프로퍼티가 옵셔널이 아니더라도 모든 프로퍼티를 포함하는 이니셜라이즈를 자동으로 생성하여 제공한다. [클래스 저장 프로퍼티] 만약 클래스의 저장 프로퍼티가 옵셔널이 아니라면 꼭 기본값을.. 2023. 3. 29.
[Swift] 클로저 - 클로저란?, 후행 클로저, 클로저 표현 간소화 클로저란? 일정 기능을 하는 코드를 하나의 블록으로 모아놓은 것 함수는 클로저의 한 형태 -> 함수 = 이름이 있는 클로저 기본클로저 표현과 후행 클로저 표현 등 존재하며, 각 표현 내에서 가독성을 해치지 않는 선에서 표현을 생략하거나 축약할 수 있다. 기본 클로저 문법 { (매개변수 목록) -> 반환타입 in 실행 코드 } 주로 클로저는 함수의 전달인자로 많이 사용된다. 아래는 기본 클로저의 예시와 전달인자로 사용된 클로저이다. add와 substract라는 상수에 클로저를 할당하고 calculate라는 함수의 전달 인자로 method라는 클로저를 받아서 실행시켜 준다. 후행 클로저 후행 클로저는 함수나 메서드의 마지막 전달인자로 위치하는 클로저는 함수나 메서드의 소괄호를 닫은 후에 작성하는 것이다. .. 2023. 3. 20.
[Swift] 옵셔널 - 옵셔널이란?, 옵셔널 추출 옵셔널(Optional)이란? Optional은 값이 있을 수도 있고, 없을 수도 있음을 의미한다. 옵셔널이 아닌 값에 nil을 할당할 수 없는데, 이때 nil을 사용하기 위해서는 옵셔널을 사용해야 한다. 옵셔널 사용 이유 nil이 있을 수도 있다는 가능성을 명시적으로 표현 안전성을 높여줌 - 전달값이 옵셔널이 아니라면 nil체크 불필요 - 예외 상황을 최소화하는 안전한 코딩 옵셔널 선언 방법 일반적으로 물음표(?)를 붙여 옵셔널을 선언하지만 옵셔널의 명확한 표현 방법은 Optional 이다. var name:String? var name:Optional 두 선언 모두 사용가능하며 같은 뜻을 가진다. 이렇게 옵셔널로 선언한 변수에는 nil을 할당할 수 있게 된다. 하지만 옵셔널을 기존 변수처럼 연산을 하.. 2023. 3. 15.
[Swift] 함수 사용법 - 기본 함수 사용, 매개 변수 기본값, 전달 인자 레이블 기본 함수 사용법 func 함수 이름(매개변수 이름 : 매개변수 타입) -> 반환 타입{ 함수 구현부 return 반환값 } 다음과 같은 형태로 사용하며 매개 변수가 없을 경우 빈 괄호()를 사용한다. 반환 값이 없을 시에는 반환 타입을 Void로 작성하거나 func 함수이름(매개변수){ } 처럼 반환 타입을 생략할 수 있다. 기본값이 있는 매개 변수 매개 변수에 기본값을 지정해주어 해당 매개 변수의 값이 전달되지 않았다면 기본값을 사용한다. 기본값이 없는 매개변수는 대체로 함수에서 중요한 값을 전달할 가능성이 높기 때문에 기본값이 없는 매개변수를 앞에 작성하고 기본값이 있는 매개 변수는 뒤에 작성해 준다. func 함수이름(매개 변수1:타입, 매개 변수2:타입 = 기본값) -> 반환 타입{ 함수 구현부.. 2023. 3. 14.