[Compose Internals] @DisallowComposableCalls
Compose 어노테이션 중에는 @DisallowComposableCalls라는 어노테이션이 있다. 이 어노테이션은 함수 내에서 Composable 함수의 호출이 발생하는 것을 방지하기 위해 사용된다. Compose Runtime에서는 Composable 함수 간 호출로 UI 트리 구조를 생성하는데, 이와 같이 Composable 호출을 방지하는 어...
Compose 어노테이션 중에는 @DisallowComposableCalls라는 어노테이션이 있다. 이 어노테이션은 함수 내에서 Composable 함수의 호출이 발생하는 것을 방지하기 위해 사용된다. Compose Runtime에서는 Composable 함수 간 호출로 UI 트리 구조를 생성하는데, 이와 같이 Composable 호출을 방지하는 어...
이번 장에서는 Composable 함수 타입에 대해 개념적으로 다룬다. @Composable 어노테이션은 컴파일 시점에서 함수의 타입을 효과적으로 바꾼다. Composable 함수 타입을 아래와 같이 다양한 관점에서 살펴보자. 호출 컨텍스트 Compose Runtime의 고급 기술을 처리하기 위해 필요한 값들이 담겨있는 Co...
개발을 하면 “사이드 이펙트(Side Effect)”라는 말을 종종 사용하곤 한다. 사이드 이펙트가 뭘까? 사이드 이펙트란(Side Effect)? 함수(또는 코드)가 자신의 반환값 외에 외부 상태를 변경하거나, 관찰 가능한 변화를 일으키는 것 즉, 순수 함수가 아닌 행동을 일컫는다.(ex. 전역 변수 변경, 네트워크 호출, 로그 출력 등) ...