반응형
Protocol
Int Double 등등도 하나의 스트럭트이다. 아래의 빨간부분은 프로토콜이다.
어려운 번역으로는 규약이다. -> 지켜야할 약속이라고 생각해보자. (코딩할 때 꼭 구현되어야하는 메소드나 프로퍼티의 목록)
어떤 서비스를 이용할 때 해야할 일들
뮤직 서비스에서는 아이디 생성, 결제 등등 해야할 일들이 있다.
고급프로그래밍을 하려면 꼭 해야할 작업이다.
아래의 프로토콜도 한번 보자. 이 프로토콜은 커스텀스트링컨버터블을 하려면 아래 저 디스크립션이라는 것을 해줘야한다는 뜻
지난번 도전과제에서 했던 스트럭트를 보자
CustomStringConvertible 은 description을 완성해야한다. 만약 프로토콜을 충족시키지 않으면 경고메세지가 생성된다.
원래 데이터를 우리가 볼수있도록 출력하면. 데이터를 입력한 구조로 보여진다.
우리가 보기 편하기 위해서는 사람이 쓰는 언어로 볼 수 있도록 편의대로 구사할 수가 있다.
//description 설정 X 기본
print(lec1)
//Lecture(name: "iOS Basic", instructor: "Jason", numOfStudent: 5)
//description 설정했을 경우
print(lec1)
//Title: iOS Basic, instructor: Jason
반응형
'모바일앱 > Swift' 카테고리의 다른 글
클래스, 언제 클래스? 언제 스트럭트? (0) | 2021.10.16 |
---|---|
메소드 개념 ( + extension) (0) | 2021.10.14 |
프로퍼티 vs 메소드 (0) | 2021.10.14 |
프로퍼티 개념 (0) | 2021.10.13 |
Struct만들기 도전과제 (0) | 2021.10.12 |
구조체와 클래스의 차이점 (0) | 2021.10.11 |
Collection - Closure, Capturing Values (0) | 2021.10.10 |
Collection - Set (0) | 2021.10.10 |