2.1 언리얼 C++ 코딩 표준
2.1-1 코딩 표준(Coding Standard)
- 프로그래밍을 작성하는데 지켜야 하는 프로그래밍 이름 규칙, 작성 방법 등을 지정한 가이드라인.
코딩 스타일(Coding Style), 코딩 컨벤션(Coding Convention)이라고도 함.
- 언리얼 엔진은 자체적으로 코딩 표준을 정했기 때문에
기존 C++ 코딩 표준을 버리고 언리얼 엔진 코딩 표준을 따라야 함.
2.1-2 언리얼 명명 규칙
- public 접근 지정자 뒤에 private 접근 지정자로 이어지는 클래스 체계(Organization)를 준수.
- 언리얼은 관습적으로 파스칼 케이싱으로 작성. 소문자는 가급적 사용하지 않고, 공백 및 언더바 금지.
파스칼 케이싱: 합성어의 첫 글자를 대문자로 시작해서 명명.
카멜 케이싱: 합성어의 첫 글자를 소물자로 시작. 나머지는 대문자를 사용해서 명명.
스네이크 케이싱: 합성어 사이에 언더바를 사용해서 명명.
- 모든 클래스와 구조체에는 고유한 접두사가 있음.
템플릿 클래스는 T, UObject 클래스를 상속 받은 클래스는 기본적으로 U,
AActor 클래스를 상속 받는다면 A, 인터페이스 클래스는 I, Slate 클래스는 S
그외 대부분의 클래스 및 구조체는 F
- 함수명 접두사
bool 자료형을 반환하는 함수는 Is- 가 붙음.
그 외 자료형을 반환하면 Get-
- 매개변수명 표준
해당 매개변수가 입력으로만 사용되면 In- 출력으로 사용되면 Out-을 붙히는걸 권장.
레퍼런스를 통한 복사 방지를 권장.
- 문자열 리터럴을 사용할 때는 반드시 TEXT() 매크로를 사용.
2.1-3 const 키워드
- 가급적이면 모든 경우에 const 키워드를 붙힘.
필요 없을 때 지우는게 맞음.
- 특히 for 구문에서는 오히려 지정해야 할 수 있음.
순회 중에 데이터 변경이 불가능한 경우가 있음.
2.1-4 최신 C++ 문법
- C++17 표준까지 지원. 그 이상은 지원되지 않음.
- override / final 키워드는 사용 적극 권장
- auto 키워드는 사용 자제
다만 너무 뻔하면서도 긴 자료형에는 auto 키워드 사용 권장
- 범위 기반 for / 익명함수 사용 가능
- UENUM() + enum class를 통해 enum 구현
- std::move()는 언리얼에서 되도록 사용하지 않는 것이 권장. MoveTemp() 함수를 대신 사용.
- header 파일에서도 초기화가 가능하나, 생성자의 initialize list를 활용하는걸 권장
- #pragma once 구문을 이용해서 상호 참조를 막아야함.
2.1-5 전방선언
- 헤더 파일에서 전방선언을 활용해서 #include 구문 최소화해야 함.
다른 헤더 파일이 수정될 때 마다 무조건 자신이 작성한 파일도 재 컴파일됨을 막음.
'Unreal > [서적] 언리얼5 이득우님 인프런1' 카테고리의 다른 글
Ch 06. 언리얼 리플렉션 2 (0) | 2023.05.10 |
---|---|
Ch 05. 언리얼 리플렉션 (0) | 2023.05.10 |
Ch 04. 언리얼 오브젝트 (0) | 2023.05.09 |
Ch 03. 언리얼 C++ 기본 타입과 문자열 (0) | 2023.05.09 |
Ch 1. 개발 환경 설정 (0) | 2023.05.08 |
댓글