본문 바로가기
[iOS]/[TIL]

[TIL]#7 - Swift 내가 이해 한 Delegate

by Yong9_9 2023. 1. 6.

오늘 한 일🤓

  • 프로그래머스 문제 풀이 블로그 게시
  • Delegate패턴 이해

새롭게 알게 된 내용📖

  • 먼저 내가 이해한 방식대로 Delegate 패턴을 설명해보겠다.

Delegate란 어떤 객체가 해야 할 일을 부분적으로 대신 사용해 주는 것이라고 이해했다.

Delegate 사용

다음과 같이 ViewController에 UITextFieldDelegate 프로토콜을 채택하면

위 링크에 있는 func과 같은 기능들을 Delegate패턴을 이용하여 사용 할 수 있게 된다.

 

Delegate 선언

다음과 같이 viewDidLoad()에 누가 UITextField(input) 객체의 기능을 대신 처리 할지 선언한다.

input.delegate = self
  • 위와 같이 선언 한다면 UITextField(input) 객체의 기능을 self (ViewController) 가 처리한다는 것을 선언 한 것.
  • 따라서 VeiwController에서 UITextFieldDelegate 프로토콜의 메소드를 구현 할 수 있다.

 

Delegate 활용 사례

위와 같이 ViewController에서 UITextFieldDelegate 프로토콜에 있는 메소드인 textFieldShouldReturn을 구현 할 수 있게 되었다.

 

Delegate 패턴 한 줄 요약

프로토콜과 Delegate패턴을 이용하면 다른 객체에서 사용되는 메소드를 현재 클래스에서 부분적으로 채택하여 사용 할 수 있다.

 

일기☁️

API와 JSON, Delegate가 이해되지 않아 멘붕이 왔다가 천천히 코드를 읽다보니 Delegate 패턴에 대해 조금이나마 이해 할 수 있었다. 자신감이 떨어졌다가 다시 어느정도 회복했다. 하나하나 배워나가는 재미가 쏠쏠하다⭐️ 빨리 빨리 스텝업 하고 싶어요🤩

 

'[iOS] > [TIL]' 카테고리의 다른 글

[TIL]#9 - Swift 업비트 API [시세 현재가 조회]  (1) 2023.01.11
[TIL]#8 - Swift extension(확장)  (1) 2023.01.11
[TIL]#6 - Swift Segue  (0) 2023.01.04
[TIL]#5 - Swift 소수점 출력  (0) 2023.01.01
[TIL]#4 - Swift 클래스와 구조체  (0) 2022.12.29

댓글