블로그
RSS이예인이 만들고 운영하며 배운 것을 적습니다.
프로퍼티 감시자가 호출되는 경우
배열 프로퍼티의 didSet은 배열 교체, 요소 교체, 요소의 프로퍼티 변경 세 경우 모두 호출된다.
UITextView의 intrinsicContentSize
UITextView는 isScrollEnabled가 false일 때만 intrinsicContentSize를 가진다.
Firebase currentUser 에러 해결방법 in iOS Swift
Firebase Auth의 currentUser가 비어 있는 이유와, 리스너로 로그인 상태를 받는 해결법.
Generics in Documents
Swift 공식 문서의 제네릭 내용을 예제 코드와 함께 정리한 글
Property Requirements of Protocol
Swift 프로토콜의 get, get set 프로퍼티 요구사항 구현 방식 정리.
공식문서 Self.Element 분석
Array의 map이 Self.Element를 쓰는 이유를 Sequence 코드로 확인한 글.
클래스 초기화 안전검사
Swift 클래스 초기화 때 컴파일러가 하는 안전검사 4가지
프로퍼티
Swift 저장·연산·타입 프로퍼티와 KeyPath, 프로퍼티 옵저버 요약.
UITextFieldDelegate 순서
UITextFieldDelegate 메서드가 호출되는 순서를 정리한다
Closure 1
Swift 클로저의 기본형, 후행 클로저, 간소화 형태를 코드로 정리
Type Casting
Swift 타입 캐스팅의 타입 확인과 업캐스팅·다운캐스팅 정리
포인터 문제
C 변수 선언별 그 주소를 담는 포인터 변수의 타입
const int * vs int * const
C에서 const int *와 int *const 포인터의 차이
ValueListenableBuilder
값이 바뀐 위젯만 리빌드하는 ValueListenableBuilder 메모.
원하는 객체 hash 오버라이딩
Dart에서 ==와 hashCode를 오버라이딩하는 방법을 보여준다



