SqueakByExample:1.4: Difference between revisions

From 흡혈양파의 번역工房
Jump to navigation Jump to search
mNo edit summary
 
(검수 20180718)
 
(16 intermediate revisions by the same user not shown)
Line 1: Line 1:
==작업 공간과 기록 창(Transcript)==
==Workspace 와 Transcript==


{{CommentSqueak|모든 열린 창을 닫으십시오. 도구 접이 플랩(the Tools flap)을 열기 위해 스퀵 환경에서 맨 오른쪽에 있는 {{Template:HighlightGray|Tools(도구)}} 탭을 클릭하십시오.}}
{{CommentSqueak|열려 있는 모든 창을 닫으십시오. 도구 플랩(the Tools flap)을 열기 위해 스퀵 환경 맨 오른쪽에 있는 {{Template:HighlightGray|Tools}} 탭을 클릭하십시오.}}




여러분은 나온 스퀵의 몇몇 중요 도구(그림 1.9)들을 위한 아이콘들을 보실 것입니다. 기록 창과 작업 공간을 끌어 움직입니다.
스퀵의 몇 가지 핵심 도구를 위한 아이콘(그림 1.9)보실 것입니다. Transcript 와 Workspace 를 끌어 움직입니다.




{{CommentSqueak|기록 창과 작업 공간을 움직여 크기를 조정하고, 작업 공간과 기록 창을 정확히 겹치도록 만드십시오.}}
{{CommentSqueak|Transcript와 Workspace 창의 위치와 크기를 조절하여, Workspace 와 Transcript를 정확히 겹치도록 만드십시오.}}




여러분은 모서리들 중 하나를 끌어 움직이거나, “morphic handles”(변형 핸들)을 불러오기 위해 창을 파랑-클릭하고 노란색 하단 아래쪽 핸들을 끌어 움직임으로써 창 크기를 다시 조정 할 수 있습니다.
모서리들 중 한 곳을 끌어 움직이거나, "모픽 손잡이<sup>morphic handles</sup>"를 불러오기 위해 창을 파랑 클릭하고 하단 아래쪽의 노랑 핸들을 끌어 움직여 창 크기를 다시 조정 할 수 있습니다.


언제든 오직 한 개의 창만 활성화됩니다. 항상 위에 위치하게 되고 해당 라벨이 강조됩니다. 마우스 커서는 타이핑을 원하는 창에 반드시 위치해야 합니다.  
항상 오직 한 개의 창만 활성화됩니다. 항상 위에 위치하며 해당 라벨이 강조됩니다. 마우스 커서는 입력을 원하는 창에 반드시 위치해야 합니다.  


기록 창은 시스템 메시지를 기록하기 위해 종종 사용되는 객체입니다. 기록 창은 “시스템 콘솔”의 한 종류입니다. 기록 창은 매우 느리므로, 만약 여러분이 기록 창을 열고 특정한 연산을 위해 쓰기를 할 경우, 10배나 더 느려진다는 것을 참고하셔야 합니다. 뿐만 아니라, 기록 창은 스레드로부터 안전하지 않으므로, 만약 여러 객체를 기록 창에 동시에 기록할 경우 이상한 문제들을 경험할 있습니다.  
Transcript 는 시스템 메시지를 기록하기 위해 종종 사용되는 객체입니다. Transcript는 “시스템 콘솔”의 한 종류입니다. Transcript는 매우 느리므로, Transcript를 열고 특정 연산을 위해 기록을 진행할 경우, 10배나 더 느려진다는 것을 참고하셔야 합니다. 뿐만 아니라, Transcript는 스레드로부터 안전하지 않으므로, 여러 객체를 Transcript에 동시에 기록을 진행할 경우, 이상한 문제들을 경험할 수도 있습니다.  


작업 공간은 여러분이 실험하고 싶은 스몰토크 코드 일부를 입력하는 작업에 유용합니다. 여러분은 또한 단순히 할 일 목록(to-do lists) 또는 누군가가 여러분의 이미지를 사용할 때를 위한 설명서와 같이, 기억을 원하는 임시 텍스트를 입력하는 용도로 작업 공간을 사용할 수 있습니다. 작업 공간은 이전에 우리가 다운로드한 표준 이미지의 경우와 같이, 종종 캡쳐한 이미지에 대한 문서를 유지하기 위해 자주 사용합니다. (그림 1.2 참조)
Workspace 는 실험하고 싶은 스몰토크 코드의 일부를 입력하는 작업에 유용합니다. 또한 단순히 할 일 목록<sup>to-do lists</sup> 또는 누군가가 여러분의 이미지를 사용할 때를 위한 설명서처럼, 기억하기를 원하는 임시 텍스트를 입력하는 용도로 Workspace 를 사용할 수 있습니다. Workspace 는 이전에 다운로드한 표준 이미지의 경우처럼, 종종 캡쳐한 이미지에 대한 문서를 유지하기 위해 자주 사용합니다. (그림 1.2 참조)




