SqueakByExample:6.10: Difference between revisions

From 흡혈양파의 번역工房
Jump to navigation Jump to search
(SBE 스몰토크에서여러분은코드를잃어버릴수있습니다 페이지 추가)
 
(번역수정)
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
==스몰토크에서, 여러분은 코드를 잃어버릴 있습니다==
==스몰토크에서, 여러분은 코드를 잃을 없습니다==


스퀵에서 충돌이 일어날 확률은 꽤 많습니다: 스퀵은 실험 시스템으로서,스퀵이 작동되게 하는데 있어 핵심적인 것들을 포함한 모든 것들에 대해 여러분의 변경을 허용합니다.
스퀵에서 충돌은 자주 일어납니다: 스퀵은 실험적인 시스템으로서, 스퀵의 작동에 있어 핵심적인 것들을 포함한 모든 것들에 대한 변경을 허용합니다.




{{CommentSqueak|짖굿게 스퀵을 충돌시키려면, 오브젝트를 nll이 되도록 시도하십시오.}}
{{CommentSqueak|고의로 스퀵에서 충돌을 보고싶다면, 오브젝트를 nil이 되도록 시도하십시오.}}




좋은 소식은 심지어 여러분이 충돌을 시키고 여러분의 이미지의 마지막 저장된 버전으로 돌아가도 여러분은 결코 어떤 작업도 잃어버리지 않으실 것이라는 점이며, 그 작업은 아마도 몇 시간 정도의 나이를 가질 것입니다. 그 이유는 여러분이 실행한 모든 코드들이 .chages file에 저장되었기 때문입니다. 그것이 모든 것입니다! 이것은 프로그래밍을 할 때에 클래스에 여러분이 더한 코드뿐만이 아니라 워크스페이스에서 여러분이 평가한 라이너(liners)를 포함합니다
하지만 좋은 소식은 강제로 스퀵을 충돌시키고 작업중인 이미지의 마지막 저장된 버전으로 돌아간다 하더라도, 결코 어떤 작업도 잃어버리지 않을거라는 점이며, 몇시간정도 이전으로 돌아가게 될겁니다. 걱정할 필요는 없으며 사용자가 실행한 모든 코드들은 .chages file에 저장되어있기 때문이죠. 이게 전부입니다! 이 파일에는 프로그래밍을 할 때에 클래스에 여러분이 더한 코드뿐만이 아니라 워크스페이스에서 사용자가 실행하는 한줄한줄의 코드까지 포함되어있으니까요.


여기에 우리가 다시 여러분의 코드를 얻는 지침이 있습니다. 여러분이 코드를 얻기 까지 이 지침을 읽을 필요가 없습니다. 그럼에도 불구하고, 여러분이 그 지침이 필요할 때, 여기서 여러분을 기다리는 것을 찾으실 있을 것입니다.
여기 이전에 작업되었던 코드를 얻는 방법이 있습니다. 사실 코드를 얻어야할 필요가 생기기전에 굳이 이런 방법을 알아야할 필요는 없습니다. 하지만 이 방법이 필요할때 여기서 원하는 내용을 찾을 있을겁니다.


최악의 경우에, 여러분은 .changes file에서 텍스트 에디터(text editor)를 사용할 수 있지만, 많은 메가바이트 크기가 있으므로, 속도가 늦어질 수 있으므로 권장하지 않습니다. 스퀵은 여러분에게 더 나은 방법들을 제공합니다.  
가장 안좋은 상황의 경우 .changes 파일에  텍스트에디터를 사용하면 되겠지만, 파일의 용량이 몇메가정도로 크기때문에 속도문제등을 고려해서 그리 권장하지는 않습니다. 스퀵은 에디터를 쓰는것보다 나은 방법을 제공합니다.


===여러분의 스퀵코드를 다시 얻는 방법===


스퀵을 가장 최근의 스넷샷(snapshot)으로부터 다시 시작하시고, {{Template:HighlightGray|World ▷ help  ▷useful expressions}} 을 선택합니다. 이 선택은 유용한 표현식들의 워크스페이스를 완전히 열 것입니다. 첫 번째 3개는, 복구를 위해 가장 유용합니다.


===당신의 스퀵코드를 다시 얻어내는 방법===
스퀵을 가장 최근의 스냅샷으로부터 다시 시작하시고, {{Template:HighlightGray|World ▷ help  ▷useful expressions}} 을 선택합니다. 이 기능은 유용한 표현식들이 있는 워크스페이스를 열게됩니다. 첫 번째 3개는, 복구를 위해 가장 유용하게 쓸 수 있습니다.


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




