본문 바로가기

ios35

[Swift] 프로퍼티 - 저장 프로퍼티, 연산 프로퍼티, 타입 프로퍼티, 프로퍼티 감시자 프로퍼티란? 클래스, 구조체, 열거형 등에 관련된 값을 의미한다. (변수나 상수, 함수 등이 어디에서 어떻게 쓰이느냐에 따라 용어가 조금씩 달라질 뿐이다.) 저장 프로퍼티 인스턴스의 변수 또는 상수를 의미한다. (값을 저장하는 가장 단순한 개념의 프로퍼티) 구조체와 클래스에서만 사용 가능하다. (열거형에서는 사용 X) var 키워드를 사용하면 변수 저장 프로퍼티, let키워드를 사용하면 상수 저장 프로퍼티이다. 이니셜 라이저 구조체와 클래스의 저장 프로퍼티는 이니셜라이저 부분에서 조금 차이가 난다. [구조체 저장 프로퍼티] 프로퍼티가 옵셔널이 아니더라도 모든 프로퍼티를 포함하는 이니셜라이즈를 자동으로 생성하여 제공한다. [클래스 저장 프로퍼티] 만약 클래스의 저장 프로퍼티가 옵셔널이 아니라면 꼭 기본값을.. 2023. 3. 29.
[Swift] 클로저 - 클로저란?, 후행 클로저, 클로저 표현 간소화 클로저란? 일정 기능을 하는 코드를 하나의 블록으로 모아놓은 것 함수는 클로저의 한 형태 -> 함수 = 이름이 있는 클로저 기본클로저 표현과 후행 클로저 표현 등 존재하며, 각 표현 내에서 가독성을 해치지 않는 선에서 표현을 생략하거나 축약할 수 있다. 기본 클로저 문법 { (매개변수 목록) -> 반환타입 in 실행 코드 } 주로 클로저는 함수의 전달인자로 많이 사용된다. 아래는 기본 클로저의 예시와 전달인자로 사용된 클로저이다. add와 substract라는 상수에 클로저를 할당하고 calculate라는 함수의 전달 인자로 method라는 클로저를 받아서 실행시켜 준다. 후행 클로저 후행 클로저는 함수나 메서드의 마지막 전달인자로 위치하는 클로저는 함수나 메서드의 소괄호를 닫은 후에 작성하는 것이다. .. 2023. 3. 20.
[IOS] [AutoLayout] Safe Area와 Layout Margin Safe Area란? 말 그대로 콘텐츠를 안전하게 보여줄 수 있는 영역을 의미한다. 기본적으로 제약조건을 설정하면 safe area에 적용된다. 루트뷰에서 뷰를 하나 생성해 constraints를 모두 0으로 설정한 모습을 보면 아래와 같다. 8 플러스의 경우 콘텐츠에 방해되는 요소가 없기 때문에 화면 모두가 safe area이지만 노치와 하단바 밑 화면 곡선이 등장한 모델부터는 하단과 상단의 약간의 빈틈이 생긴 것을 볼 수 있다. Layout Margin Layout Margin 이란 view와 콘텐츠 사이의 margin을 의미한다. 인터페이스 빌더에서 우리는 constraints를 설정할 때 margin옵션을 선택할 수 있다. constrain to margin이라고 써져있는 체크박스가 마진을 포함하.. 2023. 3. 15.
[Swift] 열거형 기본 - 열거형이란?, 원시값 열거형이란? 연관 항목들을 묶어서 표현할 수 있는 타입으로 정의된 값 외에 추가/수정이 불가하다. 즉 정해진 값만 속할 수 있다. 열거형을 사용할 때 제한된 선택지를 주고 싶을 때 정해진 값 외에는 입력받고 싶지 않을 때 예상된 입력 값이 한정되어 있을 때 기존 언어 열거형과 swift열거형의 차이 기존 언어 열거형 각 항목의 값이 정수 타입으로 기본 지정된다. 즉 정수 타입 값의 별칭으로 사용되었다. swift 열거형 각 항목이 그 자체로 고유의 값을 가진다. 예를 들어 다음과 같은 열거형이 존재한다고 하면 각 항목이 암시적으로 0,1,2,3.. 의 정수 값을 가지는 기존 언어와 다르게 각 항목 그대로 mon, tue,... 온전한 값을 가진다. enum Week{ case mon case tue ca.. 2023. 3. 15.