2012-09-24 2 views
2

부울 게터/세터 메소드를 작성할 때 내가 게터 방법은 적절하게 이름을 지정해야한다고 일부 사용을 보았다 그러나 너무구문 부울에 대한 게터/세터 메소드 및 속성

void setValue(boolean value) { } 

boolean getValue() { return true/false; } 

처럼 쓰기 표준을 보인다 그것의 사용법에 따르면.

내가 설정하고, 예를 들어 말할 수 있습니다/"활성화"라는 부울을 받고, 내 게터를 호출해야합니다

getEnabled() 

또는

isEnabled() 

다시 내가 예를 들어 말할 수 getter가 호출되어야 "nodes"라는 불리언 값을 설정하거나 가져옵니다.

getNodes() 

또는

hasNodes() 

이 바로 아래로 개인적인 취향에인가, 아니면 또 다른 이상 특정 명명 규칙을 선택하는 것이 좋습니다?

+4

는'nodes' 정말 가난한 이름처럼 들린다 부울 – BoltClock

+2

개인 선호도 (또는 팀/고용주의 선호도)에 달려 있다고 말할 수 있습니다. 그러나, 나는'bool getNode()'메소드를 본다면 혼란 스러울 것이라고 말하고 싶다. ... – Alxandr

+1

"nodes"가 "isNodes"를 사용하는 것이 더 좋으므로 "nodes"가 더 좋지만 "nodes" 컬렉션은 다음 "hasNodes"더 나은 – Vytalyi

답변

0

는 그리고 재산에 호출 할 수 있도록 '자연'이다

myControl.Enabled = true; 
... 

if(myControl.Enabled == true) 
+0

Ditto, 이것이 내가 C#을 선호하는 이유입니다 ... 더 많은 구문 론적 설탕! – series0ne

+0

다시 한번이 속성을 Enabled 또는 IsEnabled로 설정해야합니까? – series0ne

+0

나는 여전히'Enabled'를 선호합니다. 동사를 포함 시키면 .... 또는 클래스의 속성과 같은 속성을 생각하는 동안 동작을 생각 나게합니다. – Steve

4

이 답변은 가정 질문 자바 관련이있다 :

규칙을 이동하는 것이 좋습니다. Spring과 같은 일부 프레임 워크는 Java Beans 협약과 밀접하게 결합됩니다.

1

C# 속성은 메서드가 아닙니다. 글쎄, 그들은 방법이지만, 특별한 유형의 방법입니다.

는이 같은 속성을 선언 :

public bool Enabled 
{ 
    get 
    { 
     // return your value 
    } 
    set 
    { 
     // assign your value 
    } 
} 
+1

개인 환경 설정이지만, 또한 내 속성이 verby가 아닐 수도 있습니다. 이것이 C#이고 이것을 구현했다면, 나는 단지 그것을 'Enabled'라고 명명 할 것입니다. 당신은 그것이 방법이 아니라는 것이 맞습니다. 그래서 나는 이름으로 동사 나 동사와 같은 방법 대회에서 벗어날 것을 부끄러워 할 것입니다. –

+0

당신이 이미 동사 나 동사구를 사용하고 있다는 것을 결코 두려워하지 마십시오. 'IsEnabled'라고 말하면, 과거의 어떤 시점에서 * enabled *되어 있는지 아닌지를 말하는 것보다 * 명백하게 더 명확합니다. – cHao

0

자바에서 :

모든 getter 및 setter는 4 자 이상이어야하며 대문자 네 번째 편지가 있어야합니다.

게터는 boolean 또는 Boolean입니다. 길이는 3 자이고 is으로 시작할 수 있으며 세 번째 문자는 대문자 여야합니다. 하나 내가

public bool Enabled 
{ 
    get { return _enabledValue;} 
    set { _enabledValue = value;} 
} 

을 C 번호를 선호하는 이유 (많은)의

+1

첫 번째 줄에 "네 번째"라고 표시해야합니까? –

+0

@MarcGravell 정말로, 고맙습니다. –

+0

getters와 setters가 4 자 이상이어야하는 이유는 무엇입니까? 프로그램이 중단되거나 중단되어야한다면 프로그램이 중단 되나요? 그렇지 않으면 "반드시 사용해야할까요?" – series0ne