콘텐츠로 이동

컨벤션 적용 기준

전체 목차

상태: 채택 · 기준일: 2026-09-15

현재 작성된 C++ 코딩 11개와 Git 2개, 좌표축·행렬 문서 1개, 총 14개 문서의 채택 범위를 개인 개발의 기준으로 사용한다. 문서 안에서 초안으로 표시한 추가 검토 절은 제외한다. 이 페이지는 적용 범위와 문서 위치를 안내하며 규칙 전문을 복제하지 않는다.

적용 문서

영역 기준 문서 다루는 내용
코딩 포맷 탭·괄호·공백·UTF-8·LF
코딩 명명 식별자·상수 이름, 네임스페이스의 공통 루트·조건부 모듈 구분
코딩 주석 구현 설명·API 문서·작업 메모
코딩 auto 사용 명시적 타입 기본, 사용 조건, 값·참조·추론 주의사항
코딩 초기화 초기값·생성자 선택·축소 변환
코딩 const 읽기 전용 의도와 const 적용
코딩 클래스·구조체 타입 선택·공개 API, 생성자·특수 멤버·기본 상속. 미결정 정책 절 제외
코딩 프로젝트 구조와 파일 배치 주제별 배치·선택적 Source, 공개 헤더 분리 조건·폴더 명명·단수와 복수·프로젝트·써드파티·필터 관리
코딩 헤더·include 헤더 독립성·직접 의존성
코딩 함수 매개변수·반환 입력·입출력·결과 전달, 구조체·pair·tuple 선택, 의도적 결과 무시
코딩 소유권·수명 소유·대여·스마트 포인터 전달
코딩 좌표축과 행렬 규약 엔진·API에 따른 좌표축 선택, DirectXMath↔HLSL 행렬 전달·검증·성능 예외
Git 커밋 메시지 형식·type·언어·호환성 변경
Git 브랜치 명명 작업 목적·이슈 번호·릴리스 이름

채택 규칙은 포맷·명명·주석, auto·초기화·const·클래스·구조체, 소스 배치·헤더·함수·소유권 순으로 읽는다. 자료형 선택·타입 변환·attribute 초안의 위치는 C++ 목차를 따르며, 위 채택 범위와 구분해 검토한다.

적용 방식

  • 각 문서의 필수, 권장, 선택 강도를 그대로 유지한다. 채택이 모든 권장을 필수로 바꾸는 것은 아니다.
  • C++ 규칙은 신규 개인 C++ 코드에, Git 규칙은 개인 프로젝트의 새 커밋 메시지와 작업 브랜치 이름에 적용한다. 공통 기준은 위키의 채택 규칙이며, 기존 프로젝트도 변경하는 범위부터 맞춘다. 프로젝트 제약으로 달라지는 부분은 아래 절차에 따라 예외로 기록한다.
  • 좌표축 선택 기준은 이 위키를 사용하는 프로젝트에, 행렬 전달 규칙은 DirectXMath↔HLSL Constant Buffer 경계에 적용한다. 다른 라이브러리·버퍼 형식과 프로젝트·에셋별 관리 항목은 해당 문서의 적용 범위·예외를 따른다.
  • 규칙이 여러 주제에 걸치면 상세 정의가 있는 문서를 따른다. 스마트 포인터 전달은 소유권 문서, const 여부는 const 문서, 식별자 이름은 명명 문서, 코드 폴더·파일 이름은 소스 배치 문서가 기준이다.
  • ref/는 과거 자료와 비교 근거다. 현재 규칙과 다르면 이 목록의 기준 문서를 따른다. 외부 가이드도 참고 근거이며 개인 규칙을 자동으로 대체하지 않는다.
  • 예제의 최소 언어 버전과 프로젝트 표준 버전은 구분한다. C++11·14 기본 예제와 C++17·20·23 조건부 기능을 프로젝트 지원 범위에 맞게 사용한다.
  • 문서의 후속·미결정 사항은 채택된 규칙으로 확정한 것으로 해석하지 않는다. 미지정 규칙은 아래 절차에 따라 프로젝트에서 구체화·기록하고, 위키 정비 시 검토 근거로 사용한다.

