plzy의 개발 블로그

[Compose] compose란 무엇인가? 본문

Android

[Compose] compose란 무엇인가?

plzyhappy 2022. 3. 25. 08:41

여러분은 작년까지만 해도 xml ui를 많이 짜왔을 것입니다.

지금 취업 우대사항을 보면 compose 활용능력이 있는걸 볼 수 있는데,

과연 compose란 무엇인지 살펴보도록 합니다.

Compose 란

기존의 UI 문제점을 해결하기 위해 등장했습니다.
기존에는 만약 버튼이 재활용될려면

  1. XML을 만들고
  2. 커스텀뷰 속성 선언 뒤
  3. 코틀린 혹은 자바로 코드를 작성해야하는 불필요한 작업을 했었습니다.
    이러한 과정은 너무 귀찮기 때문에 compose 즉 선언형 UI 가 등장했습니다.

기존의 코드에는

textView.text="Hello World"

명령하듯이, 써내려가는 방식입니다.

그래서 명령형 UI 라고 부릅니다.

선언적 UI는

Text("hello world") 

선언하듯이 코드를 써내려가는 방식입니다.
그래서 선언형 UI 라고 부릅니다.

명령형 UI에 대비 선언형 UI의 장점에는 여러가지가 있습니다.

 

  1. 코드를 재활용할 수 있으므로 생산성이 크게 낮아집니다.
  2. 불필요한 보일러 플레이트 코드가 줄어듭니다.
  3. 직관적인 코드로 UI를 만들 수 있음
  4. preview 를 활용하여 미리보기가 지원됩니다.

다음 블로그에는 compose의 속성에는 무엇이 있는지 알아보도록 하겠습니다