Jetpack Compose basics – 상태 보존하기

지금까지 만든 앱에는 한가지 문제가 있다. 기기에서 앱을 실행하고 온보딩 스크린에서 “Continue” 버튼을 눌러 목록으로 진입한 뒤, 기기를 회전하면 다시 온보딩 스크린이 나온다. remember 함수는 Composition 내에서 컴포저블 객체들이 유지될때만 올바르게 동작한다. 화면이 회전 되었을 때는 Activity가 재시작되기 때문에 모든 더보기…

Jetpack Compose basics – 성능 좋은 목록 만들기

좀 더 현실적인 이름 목록을 만들어보자! 지금까지는 Column에 직접만든 greeting 함수를 사용하여 아이템을 2개만 나타냈었다. 하지만 만약 1000개 또는 그 이상을 다뤄야 한다면 어떨지 상상해보자. Greetings에 있는 매개변수 기본 목록 값을 변경하고, 목록의 사이즈 및 내용을 람다 표현식으로 채울 수 더보기…

Jetpack Compose basics – State Hoisting(상태 끌어올리기)

컴포저블 함수에서 다양한 함수들에 의해 불러와 지거나 수정되어지는 상태(state)는 공통적인 부모내에 존재한다. 이러한 처리를 상태 끌어올리기(state hoisting) 이라고 한다. hoist의 의미는 끌어 올려지는 것을 의미한다.(lift or elevate) 상태를 끌어올려 만들면 중복되는 상태 및 버그를 피할 수 있고, 컴포저블 함수의 재사용성과 더보기…

Jetpack Compose basics – Compose에서의 상태(State)

Compose의 상태  지금까지는 정적인 레이아웃을 만들었지만 이제 사용자 액션에 반응하도록 만들어 보자. 어떻게 버튼을 클릭가능하게 만들고 아이템의 사이즈를 조절할 수 있는지 알기 전에, 각각의 아이템이 확장되거나 축소되는 상태값을 어딘가에 저장해야만 한다. 앞에서 만든 Greeting 함수별로 이러한 값을 가질 필요가 있기 더보기…

Jetpack Compose basics – 수정 및 재사용

UI 수정하기 Greeting 함수의 배경색을 변경해보자. ‘Text’ composable 함수를 ‘Surface’ composable 함수로 감싸고, Surface의 색상을 MaterialTheme.colors.primary로 변경해보자. @Composable private fun Greeting(name: String) { Surface(color = MaterialTheme.colors.primary) { Text (text = “Hello $name!”) } } Surface로 감싸진 내부의 컴포넌트은 배경색이 다음과 더보기…

Jetpack Compose basics – Compose 시작하기

Jetpack Compose란? Jetpack Compose는 UI 개발을 단순화하도록 설계된 최신 툴킷으로, 간결한 반응형 프로그래밍 모델과 Kotlin 프로그래밍 언어의 쉬운 사용성을 결합한다. 프로젝트에 대한 Compose 설정은 공식문서를 참조하자. Compose는 선언형 UI 툴킷이다. 컴포즈는 완전히 선언형 프로그래밍(Declarative programming) 방식이다. App은 정적인 데이터만을 표현하지 않는다. 더보기…

Github에서 main(master) 브랜치에 merge 하는 실수를 방지하기

PR 머지 실수를 사전에 방지하기 Github > Repository로 이동 > Settings > branches탭 클릭 위의 경로로 이동하면 다음과 같은 화면을 확인할 수 있다. 기본 브랜치(Default branch)를 master가 아닌 다른 브랜치로 변경 하자  예) develop 기본 브랜치는 리파지토리내에서 기본값으로 설정되는 브랜치를 더보기…

암호화와 관련된 키워드 공부하기

Encryption/Decryption 아직 암호화되지 않은 메시지를 평문(plaintext)이라한다. 암호화 된 메시지는 암호문(ciphertext)라고 한다. 평문과 암호문 사이에서는 두개의 기능이 존재한다. 바로 암호화와 복호화다. 암호화(Encryption)는 평문을 어떤 암호화 함수를 통해 암호문으로 바꾸는 것을 말한다. 복호화(Decryption)은 암호문을 어떤 복호화 함수를 통해 평문으로 바꾸는 것을 말한다. 더보기…

글쓴이 Charlezz,