위키의 적용과 프로젝트 근거 검토

상태: 채택 · 적용 범위: 이 위키를 사용하는 개인 프로젝트 · 개정일: 2026-10-07

공통 컨벤션의 기준은 항상 위키의 채택 규칙으로 둔다. 프로젝트에서는 위키를 확인·적용하고 새로운 선택과 적용 결과를 기록한다. 위키 정비 시 프로젝트의 코드와 문서를 검토하여 필요한 규칙·예외·근거를 반영한다. 사용자가 선택한 운영 기준이며, 임시 구현 선택과 공통 채택을 구분하기 위해 두 작업을 나눈다. 프로젝트 작업마다 위키를 수정할 의무는 없다.

프로젝트 작업 시

  1. 위키 확인 — 필수. 프로젝트 작업 전에 관련 문서의 현재 채택 상태와 적용 범위를 확인한다. 초안·보류·폐기·미결정 내용을 채택 규칙처럼 적용하지 않는다. 접근할 수 없으면 확인하지 못한 범위와 임시로 참고한 자료를 기록한다.
  2. 미지정 규칙 구체화 — 필수. 실제 구현에 필요한 선택을 프로젝트에서 정하고 적용 범위·이유·예외·필요한 예시를 기록한다. 사용자 선택이 없는 임시 결정은 시험 적용으로 표시한다.
  3. 적용과 반영 상태 기록 — 필수. 프로젝트에는 위키 링크와 실제 적용 범위, 시험 적용·예외·미반영 사항을 남긴다. 공통 규칙 전문은 복제하지 않는다. 작업 시 확인한 위키 개정으로 영향받는 코드와 요청 범위의 도구 설정을 확인하고 관련 작업 범위부터 맞춘다. 즉시 적용하기 어려우면 대상·이유·후속 반영 조건을 기록한다. 위키 검토가 필요한 내용은 프로젝트에 후속 검토 대상으로 남긴다.

시험 적용에서 드러난 제약이나 예외, 임시 선택을 유지·수정·폐기한 이유를 프로젝트에 기록하는 것을 권장한다. 위키 정비 시 이 기록을 판단 근거로 검토한다.

위키 정비 시

  1. 프로젝트 근거 확인 — 필수. 정비할 주제와 관련된 프로젝트의 코드·문서·적용 결과를 확인한다. 사용자 선택, 실제 구현, 시험 적용, 계획과 미검증 내용을 구분한다. 접근하지 못한 원본과 확인 범위는 기록하고, 확인하지 못한 내용을 완료된 적용 결과로 쓰지 않는다.
  2. 규칙 선별과 상태 판단 — 필수. 여러 프로젝트에 적용할 내용은 해당 공통 문서에, 특정 프로젝트·엔진·플랫폼에 한정된 전용 규칙·제약·예외는 docs/projects/의 해당 문서에 정리한다. 명확한 사용자 선택이나 기존 채택 근거가 있으면 그 범위에서 채택하고, 제안 단계이면 초안으로 남긴다. 미결정·보류·폐기도 구분한다. 실제 구현되어 있다는 사실만으로 공통 규칙을 자동 채택하지 않는다.
  3. 문서와 변경 기록 갱신 — 필수. 선별한 내용의 적용 범위·이유·예외·필요한 예시와 근거 링크를 기록하고, 해당 문서와 이 페이지의 변경 기록을 갱신한다. 위키 개정 후의 프로젝트 적용은 위의 프로젝트 작업 절차를 따른다.

기록 위치와 예외

