profile
틀린 부분을 지적받기 위해 업로드합니다.

Parameter vs CompositionLocal: 언제 무엇을 사용해야 하는가?

Composable 내부에서 액티비티의 메서드 호출이 필요한 상황은 종종 발생한다.예를 들어 뒤로가기, 권한 요청, 외부 앱 호출 등 시스템과 상호작용해야 하는 경우가 있다.이를 해결하는 방법은 대표적으로 두 가지가 있을 것이다. 인자를 통해 Activity에서 내려받

2025년 9월 21일
·
0개의 댓글
·
post-thumbnail

UI State를 활용하면 상태 패턴인가?: UI State, StateHolder 그리고 상태 패턴의 State와의 차이

Jetpack Compose를 공부하며, State Holder라는 개념에 대해 다루게 되었다. 이 과정에서 State Holder는 UI State와 무엇이 다른지 혼동되었다.State Holder란 UI에 표시될 상태와 로직의 묶음이다. 이를 별도로 분리함으로써,

2025년 9월 16일
·
2개의 댓글
·

Jetpack Compose 이미지를 테스트하는 3가지 방법(contentDescription, testTag, Semantics)

Jetpack Compose에서는 UI 테스트를 위해 ComposeTestRule을 사용해볼 수 있다. onNodeWithText를 통해 원하는 컴포저블을 찾고 performClick을 통해 이벤트를 발생시킬 수 있다. 이 글에서는 Image 컴포저블이 우리가 원하는 이미지를 잘 표시하고 있는지 체크할 수 있는 3가지 방법을 소개한다. 테스트 준비 방...

2025년 9월 4일
·
2개의 댓글
·
post-thumbnail

Android Activity (공식 문서 Introduction to activities 번역)

Activity 클래스는 안드로이드 앱의 핵심적인 구성 요소이다. Activity들이 어떻게 실행되고 조합되느냐가 안드로이드 애플리케이션의 기본 구성이 된다.안드로이드 시스템은 main() 메서드를 통해 앱들을 실행하는 프로그래밍 패러다임과는 다른 방식으로 작동한다.

2025년 7월 6일
·
0개의 댓글
·

commit() vs commitAllowingStateLoss() vs commitNow()

DialogFragment를 dismiss하는 방법은 3가지가 존재한다. dismiss, dismissAllowingStateLoss, dismissNow가 그것이다.DialogFragment는 Fragment의 하위 타입이기 때문에 FragmentTransaction

2025년 5월 18일
·
0개의 댓글
·

addToBackStack, setReorderingAllowed

addToBackStack는 백 스택에 해당 트랜잭션을 추가하는 메서드이다. 추가된 트랜잭션은 commit된 이후에도 저장되며, 이후 스택에서 꺼내어 사용할 수 있다.트랜잭션을 스택에서 꺼내며 작업을 되돌리려면 setReorderingAllowed 메서드를 통해 추가할

2025년 5월 18일
·
0개의 댓글
·

코틀린 공식문서 Reflection 번역

리플렉션은 프로그램 구조 내부를 동적으로(런타임 때) 들여다볼 수 있는 언어 혹은 라이브러리 기능의 집합이다.함수형, 반응형 프로그래밍에서는 사용할 함수, 프로퍼티를 동적으로(런타임 시에) 결정할 일이 많다. 따라서 리플렉션(예를 들어, 런타임에 1급 시민인 프로퍼티

2025년 4월 22일
·
0개의 댓글
·

호출 시 인자 중 어느 하나라도 이름을 명시하고 나면 혼동을 막기 위해 그 뒤에 오는 모든 인자는 이름을 꼭 명시해야 한다?

다음은 Kotlin in Action 책 내용이다.호출 시 인자 중 어느 하나라도 이름을 명시하고 나면 혼동을 막기 위해 그 뒤에 오는 모든 인자는 이름을 꼭 명시해야 한다.그런데 이를 직접 실험해보니, 컴파일 에러가 나지 않았다. 그래서 왜 해야 한다고 말했는지 궁금

2025년 3월 20일
·
0개의 댓글
·

단위 테스트(Unit Test)

단위 테스트란 소스 코드의 특정 모듈(함수, 클래스 등)이 의도된 대로 동작하는지를 검증하는 테스트를 말한다.JUnit과 같은 도구를 활용해 프로덕션 코드를 작은 단위로 나눠 테스트할 수 있다.빠르고 독립적인 테스트단위 테스트의 목적은 프로그램을 작은 단위로 나누고 고

2025년 3월 17일
·
0개의 댓글
·
post-thumbnail

왜 getter, setter를 사용해야 할까?

\*getter, setter를 두지 않고 그냥 필드를 public으로 선언하면 되지 않나요? 왜 그렇게 하지 않을까요?\*위 질문에 대한 답을 하기 위해 알아보았다.자바에서 필드의 값을 얻거나 필드를 초기화하기 위한 함수이다.Kotlin에서는 자동으로 생성된다.get

2025년 3월 7일
·
0개의 댓글
·
post-thumbnail

프로퍼티를 수정하는 방법

data class에서 프로퍼티를 수정하는 방법이 고민됩니다.프로퍼티 선언 시 val 선언 후 copy로 수정할 수도 있고,프로퍼티를 var로 선언하여 기존의 객체를 유지하면서 프로퍼티만 수정할 수도 있습니다.val로 선언 후 copy로 수정하면 가변성을 제한할 수 있

2025년 3월 6일
·
2개의 댓글
·