Power Apps 네이밍 규칙, 처음부터 사용했으면 좋았을 텐데

발행: (2026년 3월 4일 오전 09:17 GMT+9)
5 분 소요
원문: Dev.to

Source: Dev.to

Introduction

Power Apps를 처음 만들 때는 네이밍 규칙이 별로 중요하지 않다고 생각했습니다. 모든 것이 잘 동작했죠… 하지만 앱이 커지고 수식이 읽기 어려워지기 시작했습니다. 몇 가지 간단한 네이밍 습관만으로도 앱 유지 보수의 편리함이 크게 바뀌었습니다.

Why Naming Conventions Matter

  • Readability – 명확한 이름은 수식을 한눈에 이해할 수 있게 합니다.
  • Debugging – 문제의 원인을 찾기가 쉬워집니다.
  • Maintenance – 각 요소가 무엇을 하는지 알면 향후 변경이 빨라집니다.
  • Collaboration – 팀원이 steep learning curve 없이 바로 작업에 참여할 수 있습니다.

Microsoft의 Power Apps 코딩 가이드에서는 화면, 컨트롤, 변수, 컬렉션에 일관된 네이밍을 사용할 것을 권장합니다. 이는 가독성과 유지 보수성을 향상시키기 때문입니다.

General Naming Pattern

prefix_Purpose
  • prefix – 컨트롤 유형을 나타냅니다 (버튼, 라벨, 텍스트 입력 등).
  • Purpose – 컨트롤이 수행하는 작업을 설명합니다.

Example

  • btn_SubmitForm
  • txt_UserEmail
  • lbl_StatusMessage

Control Prefixes

컨트롤 유형접두사예시
버튼btn_btn_Submit
라벨lbl_lbl_Status
텍스트 입력txt_txt_Email
갤러리gal_gal_Employees
frm_frm_Request
드롭다운drp_drp_Department
체크박스chk_chk_Approved
아이콘ico_ico_Delete

Goal: prefix = control type + name = what it does.
btn_SubmitRequest를 보면 바로 이것이 요청을 제출하는 버튼이라는 것을 알 수 있습니다.

Screen Naming

설명적인 화면 이름은 개발자 경험과 접근성을 모두 향상시킵니다.

Good examples

  • HomeScreen
  • EmployeeRequestScreen
  • ApprovalScreen

Bad examples

  • Screen1
  • Dashboard
  • Page2

Variable Naming

변수는 저장하는 내용과 범위를 나타내야 합니다.

범위접두사예시
전역gblgblUserEmail
컨텍스트(화면 로컬)loclocIsLoading
일반varvarSelectedItem

Collection Naming

컬렉션은 일반적으로 col_ 로 시작하고 내용물을 설명합니다.

  • colEmployees
  • colNavigationMenu
  • colActiveRequests

Putting It All Together

Gallery1, Label4, Button2 같은 일반적인 이름 대신 설명적인 접두사를 사용합니다:

gal_Employees
lbl_EmployeeName
btn_SaveEmployee

이제 수식이 실제 로직처럼 읽힙니다:

If(
    btn_SaveEmployee.Visible,
    /* your logic here */
)

훨씬 이해하기 쉽습니다.

The Most Important Rule

완벽한 “최고” 네이밍 시스템은 없습니다. 팀마다 약간씩 다른 패턴을 채택할 수 있지만 일관성이 핵심입니다. 일관된 네이밍 구조는 앱을 탐색하고 디버깅하며 장기적으로 유지 보수하는 데 큰 도움이 됩니다.

Quick Checklist

  • 모든 컨트롤 유형에 명확한 접두사를 사용합니다.
  • 각 컨트롤, 화면, 변수, 컬렉션의 목적을 설명합니다.
  • 앱 전체에 걸쳐 네이밍 규칙을 일관되게 적용합니다.

미래의 자신(그리고 팀원)에게 큰 감사가 될 것입니다!

0 조회
Back to Blog

관련 글

더 보기 »

TDD의 중요성

문제는 제가 12개의 매개변수를 가진 “awesome” API를 만들었다는 것입니다. 그 API는 형편없었습니다. 제 머릿속을 박사 수준으로 이해하지 않으면 아무도 사용할 수 없었습니다. 수년간 백엔드 개발을 하면서, 저는…