공통 규칙의 상세 정의는 위키의 주제별 문서 한 곳에 둔다. 프로젝트 작업 중의 새 선택·시험 적용·예외와 적용 결과는 프로젝트 저장소에 기록한다. 작은 프로젝트는 별도 문서를 늘리지 않고 README에 적용 상태를 기록해도 된다.

위키 정비 시 선별한 특정 프로젝트의 핵심 요약·전용 규칙·제약·적용 상태는 위키 안의 docs/projects/에만 기록한다. 상세 환경·설계·실행 절차·검증 기록은 프로젝트 저장소로 연결하며 위키에 복제하지 않는다. 공통 문서는 일반화한 규칙과 필요한 근거 링크만 유지하며, README·목차·사이트 메뉴에서는 프로젝트 문서로 연결한다. 프로젝트 저장소에서 위키에 정리된 전용 규칙이나 예외를 안내할 때는 해당 항목을 링크하고 실제 적용 상태를 기록한다.

프로젝트 제약이나 명시적 합의로 공통 기준과 달라질 때는 프로젝트에 대상 규칙·적용 조건·이유·상태를 기록한다. 프로젝트의 기존 합의는 해당 범위의 예외로 관리하며 위키의 공통 기본값을 바꾸지 않는다. 위키 정비에서 검토할 결정은 프로젝트에 후속 검토 대상으로 남기며, 위키에 기록되지 않았다는 이유만으로 프로젝트의 명시적 합의를 시험 적용으로 바꾸지 않는다.

프로젝트 문서의 단일 파일·프로젝트별 폴더 구성과 분리 절차는 프로젝트 문서의 확장과 분리를 따른다.

마지막 확인·반영 시점

프로젝트에 위키의 확인일과 마지막으로 확인·반영한 커밋을 기록하는 것을 권장한다. 커밋 번호는 과거 규칙에 고정하기 위한 기준이 아니라 반영 상태를 추적하는 기록이다. 확인만 한 변경과 실제 코드에 반영한 변경은 구분한다. 미커밋 초안을 사용했다면 문서·변경 내용·시험 적용 대상을 기록한다.

예를 들어 프로젝트에서 사용자 선택 없이 처음 정한 오류 처리 방식은 프로젝트에 시험 적용으로 기록한다. 이후 위키의 오류 처리 규칙을 정비할 때 해당 코드·문서·적용 결과를 검토하고, 공통으로 사용할 수 있는 부분은 오류 처리 초안에, 프로젝트의 Win32 전용 처리 규칙은 docs/projects/의 해당 문서에 정리한다. 사용자가 공통안을 채택하면 위키의 상태를 갱신하고, 이후 프로젝트 작업에서 개정된 규칙을 확인·적용하며 적용 결과를 기록한다.

위키 문서 편집과 커밋·푸시·배포는 별개다. 이 절차가 원격 반영이나 무관한 코드의 일괄 수정을 자동 승인하지 않는다.

다음 개정 범위

영역 남은 내용
명명 약어·매크로, 일반 구조체 정적 변수
포맷 switch·짧은 람다·복잡한 템플릿
C++ 오류 처리의 통일 정책, mutable, 전달 템플릿
프로젝트별 규칙 설계·구성·빌드, 표준 버전·컴파일러, PCH·모듈, 자동 포맷·편집기 설정, COM·DX12·GPU 자원·ECS·메모리 풀
Git·협업 병합·리뷰·브랜치 수명, 자동 생성 메시지·릴리스·검증 도구
다른 분류 C, 테스트·품질, 일반 문서화

미작성 항목은 후속 대상으로 유지한다. 위 후속 항목과 도구 설정은 현재 채택 범위에 포함하지 않는다.

검토 중인 초안

