코드란?
- 있는 그대로 사용하기 불편한 정보를 약속된 형태로 압축한 간단한 기호 체계
- 코드의 본질은 값의 분류, 범주화에 있다.
사용하는 이유
- 속성을 코드화하면 그룹핑이 편리하여 집계가 용이해진다.
- 하나의 값을 표현하는 방법이 다양하므로, 집계할 때 문제가 생길 여지가 있다.
- 따라서 집계가 필요한 속성 데이터를 기호화하여 표준 코드로 관리하게 된다.
- 프로그램 소스 코드 수준에서 로직 분기를 위해 사용할 수 있다.
- 압축된 형태이므로 가독성을 높이고, 저장 공간의 효율성을 높일 수 있다.
- 서비스 화면 수준에서 데이터를 유형화하여 조회하는 데 사용할 수 있다.
코드인 것을 구분하는 기준
📎식별자
- 엔티티의 개별 인스턴스를 유일하게 식별하는 방법을 제공하는 장치
- 기본 키(PK)가 이에 해당한다.
- ex) 상품코드, 부서코드 등
📎 코드
- 릴레이션의 튜플들에 대한 특정 기준을 중심으로 분류로 사용되는 것을 의미한다.
- 개체가 생성되는 것이 아니라 분류를 위한 것
- ex) 정산상태 - 대기중/미납/완료/취소
대부분의 시스템에서는 업무에서 사용하는 모든 코드를 공통코드 엔티티에 통합하여 관리하는 것이 일반적이다.
공통코드 관리
공통코드그룹과 공통코드로 구성


01
- 공통코드 엔티티가 개별코드의 구체적인 값을 관리하는 형태이다.


- 위 예시 사진처럼 공통코드ID를 일련번호를 사용할 경우, 코드 속성과 공통코드그룹의 공통코드ID의 연관성을 찾기가 어렵다.
- 이를 보완하기 위해, 공통코드ID를 고유하게 관리되는 코드 속성의 컬럼명을 사용하면 공통코드ID가 직관적이므로 생산성을 높일 수 있고, 코드속성과 공통코드를 논리적으로 연결할 수 있다.
📌 참고자료
[기고] 공통코드 어떻게 설계하나?
▣ 공통코드 어떻게 설계하나? 거의 모든 시스템에서 업무에서 사용하는 모든 코드(개별 엔티티로 관리하는 목록성 코드를 제외)를 공통코드 엔티티에서 통합하여 관리하는 것이 일반적이다.
blog.b2en.com
코드의 개념, 코드 모델 관리 방안
코드란, 있는 그대로 사용하기 불편한 정보를 약속된 형태로 압축한 간단한 기호 체계이다.코드의 본질은 값의 분류, 범주화에 있다. 속성을 코드화하면 다음과 같은 효과가 있다.속성을 코드화
velog.io
쏘카 백오피스 팀 내 공통 코드(Common Code) 관리 변천사
공통 코드 관리 설계, 공통 코드 테이블 꼭 필요한가요? (Feat. Gradle Plugin & Kotlin PSI)
tech.socarcorp.kr