만약 여러분이 ChangeListbrowseRecentLog를 실행하시면, 여러분이 검색하기를 원하시는 히스토리의 범위를 결정할 수 있는 기회를 갖으실 수 있습니다. 보통, 마지막 스넵샷 만큼 멀리 돌아갈 수 있는 범위로 검색을 하면 충분할 것입니다. (여러분은 ChangeListbrowseRecent:2000를 편집하여 훨씬 더 근접한 효과를 얻으실 있으므로, trial 또는 error를 사용한 숫자 2000는 어떤 다른 것이 됩니다)
만약 ChangeListbrowseRecentLog를 실행하면, 검색을 원하는 history의 범위를 결정할 수 있습니다. 보통, 마지막 스냅샷 만큼 멀리 되돌아갈 수 있는 범위로 검색을 하면 충분할 겁니다. (ChangeList browseRecent: 2000 을 편집해서 원하는것과 비슷한 효과를 얻을 있으며 2000이라는 숫자는 trial 과 error 를 사용하는것과는 다릅니다.)
 
최근변경브라우저<sup>recent changes browser</sup> 에서 판단,제안,변경등을 마지막스냅샷으로 되돌리면, 그동안 스퀵이미지를 저장하기 전까지 작업한 모든 목록을 얻을 수 있습니다. 노랑 버튼을 사용하면 이렇게 얻어진 목록에서 원하는 아이템들을 지울 수 있습니다. 아이템들을 삭제하다가 만족할만한 상태가 됐을때, 남아 있는 것들에 대해 file in 을 진행함으로서, 새로운 이미지에 변경사항들을 결합시킬 수 있습니다. file in 을 하기 전에, 일반적 변경세트 브라우저<sup>the ordinary change set browser</sup>를 사용하여 현재의 변경세트에서 새로운 변경세트를 시작하는 것은 좋은 방법이며, 그렇게 함으로써 여태까지 모든 복구된 코드는 새로운 변경세트로 들어갑니다. 그 다음 이렇게 새로만들어진 변경세트를 file out 할 수 있습니다.


일단 여러분이 여러분의 마지막 스넵샷(snapshot)만큼, 브라우저와 보이기(showing)와 말하기(say)와 변경을 되돌리면, 그 시간 동안 스퀵에게 수행한 모든 것들의 목록을 가질 수 있습니다. 여러분은 노랑 버튼을 사용하여 이 목록에서 아이템들을 지울 수 있습니다. 만족하실 때, 남아 있는 그것에 파일 들어가기(file in)를 할 수 있으므로, 여러분의 새로운 이미지에 변경사항들을 결합시킬 수 있습니다. 파일 들어가기를 하기 전에, 보통 변경 세트(the ordinary change set browser)를 사용하여 새로운 변경세트를 시작하는 것은 좋은 실행법이며, 그렇게 함으로써 여러분의 모든 복구된 코드는 새로운 변경세트에 있게 될 것입니다. 그 다음 이 변경세트를 파일 나가기(file out)할 수 있습니다.


최근변경브라우저에서 사용할 수 있는 유용한 기능은 {{Template:HighlightGray|remove doIts}} 입니다. 일반적으로, doIts에 해당되는 작업들은 변경세트에 저장되지 않기때문에 File in(그리고 재실행)을 할 수 없습니다. 하지만 예외가 있습니다. 변수생성과는 다르게 클래스생성은 {{Template:HighlightGray|doIt}} 하는 시점에서 변경세트에서 확인이 가능합니다. 특정 클래스에 대한 메서드를 file in 한다면 그전에 클래스는 존재되어 있어야 합니다. 메서드 file in 과정에서 새로운 클래스를 만들어야 하는 경우, file-in 을 통해 먼저 클래스를 생성하고,{{Template:HighlightGray|remove doIts}} 를 진행하고 메서드를 file in 해야합니다.


최근의 변경 브라우저에서 수행할 수 있는 한 가지 유용한 것은 {{Template:HighlightGray|dolts 제거하기(remove)}} 입니다. 보통, 여러분은 dolts에 파일 들어가기(또한 재실행)를 하실 수 없을 것입니다. 그럼에도 불구하고 예외가 있습니다. 클래스를 만드는 작업은 {{Template:HighlightGray|dolt}}로서 나타납니다. 여러분이 클래스를 위해 메소드에서 새로운 클래스들을 만드셨다면 첫 번째 클래스 생성 dolts(the class creation dolts)에 파일 들어가기(file in)를 하고, 그 다음 {{Template:HighlightGray|dolts를 제거(remove)}}한 다음 메소드에 파일 들어가기를 해야 합니다.
저는 복구를 끝냈을 때, 나만의 새로운 변경 세트를 file out 한후, 이미지를 저장하지 않고 스퀵을 종료했다가, 재시작 해서 새로운 변경 세트 파일이 정확하게 다시 복구되도록 하는것을 선호합니다.


저는 복구를 끝냈을 때, 저의 새로운 변경 세트를 파일 나가기(file out)하고, 이미지를 저장하지 않고 스퀵에서 나가고, 재시작 하여 새로운 변경 세트 파일이 명확하게 다시 복구되도록 만들기를 좋아합니다.


