ComputerProgrammingwithGNUSmalltalk:3.3
메시지 연쇄
객체 이름에 하나 이상의 메시지를 쓴다면, 모든 메시지들은 이전 메시지의 결과 객체에 전달될 것입니다. 이것을 메시지 연쇄 message chaining 라 합니다. 메시지 연쇄에 대한 예는 다음과 같습니다.
objectName message1 message2 message3 ... messageN
따라서 message1이 바로 objectName에 전달될 때, message2는 objectName message1 표현식의 결과값으로 나오는 객체에 전달됩니다. 같은 논리로 message3는 표현식 objectName message1 message2의 결과 객체에 전달된다고 말할 수 있습니다.
여기 메시지 연쇄가 실제 쓰이는 예제를 보겠습니다.
'Canol' reverse asUppercase
'LONAC'
여기서 Canol 문자열은 결과 문자열 객체인 ‘LONAC’ 에 도달할 때까지 2 번의 메시지를 통해 생성하였습니다.