[접두어]_[기능/화면]_[설명]_[상태/크기].확장자ic, img)_selected), 채워짐(_filled), 크기(_24), 색(_white) 등strings.xml
공통 - 앱 전체에서 쓰임
| 접두어 | 설명 | 예시 |
|---|---|---|
action_ |
버튼이나 메뉴의 동작 | action_ok, action_cancel, action_save |
label_ |
입력창 제목, 짧은 라벨 | label_name, label_email, label_password |
title_ |
공통 다이얼록, 팝업 제목 | title_notice |
placeholder_ |
입력창 힌트 (placeholder) | hint_email_input |
error_ |
에러 메시지 | error_network_connection, error_invalid_format |
msg_ |
일반 안내 메시지 (토스트, 다이얼로그 내용) | msg_delete_confirm, msg_loading |
화면별 - 특정 화면 전용
[화면명]_[요소]_[설명] 순서login_title, login_btn_kakao, login_msg_failedmypage_menu_notice, mypage_profile_editComposable 함수: PascalCase (명사형 권장)
@Composable fun MyPageScreen() { ... } (O)@Composable fun drawMyPage() { ... } (X - 동사형 지양)이벤트 핸들러: on + Subject + Event 순서
on: 이벤트 핸들러임을 나타내는 접두어 (고정)대상 (생략 가능): 무엇이 변했거나 클릭되었는지 명시 (컨텍스트가 명확하면 생략)행위 (필수): 클릭됨, 변함, 포커스됨 등 일어난 사건onClick, onValueChange, onProfileClickModifier 파라미터: 모든 Composable 함수는 modifier를 파라미터로 받아야 하며, 첫 번째 옵셔널 파라미터로 둡니다.
@Composable
fun ProfileImage(
imageUrl: String, // 필수 파라미터
modifier: Modifier = Modifier, // 첫 번째 옵셔널 파라미터로 Modifier 배치
contentDescription: String? = null, // 나머지 옵셔널 파라미터들...
shape: Shape = CircleShape,
borderWidth: Dp = 1.dp
) { ... }
상태 호이스팅 (State Hoisting): 상태(State)는 내부에서 만들지 않고, 가능한 호출하는 부모가 내려주도록 설계합니다.
https://developer.android.com/kotlin/style-guide?hl=ko
// TODO: [작성자] 내용 형식을 사용하여 남깁니다.