Notice
Recent Posts
Recent Comments
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Archives
Today
Total
관리 메뉴

DeFacto-Standard IT

코드 명명 규칙, Naming Convention 본문

Private/ETC

코드 명명 규칙, Naming Convention

defacto standard 2017. 11. 16. 21:29

- 헝가리안 표기법

변수의 자료형을 변수명의 접두어로 붙인다.

int자료형 + apple -> intApple

String자료형 + name -> strName


-Camel Casing

https://en.wikipedia.org/wiki/CamelCase

소문자를 기본으로 사용하되, 구분되는 단어를 대문자로 연결. 그러나 첫 단어의 첫 글자는 소문자를 사용

appletree라는 함수 -> appleTree()


-Pascal Casing

소문자를 기본으로 사용하되, 구분되는 단어를 대문자로 연결. 그러나 첫 글자도 대문자를 사용 (Camel Casing과의 유일한 차이점)

appletree 라는 클래스 -> AppleTree


-Java ( Camel Casing + Pascal Casing )

1. 대소문자가 구분되며, 길이에 제한이 없다

  -> Tree와 tree는 서로 다른 것으로 간주


2. 예약어를 사용해서는 안된다.

  -> true는 예약어 이기때문에 사용할 수 없으나 True는 사용할 수 있다.


3. 숫자로 시작해서는 안된다.

  -> num10은 가능하지만 10num은 사용할 수 없다.


4. 특수문자는 _와 $만 사용할 수 있다.

  -> _tree나 $tree는 사용할 수 있으나, #tree와 같은 이름은 사용할 수 없다.


-J2EE에서 권장하는 규칙

1. 클래스 이름의 첫 글자는 항상 대문자이어야 한다.

2. 변수와 메서드의 이름 첫 글자는 소문자이어야 한다

3. 여러 단어로 이루어진 이름인 경우 각 단어의 첫 글자를 대문자로 한다.

4. 상수의 이름은 모두 대문자로 한다. 또한 여러 단어로 이루어진 상수의 경우 _로 구분한다


-HTML

HTML작성에서는 너무 광범위하게 명명규칙을 허용하고 있기 때문에 공통적으로 사용하는 명명규칙이 없는 상태.


웹사이트마다 제각각의 규칙아래에서 작성되고 있다.

NHN에서 제시하는 HTML 명명규칙에 대한 링크

http://nuli.navercorp.com/data/convention/NHN_Coding_Conventions_for_Markup_Languages.pdf

 

 


정리

네임스페이스, 클래스, 프로퍼티, 함수에는 Pascal Casing

Hanbros.SmartClient.Controls

Hanbros.Samsung.SmartClient.Web

public class MyClass() {}

 

변수, 매개변수 등에는 Camel Casing, 변수명에 헝가리안 표기법을 사용하지 않음

public class MyClass(string myName) {}


컨트롤에는 해당 컨트롤에 접두사를 붙이는 헝가리언 표기법을 사용

string _mtName;

protected System.Web.UI.WebControls txtMyName;


네임스페이스는 회사명.솔루션명.제품명.타입을 사용 or 회사명.제품명.최상위모듈.하위모듈

Microsoft.Office.Excel.Web


줄인단어는 모두 대문자 사용

public void GetMyID() {}


가능 불가능은 Enable을 붙여서 사용

public bool EnableWrite() {}


이다, 아니다는 Is를 붙여서 사용

public bool IsExist() {}


값을 얻는 이름은 Get, 값을 쓰는 이름은 Set

public Datable GetMyBoards() {}


중간에 _사용은 자제

public class My_Class() {}  (X)


인터페이스에는 I를 붙인 Pascal Casing사용

IRunable


사용자 예외처리 클래스 경우 접미사에 Exception을 붙인다.

public class MyApplicationException() : ApplicationException {}


모든 변수에 모든 의미를 충분히 표현(약어 사용 x)

-좋은 예 : string address, int salary

-나쁜 예 : string addr, int sal


루프에서 반복분을 의미하는 변수를 제외하고는 i, n, s와 같이 한 글자로 된 이름을 사용하지 말 것


지역변수와 멤버변수는 변수명 앞에 _를 사용하여 구별

지역 변수에는 변수명 앞에 밑줄을 사용하지 않는다.

멤버 변수에는 m_과 같은 헝가리안 표기법을 사용하는 대신 밑줄을 사용하여 지역변수와 구별


키워드와 비슷한 이름을 사용하지 말 것


UI 구성요소를 위해 적당한 접두사를 사용

1. 모든 UI 구성요소를 위하여 공통적인 접두사(ui_)를 사용

2. 각각의 UI 구성요소마다 접두사를 적용


파일 명은 클래스명과 같아야 하고, 파스칼 표기법을 사용한다.

클래스명이 HelloWorld 라면 파일명도 HelloWorld

 

Comments