문서 상태와 범위
C++ 자료형 선택과 별칭 공통 초안. 표준·외부 API 타입, 자체 별칭의 도입 조건, 강한 타입, 외부 데이터 계약
C++ 타입 변환과 범위 검사 공통 초안. 목적별 캐스트, API 출력 인자, 숫자 변환·산술 범위
클래스·구조체의 미결정 정책 본문의 기본 규칙은 채택. 생성 실패·소멸 진단·noexcept, 다형적 복제·복잡한 상속은 초안이며 채택에서 제외
attribute 사용 C++ 공통 초안. nodiscard의 언어 동작·다른 attribute의 목적·버전·계약과 확장 구분
Unity 오브젝트·에셋 이름과 폴더 구조 Unity 공통 초안. 명명·구분자·반복 번호·폴더 구조·참조 보존. 버전 공통 고정과 C# 규칙은 제외
RnimanEngine 프로젝트 기준 참조 초안. D3D12 초기 구현·프레임 동기화·타입 명시·공용 원본 경로는 사용자 결정에 따라 프로젝트 한정 채택하며 시험 적용·미결정과 구분
HLSL 셰이더 규칙 공통 초안. 명명·좌표 공간·단계별 파일·진입점·공유 include·산출물 구분
HTML 기본 컨벤션 공통 초안. 문서 골격·포맷·입력·접근성·JSX 차이
Material Forge 참고 기록 참조 초안. 로컬 원본·프로젝트 제약과 HTML 초안 미반영 상태
변경 검증과 결과 기록 공통 초안. 변경 범위와 빌드·실행·화면·성능 검증
원본과 생성물 관리 공통 초안. 재현 가능한 원본과 생성물의 구분

새 초안은 채택 범위가 있는 문서 14개에 포함하지 않는다. 채택 문서 안의 초안·미결정 정책도 적용 범위에서 제외한다. 프로젝트에서 이미 적용한 선택도 공통 규칙의 자동 채택 근거로 사용하지 않는다. 초안의 필수·권장·선택은 채택 시의 제안 강도다.

변경 기록

날짜별 핵심 결정과 적용 상태를 요약한다. 상세 규칙·근거·검증 기록은 연결한 문서에서 확인한다.

2026-10-28

  • 폴더 명명 규칙 채택: 사용자 선택으로 C++ 폴더·파일 이름에 폴더 명명 규칙을 통합했다. 직접 관리하는 폴더의 PascalCase 우선 권장, 역할별 권장 이름, 도구·외부 원본·기존 경로 호환성에 따른 소문자 예외와 의미에 따른 단수·복수 기준을 채택하고 배치 예시·목차·검토 상태를 맞췄다. 필수·권장·선택 강도를 유지하며 채택 문서 수는 14개다. 요청에 따라 rniman-engine.md의 이번 변경을 제거했으며 실제 엔진 경로·설정은 변경하지 않았다.

