TIL

[Sesac IOS] 18일차 TIL

18일차 수업을 듣고 새로 배운 것과 공부할 것을 정리한 글입니다.


Learned

프로퍼티 옵저버

  • 주로 저장 프로퍼티에 사용하고 프로퍼티를 관찰하다가 값이 변경되려고 할때 호출된다.
    (연산 프로퍼티와 함께 쓸 수 없다.)
  • willSet : 값이 변경되기 전에 호출, newValue 매개변수로 새로운 값을 전달받는다.
  • didSet : 값이 변경된 후에 호출, oldValue 변수에 기존 값이 저장된다.

인스턴스 / 타입(static, class) 메서드

  • 인스턴스 메서드에서는 인스턴스 및 타입 프로퍼티를 모두 사용할 수 있지만,
    타입 메서드에서는 타입 프로퍼티만 사용 가능하다. (타입 이름 생략 가능)
  • 메소드에 class 키워드를 사용해서 수퍼 클래스 (부모 클래스)의 타입 메서드를
    서브 클래스에서 재정의할 수 있게 만들 수 있다.
  • 구조체의 인스턴스 메서드에서 인스턴스 프로퍼티의 값을 변경할 수 없다.
    함수에 mutating 키워드를 사용하면 가능하다.

 UITableView

  • 테이블뷰는 일관된 UI와 UX를 제공하기 위해 프로토콜을 통해 미리 정해진 기능을 제공한다.
  • 테이블뷰를 사용하려면 이 프로토콜을 conform해서 필요한 기능을 정의해야한다.
  • 테이블뷰는 UITableViewDataSource와 UITableViewDelegate 프로토콜을 제공하며
    cellForRowAt, didSelectRowAt 등의 메소드를 정의해서 기능을 사용할 수 있다.
  • 테이블뷰는 Cell을 통해 화면을 구성하기 때문에 다른 UI 객체를 담을 수 없다.

 

Learning

  • COW (Copyed-On-Write) 알아보기

 


이상입니다.

'TIL' 카테고리의 다른 글

[Sesac IOS] 20일차 TIL  (0) 2022.07.29
[Sesac IOS] 19일차 TIL  (0) 2022.07.28
[Sesac IOS] 17일차 TIL  (0) 2022.07.26
[Sesac IOS] 15일차 TIL  (0) 2022.07.22
[Sesac IOS] 13~14일차 TIL  (0) 2022.07.22