메서드를 void로 반환하는 대신 특정한 의미를 가지지 않는 경우에도 클래스에 대한 참조를 반환했습니다. 나에게 그것은 메소드가 호출되는 방식에 대한 더 많은 옵션을 제공하여 유창한 인터페이스와 같은 스타일로 사용할 수있게 해주고 아무 것도 할 필요가 없으므로 어떤 단점도 생각할 수없는 것처럼 보입니다. 반환 값 (심지어 그것을 저장).무효 대신에 이것을 반환하면 어떤 단점이 있습니까?
개체를 업데이트 한 다음 현재 값을 반환하려는 상황에 있다고 가정합니다. 나는 충동에 아래의 질문, 생각해 보면, 내가 동의합니다 대신
myObj.Update();
var val = myObj.GetCurrentValue();
말을 당신은
var val = myObj.Update().GetCurrentValue();
이
EDIT 말을 두 줄을 결합 할 수있을 것입니다 가능성이 불필요하고 복잡하게 될 가능성이 있지만, 공백보다는 오히려 이것을 반환에 관한 내 질문.
var val = myObj.Update()<.GetCurrentValue();
이 연산자는 myObj.Update (그래서 우선 순위가 낮은 순서 것)을 실행합니다 : 너희들이 언어를 가지고 어떻게 생각하십니까 관련 메모에
는 문법적의 새로운 비트를 포함 먼저 Update의 void 반환 대신 myObj에서 GetCurrentValue()를 호출하십시오.필자는 "왼쪽의 첫 번째 유효한 개체에서 연산자의 오른쪽에 메서드를 호출하십시오"라는 연산자를 상상하고 있습니다. 이견있는 사람?
smalltalk ftw, 비록 당신이 그걸로 멋지게 체인을 만들 수는 없지만 –