2026-10-16

  • 프로젝트 기록 정리: RnimanEngine의 087570c 기준 타입 명시·공용 PNG 경로 채택과 최신 명명·실행 제약을 반영하고 v0.1.0은 과거 근거로 보존했다. 중복 설명·변경 기록을 줄이고 공통 규약 확인을 시험 적용과 분리했다. 채택 범위·문서 수·미결정 상태와 엔진 코드·설정은 유지하며 엔진 실행 검증은 반복하지 않았다.
  • C++ 문서 간소화: 명명·프로젝트 구조에 이어 포맷·주석·auto·초기화·const·헤더·함수·소유권·클래스와 자료형 선택·변환·attribute 초안 등 12개 문서의 반복 설명·중복 예시·배경을 줄였다. 기존 규칙 강도·예외·버전·미결정 정책과 채택 범위·문서 수는 유지한다.

  • 공통 규칙 채택: 사용자 선택으로 C++ 프로젝트 구조와 파일 배치를 채택했다. 프로젝트 바로 아래의 주제별 헤더·구현 배치, 선택적 src, 공개 헤더의 조건부 분리, 코드 폴더·파일의 PascalCase와 솔루션·써드파티·필터 관리 기준을 적용한다. 필수·권장·선택 강도를 유지하며 채택 범위가 있는 문서는 C++ 11개를 포함해 총 14개다.

  • 프로젝트별 결정 구분: 구체적인 폴더 이름·트리, API 범위·include 도입, 프로젝트 분리 시점과 써드파티 공급·수정 방식은 프로젝트별 결정 사항으로 정리했다. 공통 문서의 채택을 실제 엔진 재배치·적용 완료로 해석하지 않는다.
  • 문서·상태 정리: 프로젝트 구조와 파일 배치 문서를 C++ 분류의 project-structure.md로 정리하고 관련 목차·링크·MkDocs 메뉴·코딩 소개와 RnimanEngine의 배치 후보를 맞췄다. 프로젝트 내부 배치·빌드 단위·IDE 표시 순으로 재구성한 뒤, 반복 설명·배치 트리·근거 문장을 줄여 핵심 표·대표 예시·검증 항목으로 압축했다. 채택 강도·예외와 프로젝트별 결정 구분은 유지한다. 네임스페이스 규칙도 사용자 선택으로 공통 채택하고, 실제 루트 이름·모듈 구분·별도 제품의 경계는 프로젝트별 결정 사항으로 정리했다. 명명·소스 배치 문서에서 로컬 과거 자료 관련 언급을 삭제했다. 기존 문서의 채택 범위를 확장한 것으로 채택 문서 수는 14개를 유지한다. 네임스페이스 예시의 제품 루트는 example로 통일했다. 명명 문서도 규칙 표·대표 예시 중심으로 압축하고 중복 설명·출처 비교·변경 기록을 줄였다. 실제 엔진 코드·설정은 변경하지 않았다.

2026-10-15

  • 규칙 추가·채택: 사용자 선택으로 핵심 위주로 정리한 C++ auto 사용 규칙을 채택했다. 명시적 타입을 기본으로 두고 필요한 사용 조건과 값·참조·추론 주의사항을 정했다. 초기화 문서·목차·사이트 메뉴의 상태를 맞췄으며 채택 범위가 있는 문서는 C++ 10개를 포함해 총 13개다.

  • 초안 보강: 사용자 요청으로 C++ 프로젝트 구조와 파일 배치의 기본값을 주제별 헤더·구현 동시 배치로 정리했다. 여러 프로젝트·써드파티 분류와 모듈 소속을 유지하고, 공개 헤더는 제공할 API·배포 범위를 별도 관리할 필요가 있을 때만 분리하도록 도입·생략 조건을 명시했다. 소스 공개와 API 제공을 구분하고 예시·관련 안내를 맞췄다. 구체적인 트리·분리 대상은 미결정이며 초안 상태와 기존 채택 범위를 유지한다.

  • 프로젝트 계획 대조: RnimanEngine의 원격 구조·외부 라이브러리 문서를 확인했다. Engine·Samples·Tools·ThirdParty는 확장 계획이며 현재 도입 목록으로 바꾸지 않았다. 프로젝트 코드·빌드 설정·패키지 설치는 변경하지 않았다.

2026-10-14

  • 초안 추가: 사용자 요청으로 C++ 프로젝트 구조와 파일 배치를 작성했다. 실제 디렉터리·IDE 필터·빌드 프로젝트를 구분하고 헤더·구현 배치, 공개 API 예외, 프로젝트 분리 조건과 경로·빌드 검증을 제안했다. 채택 문서 수와 기존 채택 범위는 유지한다.
  • 프로젝트 근거 확인: RnimanEngine의 현재 소스·필터·Smoke 빌드 입력을 확인하고 구체적인 배치 후보를 초안으로 기록했다. 실제 프로젝트 재배치와 빌드·실행은 수행하지 않았다.