{{CommentSqueak|다음 텍스트를 작업 공간에 입력하십시오.}}
{{CommentSqueak|다음 텍스트를 Workspace 에 입력하십시오.}}


<syntaxhighlight lang="smalltalk">
<syntaxhighlight lang="smalltalk">
Line 25: Line 25:
</syntaxhighlight>
</syntaxhighlight>


여러분이 방금 입력한 텍스트의 다양한 지점에서 작업 공간 더블 클릭을 시도합니다. 클릭한 장소에 따라, 어떻게 전체 단어, 전체 문자열(string) 또는 전체 텍스트를 선택하는지에 주목하도록 합니다.
방금 입력한 텍스트의 아무 지점에서 Workspace 안의 내용을 더블 클릭 해보십시오. 클릭한 장소에 따라, 어떻게 전체 단어, 전체 문자열 또는 전체 텍스트가 선택되는지에 대해 주목하도록 합니다.




{{CommentSqueak|여러분이 타이핑한 텍스트를 선택하고 노랑 버튼을 클릭하십시오. {{Template:HighlightGray|do it (d)}}을 선택하십시오.}}
{{CommentSqueak|입력한 텍스트를 선택하고 노랑 클릭하십시오. {{Template:HighlightGray|do it (d)}}을 선택하십시오.}}




기록 창(그림 1.10)에 어떻게 “hello world”가 나타나는지를 주목합니다. 다시 같은 작업을 시도합니다. (메뉴 항목 {{Template:HighlightGray|do it (d)}} 에 있는 {{Template:HighlightGray|(d)}}는 바로가기 키가 해야 할 일이 CMD-d라는 것을 알려줍니다. 이에 대한 더 많은 내용은 다음 섹션에서 살펴보겠습니다!)
Transcript창(그림 1.10)에 "hello world" 텍스트가 어떻게 나오는지 살펴보십시오. 그리고 다시 해보십시오. (메뉴 항목 {{Template:HighlightGray|do it (d)}} 에 있는 {{Template:HighlightGray|(d)}}는 단축키가 CMD-d임을 알려줍니다. 더 많은 내용은 다음 장을 참고하십시오!)
 
[[image:Doit.png|none|621px|thumb|그림 1.10: 프로그램식 "수행"]]
 
 
방금 첫번째 스몰토크 프로그램식을 처리했습니다! Transcript 객체에 메시지와 cr[개행 문자(carrige return)] 가 따라오는 show: 'hello world' 메시지를 보냈습니다. Transcript 는 따라오는 메시지로 무엇을 해야 할 지 결정하려고 했고 show: 와 cr 메시지를 다루기 위한 메서드를 찾았으며, 적절하게 반응하였습니다.
 
스몰토커와 한동안 대화를 해보셨다면, "연산 호출<sup>call an operation</sup>" 또는 "메서드 불러오기<sup>invoke a method</sup>"와 같은 표현을 사용하지 않고, 그 대신 "메시지 보내기<sup>send a message</sup>"라는 표현을 사용함을 재빨리 눈치채셨을 것입니다. 객체가 그 자체의 동작에 책임을 갖고 있다는 생각을 나타내는 표현입니다. 객체가 무슨 일을 하는지 ''알려'' 주는 것이 아니라, 대신 메시지를 보내서 객체에게 무엇을 할 지 정중하게 ''요청''합니다. 여러분이 지정하는 것이 아닌, 객체가 스스로 여러분의 메시지에 반응하기 위한 적절한 메서드를 선택합니다.


여러분은 방금 자신의 스몰토크 표현식(expression)을 처리했습니다! 즉 기록 창 객체에 메시지와 cr[개행 문자(carrige return)] 앞에 show: 'hello world'라는 메시지를 보냈습니다. 그 다음, 기록 창은 이 메시지로 무엇을 해야 할 지 결정했으며, show: 메서드를 취급하기 위한 그 자신의 메서드를 찾아보았으며 그리고 cr은 메시지를 보내고, 적절하게 반응하였습니다.


만약 여러분이 스몰토크 사용자와 한동안 대화를 해보셨다면, 그들이 “연산 호출(call an operation)” 또는 “메서드 불러내기(invoke a method)”와 같은 표현을 사용하지 않고, 그 대신 “메시지 보내기(send a message)”를 말할 것이라는 것을 재빨리 눈치채셨을 것입니다. 객체가 그 자체의 동작에 책임을 갖고 있다는 생각을 반영합니다. 여러분은 객체가 무얼 할 지를 알려 줄 수 없고, 대신 객체에 메시지를 보내어 객체에게 무엇을 할 지 정중하게 물어봅니다. 여러분이 아닌 객체가 여러분의 메시지에 응답하기 위한 적당한 메서드를 선택합니다.


