- Engine : Unity 2021.3.23f1
- IDE : Visual Studio 2019 or VSCode
- Server-Stack : .NET Core 3.1 / C# 8.0
Code Convention
-
접두어
E
사용. -
값은 모두 대문자,
Snake Case
public enum EState { IDLE, MOVE, SOME_STATE, }
-
이름 모두 대문자,
Snake Case
// const public const INVALID_VALUE = int.min; // readonly public readonly Vector3 INVALID_POS = new Vector3(-9999,-9999.-9999);
-
Pascal Case
public class Item { }
-
변수
Camel Case
- 접근 지정자가 public이 아닐 경우, 접두어
_
사용.
private int _val; public int value;
-
프로퍼티
Pascal Case
public Vector3 Pos { get; private set;}
-
접두어
I
사용. -
Pascal Case
public interface IState { }
-
Array
- 접미어
Arr
사용.
int [] numArr = new int[5];
- 접미어
-
List
- 접미어
List를
사용.
List<int> numList = new List<int>();
- 접미어
-
Dictionary
- 접미어
Dict를
사용.
Dictionary<int, int> numDict = new Dictionary<int, int>();
- 접미어
-
Pascal Case
-
매개 변수
CamelCase
public void SetHp(int hp) { {
-
반환형
bool
Can
,Has
,Is
와 같이 의문문으로 작성.
public bool IsValied(int value); public bool HasValue(); public bool CanAttack();
-
람다
- 한 줄일 경우 사용 해도 됨.
public bool HasValue() => true;
-
Action
- 접미어
Callback
또는CB
사용.
private Action<int> _damageValCallback;
- 접미어
-
Func
- 접미어
Func
사용.
private Func<int> _checkFunc;
- 접미어
-
event
On내용Handler
포맷을 사용.
public event Action<T> OnRecvAttackHandler;
-
접두어
P
사용.struct PItem
참고 링크
https://docs.popekim.com/ko/coding-standards/pocu-csharp
https://learn.microsoft.com/ko-kr/dotnet/csharp/fundamentals/coding-style/coding-conventions
Cheat Manual
아이템 장착 : equipitem [itemKey]
아이템 드롭 : dropitem [itemKey = 1] [itemCount = 1]