2026-10-13

  • 프로젝트 컨벤션 대조: RnimanEngine의 v0.1.0(14c957c)을 대조 시점으로 기록하고 C++·좌표축·행렬 적용, 자원 수명·렌더 데이터·에셋 추적의 근거를 반영했다. 사용자 요청으로 프로젝트 소개·마일스톤 성과·상세 실행 결과는 원본 링크로 대체하고 전용 규칙·예외·적용 상태 중심으로 정리했다. 공통 채택 범위·엔진 코드는 변경하지 않았다.
  • 규약 추가·채택: 사용자 선택으로 좌표축과 행렬 규약을 작성·채택했다. 엔진·API에 따른 좌표축 선택과 DirectXMath↔HLSL의 row_major·행 벡터·전달용 추가 전치 없는 기본 규칙, 검증·성능 예외를 정했다. 채택 범위가 있는 문서는 12개다.
  • 공용 범위 확정: 거리 단위·외부 에셋 변환은 프로젝트·에셋별 관리로 결정하여 공통 미결정·후속 채택 목록에서 제외했다. DXC·SM6·다른 버퍼 형식은 후속 검토 범위다.
  • 근거·문서 정리: RnimanEngine의 현재 구현을 대조하고 목차·사이트 메뉴·관련 문서 링크를 맞췄다. 상세 규칙은 한곳에 모으고 같은 날의 기록을 최종 결정 중심으로 묶었다. 엔진 코드·설정·적용·실행 검증 기록은 변경하지 않았다.

2026-10-09

  • 함수 규칙 개정: 사용자 선택으로 구조체·pair·tuple의 선택과 의도적 결과 무시의 조건·표기를 채택했다. (void)를 권장 기본으로 두고 표기 생략·대체 표기의 허용 범위를 정했으며, 기존 nodiscard 기준을 보강했다. 오류 처리·진단 설정은 프로젝트별 결정으로 유지한다.
  • 클래스·구조체 채택: 사용자 선택으로 기본 규칙을 채택했다. override·조건부 final은 권장, 병기는 허용하며 접근 구역의 필요한 반복·권장 선언 순서·수명 의존성 확인을 구분했다. 초기화·const·포맷의 상세 규칙은 현재 위치를 유지하고 링크는 필요한 지점에만 둔다. 생성 실패·소멸 진단·noexcept, 다형적 복제·복잡한 상속은 미결정 정책으로 남겨 채택에서 제외했다.
  • 초안 추가: attribute 사용의 목적·언어 버전·적용 조건과 컴파일러 확장 구분을 정리했다. 함수 문서의 기존 채택 규칙과 구분하며 초안 상태를 유지한다.
  • 프로젝트 근거 확인: RnimanEngine의 기존 반환값·attribute 사용과 미적용 후보, 클래스·구조체와 복사·이동 선언을 기록했다. 엔진 코드·설정은 변경하지 않았다.

2026-10-07

  • 사이트 글꼴 분리: 사용자 요청으로 인터페이스·제목은 Pretendard, 본문은 리디바탕, 코드·상단 메타정보는 D2Coding으로 구분했다. 공식 원본과 OFL 1.1 고지·출처·해시를 함께 포함했다.
  • 운영 기준 개정: 사용자 선택으로 위키의 적용과 프로젝트 근거 검토를 프로젝트 작업과 위키 정비로 나눴다. 프로젝트에서는 위키 확인·적용과 선택·예외·적용 결과 기록을 수행하고, 위키 정비 시 프로젝트를 조사해 필요한 규칙과 근거를 선별한다. 프로젝트 작업마다 위키를 수정하는 의무를 제거하고, 프로젝트 문서 안내와 관련 링크를 맞췄다. 기존 절 주소는 유지한다.