==Notes==
==Notes==

Latest revision as of 15:12, 17 July 2018

Workspace 와 Transcript

Squeak comment.png열려 있는 모든 창을 닫으십시오. 도구 플랩(the Tools flap)을 열기 위해 스퀵 환경 맨 오른쪽에 있는 Tools 탭을 클릭하십시오.


스퀵의 몇 가지 핵심 도구를 위한 아이콘(그림 1.9)을 보실 것입니다. Transcript 와 Workspace 를 끌어 움직입니다.


Squeak comment.pngTranscript와 Workspace 창의 위치와 크기를 조절하여, Workspace 와 Transcript를 정확히 겹치도록 만드십시오.


모서리들 중 한 곳을 끌어 움직이거나, "모픽 손잡이morphic handles"를 불러오기 위해 창을 파랑 클릭하고 하단 아래쪽의 노랑 핸들을 끌어 움직여 창 크기를 다시 조정 할 수 있습니다.

항상 오직 한 개의 창만 활성화됩니다. 항상 위에 위치하며 해당 라벨이 강조됩니다. 마우스 커서는 입력을 원하는 창에 반드시 위치해야 합니다.

Transcript 는 시스템 메시지를 기록하기 위해 종종 사용되는 객체입니다. Transcript는 “시스템 콘솔”의 한 종류입니다. Transcript는 매우 느리므로, Transcript를 열고 특정 연산을 위해 기록을 진행할 경우, 10배나 더 느려진다는 것을 참고하셔야 합니다. 뿐만 아니라, Transcript는 스레드로부터 안전하지 않으므로, 여러 객체를 Transcript에 동시에 기록을 진행할 경우, 이상한 문제들을 경험할 수도 있습니다.

Workspace 는 실험하고 싶은 스몰토크 코드의 일부를 입력하는 작업에 유용합니다. 또한 단순히 할 일 목록to-do lists 또는 누군가가 여러분의 이미지를 사용할 때를 위한 설명서처럼, 기억하기를 원하는 임시 텍스트를 입력하는 용도로 Workspace 를 사용할 수 있습니다. Workspace 는 이전에 다운로드한 표준 이미지의 경우처럼, 종종 캡쳐한 이미지에 대한 문서를 유지하기 위해 자주 사용합니다. (그림 1.2 참조)


Squeak comment.png다음 텍스트를 Workspace 에 입력하십시오.

Transcript show: 'hello world'; cr.

방금 입력한 텍스트의 아무 지점에서 Workspace 안의 내용을 더블 클릭 해보십시오. 클릭한 장소에 따라, 어떻게 전체 단어, 전체 문자열 또는 전체 텍스트가 선택되는지에 대해 주목하도록 합니다.


Squeak comment.png입력한 텍스트를 선택하고 노랑 클릭하십시오. do it (d)을 선택하십시오.


Transcript창(그림 1.10)에 "hello world" 텍스트가 어떻게 나오는지 살펴보십시오. 그리고 다시 해보십시오. (메뉴 항목 do it (d) 에 있는 (d)는 단축키가 CMD-d임을 알려줍니다. 더 많은 내용은 다음 장을 참고하십시오!)

그림 1.10: 프로그램식 "수행"


방금 첫번째 스몰토크 프로그램식을 처리했습니다! Transcript 객체에 메시지와 cr[개행 문자(carrige return)] 가 따라오는 show: 'hello world' 메시지를 보냈습니다. Transcript 는 따라오는 메시지로 무엇을 해야 할 지 결정하려고 했고 show: 와 cr 메시지를 다루기 위한 메서드를 찾았으며, 적절하게 반응하였습니다.

스몰토커와 한동안 대화를 해보셨다면, "연산 호출call an operation" 또는 "메서드 불러오기invoke a method"와 같은 표현을 사용하지 않고, 그 대신 "메시지 보내기send a message"라는 표현을 사용함을 재빨리 눈치채셨을 것입니다. 객체가 그 자체의 동작에 책임을 갖고 있다는 생각을 나타내는 표현입니다. 객체가 무슨 일을 하는지 알려 주는 것이 아니라, 대신 메시지를 보내서 객체에게 무엇을 할 지 정중하게 요청합니다. 여러분이 지정하는 것이 아닌, 객체가 스스로 여러분의 메시지에 반응하기 위한 적절한 메서드를 선택합니다.


Notes