반응형 전체 글5 [오늘의 코드 조각] [2-2] Compose 핵심 원리: 상태(State)와 동적 UI 안녕하세요, '생각하는 개발자'입니다.지난 포스팅에서는 Text, Button 등을 Column과 Row에 배치하여 화면의 뼈대를 만드는 법을 배웠습니다. 하지만 지금까지 만든 화면은 멈춰있는 그림과 같았죠. 버튼을 눌러도 아무런 반응이 없었습니다.이번 시간에는 Compose 앱에 생명을 불어넣는 마법, 바로 **상태(State)**에 대해 배울 겁니다. 이 개념을 이해해야만 사용자의 행동에 따라 숫자가 올라가고, 글자가 바뀌는 '진짜 앱'을 만들 수 있습니다.1. UI가 스스로 변하는 원리: 재구성(Recomposition)기존 안드로이드(XML) 방식에서는 버튼을 누르면 우리가 직접 "텍스트뷰의 글자를 '짠'으로 바꿔라!"라고 명령해야 했습니다. (textView.text = "짠")하지만 Compo.. 2025. 12. 21. [오늘의 코드 조각] [2-1] Compose 기본 UI와 레이아웃 안녕하세요, '생각하는 개발자'입니다.Part 1에서 우리는 코틀린이라는 언어를 통해 컴퓨터와 대화하는 법을 배웠습니다. 이제 그 언어를 사용해 사용자의 눈에 보이는 '화면'을 직접 그려볼 시간입니다.Jetpack Compose의 세계에서는 모든 UI 요소가 Composable 함수라는 '레고 블록'으로 만들어집니다. 우리는 이 블록들을 조립하여 원하는 화면을 구성하게 됩니다. 이번 시간에는 가장 기본적이면서도 중요한 UI 블록들과, 이 블록들을 원하는 위치에 배치하는 방법에 대해 알아보겠습니다.4.1. Composable 함수: UI를 그리는 레고 블록Composable 함수는 화면의 일부를 그리는 특별한 함수입니다. 일반 함수와 구분하기 위해, 함수 위에 @Composable이라는 주석(Annotat.. 2025. 8. 27. [오늘의 코드 조각] [1-3] 코틀린 객체지향 프로그래밍 안녕하세요, '생각하는 개발자'입니다.지난 시간에는 변수, 함수 등 코드를 구성하는 가장 작은 단위들을 배웠습니다. 하지만 앱이 복잡해지면 수많은 변수와 함수들이 뒤죽박죽 섞여 관리하기 어려워지겠죠.그래서 우리는 **객체지향 프로그래밍(Object-Oriented Programming, OOP)**이라는 강력한 설계 방법을 사용합니다. 말이 조금 어렵게 들리지만, 사실은 **'세상의 사물을 흉내 내어 코드를 정리하는 방법'**이라고 생각하면 쉽습니다. 이 개념을 이해하면 훨씬 더 체계적이고 재사용하기 좋은 코드를 작성할 수 있습니다. 3.1. 클래스와 객체: 붕어빵 틀과 붕어빵OOP의 가장 핵심적인 두 가지 개념은 바로 **클래스(Class)**와 **객체(Object)**입니다.클래스(Class): 객.. 2025. 8. 26. [오늘의 코드 조각] [1-2] Jetpack Compose를 위한 코틀린 핵심 문법 안녕하세요, '생각하는 개발자'입니다.첫 번째 포스팅에서 "Hello, Compose!"를 성공적으로 화면에 띄워보았습니다. 하지만 아직은 우리가 직접 코드를 작성했다기보다, 안드로이드 스튜디오가 만들어준 코드를 실행해 본 것에 가깝죠.이제는 우리 손으로 직접 앱의 동작을 만들기 위해, 안드로이드의 공식 언어인 **코틀린(Kotlin)**과 친해져야 합니다. 마치 외국인 친구와 대화하기 위해 기본적인 단어와 문법을 배우는 것과 같아요. 코틀린의 모든 것을 알 필요는 없습니다. 딱 Jetpack Compose를 다루는 데 필요한, 가장 중요하고 실용적인 문법만 골라서 알아보겠습니다. 2.1. 변수와 함수: 데이터와 행동의 기본프로그래밍은 결국 '데이터'를 '어떤 행동'으로 처리하는 과정입니다. 코틀린에서는.. 2025. 8. 25. [오늘의 코드 조각] [1-1] Modern Android 개발 첫걸음 안녕하세요, '생각하는 개발자'입니다.오늘부터 '오늘의 코드 조각: 개발자의 성장 일지'라는 이름으로, 저의 개발 학습 여정을 기록하고 공유하고자 합니다. 이 블로그의 첫 번째 큰 주제는 바로 **'안드로이드 앱 개발'**입니다. 단순히 기능을 따라 만드는 것을 넘어, 왜 그렇게 만들어야 하는지 함께 고민하고 성장하는 공간이 되었으면 합니다.그 위대한 여정의 첫걸음, 지금 바로 시작하겠습니다. 1.1. 왜 '안드로드로 시작하는가?세상에는 수많은 프로그래밍 분야가 있는데, 왜 우리는 '안드로이드 앱 개발'로 이 여정을 시작할까요? 몇 가지 중요한 이유가 있습니다. 가장 확실한 성취감: 내가 작성한 코드가 눈에 보이지 않는 서버에서 돌아가는 것과, 지금 내 손에 들린 스마트폰 화면에서 바로 터치하고 움직여보.. 2025. 8. 24. 이전 1 다음 반응형