2026-10-06

  • 프로젝트 구조 적용: RnimanEngine 앱 실행부 분리에 Main·SandboxApp의 책임과 자원 소유·종료 순서를 기록했다. 범용 Application 정책으로 확대하지 않는다.
  • 프로젝트 구조 적용: RnimanEngine 창·입력 분리에 창 소유 상태·프레임 입력 소비·수명 경계를 기록했다. Sandbox 한정 구현이며 공통 Input·Scene 정책으로 확대하지 않는다.
  • 프로젝트 적용 결과: RnimanEngine에 지역 상수 명명·포맷·헤더·API 주석의 채택 규칙을 적용하고 CPU 크기·span 인덱스의 표준 타입 사용을 시험 적용했다. 자료형·변환 초안의 공통 채택 상태는 변경하지 않았다.
  • 채택 규칙 개정: 상수 명명을 const·constexpr 구분 없이 선언 범위 기준으로 변경하고 const 예제를 맞췄다.
  • 초안 추가: 자료형 선택과 별칭, 타입 변환과 범위 검사를 분리 작성했다. RnimanEngine 적용 상태는 코드 대조와 제한된 시험 적용 범위를 기록하며 공통 채택을 뜻하지 않는다.
  • 사이트·문서 정리: 제목·본문·메뉴에 Pretendard Variable v1.3.9를 적용하고 원본·SIL OFL 1.1·출처·해시를 포함했다. 코드 글꼴은 유지했다. 목차·메뉴·상태 표시를 정리하고 명명 문서와 변경 기록의 중복을 줄였다.

2026-10-05

2026-09-30

  • 초안 추가: Unity 명명·폴더 구조와 분류를 추가했다. 프로젝트별 예외는 해당 프로젝트 문서에서 관리한다.

2026-09-24

  • 프로젝트 한정 시험 적용: RnimanEngine 큐브 출력의 행렬 전달·프레임별 Constant Buffer·깊이 버퍼를 기록했다.

2026-09-19

2026-09-18

2026-09-17

  • 프로젝트 한정 채택: 사용자 선택으로 RnimanEngine 프레임 동기화의 프레임별 Allocator·Fence와 재사용 대기를 기록했다. 리사이즈·종료 전체 대기 및 검증 상태의 구분을 유지했다.

2026-09-15

  • 운영 기준 채택: 사용자 선택으로 위키와 프로젝트의 상호 반영을 채택하고 별도 절차 문서를 이 페이지에 통합했다. 현재 위키를 기준으로 새 결정·시험 적용·예외를 반영한다.
  • 문서 구성 기준 채택: 프로젝트 정보는 docs/projects/에 모으고, 핵심 요약·주요 원본 링크와 확장·분리 기준을 정했다.
  • 채택 규칙 개정: 포맷의 실패 처리·인자 배치를 구체화하고 줄 길이 권장을 100열에서 120열로 변경했다. 인자·템플릿 타입 개수 기준을 제거하고 의미 단위 배치를 우선했다.
  • 프로젝트·초안 추가: RnimanEngine 조사를 바탕으로 참조 문서와 공통 초안 3개를 추가했다. D3D12 초기 선택은 프로젝트 한정 채택과 시험 적용을, 120열 적용은 공통 채택 전후를 구분했다.

2026-09-14

  • 분류 정리: 설계와 프로젝트 구성·빌드의 미작성 분류를 프로젝트별 규칙으로 통합했다. 세부 규칙은 미결정을 유지했다.

2026-09-12

  • 최초 채택: C++ 8개와 Git 2개 문서를 개인 기준으로 채택했다. 기존 개인 스타일과 규칙 강도를 유지하고 예제·예외를 보완했다.
  • Git 규칙 추가: 커밋 메시지와 브랜치 명명을 작성했다. 커밋 본문의 문단 허용과 호환성 변경의 !·footer 병용을 포함했다.
  • 문서 이동: 소유권·수명 문서를 design/cpp-ownership.md에서 현재 위치로 옮기고 ref/ 링크를 통일했다.

문서 경로는 유지하는 것을 기본으로 하며, 분류 개편으로 이동하면 관련 링크와 변경 기록을 함께 갱신한다. 규칙을 변경하면 해당 문서와 이 기록에 변경 범위와 이유를 남긴다. 이 페이지는 문서 기준이며 Git 태그·커밋·배포를 의미하지 않는다.