Main Subject
WebAPI ServerASP.NET CoreMain Subject
  • 과제 개요
  • 추가 학습
    • 샤딩 Sharding
    • Scale out / Scale up
    • 로드밸런싱
    • WSL
  • 구현
    • 계정생성
    • 로그인
    • 권한 확인(미들웨어)
    • 공지 등록 및 전송
    • 우편함
    • 출석부
    • 인앱 결제 아이템 지급
    • 강화
    • 던전 스테이지
  • DB 설계
    • MySQL
    • Redis
  • Coding Conventions
  • [회고]
    • 마음가짐
    • 1주차
    • 2주차
    • 3주차
    • 4주차
    • [5주차]
    • 마치며
Powered by GitBook
On this page

Coding Conventions

PreviousRedisNext[회고]

Last updated 2 years ago

과제를 진행하기에 앞서 제공 받은 코딩 컨벤션(예시)입니다. 최대한 적용해봤는데, 적용되지 않은 부분이 있을 수 있습니다.

  • 을 따라간다

  • 클래스와 구조체의 이름은 파스칼식 대/소문자를 사용한다.

  • 함수

    • 함수의 이름은 파스칼식 대/소문자를 사용한다.

    • 매개 변수 이름에는 카멜식 대/소문자를 사용합니다.

    • 설명이 포함된 매개 변수 이름을 사용합니다.

    • 접근 제한자 중 private은 기본 적용이므로 별도로 표기하지 않는다. 예) public string UserID (0), private string UserID (X)

  • 필드

    • Private, Internal 필드:

      • _로 시작해서 _camelCase 식을 사용한다.

      • 필드 이름은 명사 또는 명사구를 사용하여 지정합니다.

      • 정적 필드는 s_를 붙인다.

      • thread static 필드는 t_를 붙인다

    • Public 필드 - 최대한 쓰지 않는다. - 파스칼식 대/소문자 사용

  • 상수는 파스칼식 대/소문자를 사용한다.

  • 매개 변수 타입을 기반으로 하는 이름이 아닌, 매개 변수의 의미를 기반으로 하는 이름을 사용할 수 있습니다.

  • 변수, 함수, 인스턴스등을 하드 프린트하는 대신 nameof("...")을 사용한다

  • 코드 블락 정리

    • 의 각 중괄호는 새로운 줄에서 시작한다. 조건문이 한줄이라도 중괄호는 사용한다

    • 인덴트는 4빈칸을 사용한다

    • 빈줄은 최대 1개만 사용한다. (가독성용)

    • 코드 끝자락에 빈칸은 생략한다.

  • 닷넷 타입은 기본 타입을 사용한다(예 String(닷넷 기본 타입), string(String의 별칭)

    • 정수 타입은 비트의 크기가 붙은 것을 사용한다. int -> Int32

  • 쉽게 읽을 수 있는 식별자 이름을 선택한다.

    • 예를 들어, 영어에서는 AlignmentHorizontal 라는 속성 이름보다 HorizontalAlignment 라는 이름이 읽기가 더 쉽다.

  • 간결성보다는 가독성에 중점을 둔다.

    • 예를 들어, 전자의 경우 X 축에 대한 참조가 명확하지 않은 ScrollableX라는 속성 이름보다는 CanScrollHorizontally라는 이름이 더 좋다.

  • 밑줄, 하이픈 또는 기타 영숫자가 아닌 문자를 사용하지 않는다.

  • 헝가리어 표기법을 사용하지 않는다.

  • 널리 사용되는 프로그래밍 언어의 키워드와 충돌하는 식별자를 사용하지 않는다.

  • 예외적으로 IDE에서 자동으로 포맷팅하여 코딩룰이 바뀌는 경우는 이것에 따라도 괜찮다. 단 이 경우 사용하는 IDE를 일치시킨다

dotnet/runtime 코딩 스타일
올맨 스타일