Clean Code: Best Practices for Naming and Method Separation
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

Clean Code] 코드 작성에 대한 고찰

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

개발 툴

대상자

  • 초보 개발자 및 중급 개발자
  • 코드 가독성/유지보수성 향상이 필요한 프로젝트 팀원
  • OOB(Out of Box) 개발 습관을 개선하고자 하는 개발자

핵심 요약

  • 변수/DTO 이름은 DB 컬럼이 아닌 UI 사용 목적에 맞춰 명확하게 지정 (예: reference1iconName)
  • 메서드 분리는 도메인 중심의 비즈니스 로직에 기반 (예: createRole()/updateRole()Role 도메인 내부에 구현)
  • 3-Layer Architecture 패턴 준수 (Service Layer는 비즈니스 흐름만, Domain Layer는 상태/행위 집중)

섹션별 세부 요약

1. 변수/DTO 명명 규칙

  • DB 컬럼명과 동일한 필드명 사용은 UI 사용 목적을 반영하지 않아 혼란 유발
  • UI에서의 역할을 반영한 명명이 가독성 향상에 기여 (예: nameValuecategoryValue)
  • 리뷰 피드백을 통해 명명 기준을 '업무 역할 기반'으로 전환

2. 메서드 분리 기준

  • 메서드는 '도메인 중심의 비즈니스 행위'에 따라 분리 (예: Role 도메인 내 create()/update() 메서드)
  • Service Layer는 비즈니스 흐름만 유지, Domain Layer는 상태/행위 집중
  • @Transactional 어노테이션을 통해 도메인 내부 로직과 DB 연동 강화

3. 3-Layer Architecture 적용 사례

  • Service Layer: 요청 검증 및 흐름 관리 (예: createRole()Role 도메인 생성 호출)
  • Domain Layer: 상태 및 핵심 비즈니스 로직 집중 (예: Role 클래스 내 create() 메서드)
  • Builder Pattern을 통해 도메인 생성 로직을 내부화 (예: Role.create(request))

결론

  • 코드는 '말'로 작성을 해야 하므로, UI 역할/도메인 행위에 기반한 명명과 메서드 분리가 핵심
  • 3-Layer Architecture를 준수하며, Service Layer는 흐름만, Domain Layer는 상태/행위에 집중
  • 리뷰 피드백을 통해 '감' 기반 개발에서 '기준' 기반 개발로 전환