==Notes==
==Notes==

Revision as of 10:44, 14 March 2013

스몰토크에서, 여러분은 코드를 잃을 수 없습니다

스퀵에서 충돌은 자주 일어납니다: 스퀵은 실험적인 시스템으로서, 스퀵의 작동에 있어 핵심적인 것들을 포함한 모든 것들에 대한 변경을 허용합니다.


Squeak comment.png고의로 스퀵에서 충돌을 보고싶다면, 오브젝트를 nil이 되도록 시도하십시오.


하지만 좋은 소식은 강제로 스퀵을 충돌시키고 작업중인 이미지의 마지막 저장된 버전으로 돌아간다 하더라도, 결코 어떤 작업도 잃어버리지 않을거라는 점이며, 몇시간정도 이전으로 돌아가게 될겁니다. 걱정할 필요는 없으며 사용자가 실행한 모든 코드들은 .chages file에 저장되어있기 때문이죠. 이게 전부입니다! 이 파일에는 프로그래밍을 할 때에 클래스에 여러분이 더한 코드뿐만이 아니라 워크스페이스에서 사용자가 실행하는 한줄한줄의 코드까지 포함되어있으니까요.

여기 이전에 작업되었던 코드를 얻는 방법이 있습니다. 사실 코드를 얻어야할 필요가 생기기전에 굳이 이런 방법을 알아야할 필요는 없습니다. 하지만 이 방법이 필요할때 여기서 원하는 내용을 찾을 수 있을겁니다.

가장 안좋은 상황의 경우 .changes 파일에 텍스트에디터를 사용하면 되겠지만, 파일의 용량이 몇메가정도로 크기때문에 속도문제등을 고려해서 그리 권장하지는 않습니다. 스퀵은 에디터를 쓰는것보다 나은 방법을 제공합니다.


당신의 스퀵코드를 다시 얻어내는 방법

스퀵을 가장 최근의 스냅샷으로부터 다시 시작하시고, World ▷ help ▷useful expressions 을 선택합니다. 이 기능은 유용한 표현식들이 있는 워크스페이스를 열게됩니다. 첫 번째 3개는, 복구를 위해 가장 유용하게 쓸 수 있습니다.

Smalltalk recover: 10000.
ChangeList browseRecentLog.
ChangeList browseRecent: 2000.


만약 ChangeListbrowseRecentLog를 실행하면, 검색을 원하는 history의 범위를 결정할 수 있습니다. 보통, 마지막 스냅샷 만큼 멀리 되돌아갈 수 있는 범위로 검색을 하면 충분할 겁니다. (ChangeList browseRecent: 2000 을 편집해서 원하는것과 비슷한 효과를 얻을 수 있으며 2000이라는 숫자는 trial 과 error 를 사용하는것과는 다릅니다.)

최근변경브라우저recent changes browser 에서 판단,제안,변경등을 마지막스냅샷으로 되돌리면, 그동안 스퀵이미지를 저장하기 전까지 작업한 모든 목록을 얻을 수 있습니다. 노랑 버튼을 사용하면 이렇게 얻어진 목록에서 원하는 아이템들을 지울 수 있습니다. 아이템들을 삭제하다가 만족할만한 상태가 됐을때, 남아 있는 것들에 대해 file in 을 진행함으로서, 새로운 이미지에 변경사항들을 결합시킬 수 있습니다. file in 을 하기 전에, 일반적 변경세트 브라우저the ordinary change set browser를 사용하여 현재의 변경세트에서 새로운 변경세트를 시작하는 것은 좋은 방법이며, 그렇게 함으로써 여태까지 모든 복구된 코드는 새로운 변경세트로 들어갑니다. 그 다음 이렇게 새로만들어진 변경세트를 file out 할 수 있습니다.


최근변경브라우저에서 사용할 수 있는 유용한 기능은 remove doIts 입니다. 일반적으로, doIts에 해당되는 작업들은 변경세트에 저장되지 않기때문에 File in(그리고 재실행)을 할 수 없습니다. 하지만 예외가 있습니다. 변수생성과는 다르게 클래스생성은 doIt 하는 시점에서 변경세트에서 확인이 가능합니다. 특정 클래스에 대한 메서드를 file in 한다면 그전에 클래스는 존재되어 있어야 합니다. 메서드 file in 과정에서 새로운 클래스를 만들어야 하는 경우, file-in 을 통해 먼저 클래스를 생성하고,remove doIts 를 진행하고 메서드를 file in 해야합니다.

저는 복구를 끝냈을 때, 나만의 새로운 변경 세트를 file out 한후, 이미지를 저장하지 않고 스퀵을 종료했다가, 재시작 해서 새로운 변경 세트 파일이 정확하게 다시 복구되도록 하는것을 선호합니다.


Notes