SqueakByExample:2.9

From 흡혈양파의 번역工房
Revision as of 07:47, 20 February 2013 by Onionmixer (talk | contribs) (번역수정)
Jump to navigation Jump to search

스몰 토크 코드를 저장하고 공유하기

이제 Quinto 게임이 동작하면, 친구와 공유할 수 있도록 어딘가에 저장해야할 것입니다. 물론 여러분은 자신의 전체 스퀵 이미지를 저장할 수 있으며, 이미지를 실행하여 여러분의 첫 번째 프로그램을 자랑할 수 있지만, 여러분의 친구들은 아마도 그들의 이미지에, 자신들만의 코드를 포함하려 할 것이고, 여러분의 이미지를 사용하기 위해 그 코드를 포기하고 싶지는 않을겁니다. 필요한 것은 여러분의 스퀵 이미지 외부에서 소스 코드를 얻는 방법이며, 이대로 하면 다른 프로그래머들이 그 소스코드를 자신의 것으로 만들 수 있을 것입니다.

이 작업을 수행하는 가장 쉬운 방법은 코드를 파일로 내보내기하는 것입니다. 시스템 카테고리 창에서 노랑 버튼 메뉴는, SBE-Quinto 카테고리의 전체 내용을 파일로 내보내기 위한 옵션을 제공할 것입니다. 이런 작업의 결과로서 나온 파일은 사람이 읽기에는 좀 더 어렵지만, 컴퓨터용이지 사람을 위한 것은 아닙니다. 이 파일을 친구에게 이메일로 보낼 수 있으며, 친구들은 파일 목록 브라우저the file list browser를 사용하여, 그들의 스퀵 이미지에 파일을 넣을 수 있습니다.


Squeak comment.pngSBE-Quinto 카테고리에서 노랑 클릭하고 내용을 fileOut 하십시오.


여러분의 이미지를 저장한 디스크의 같은 폴더에서 "SBE-Quinto.st"라고 하는 파일을 찾을 수 있습니다. 텍스트 편집기로 파일을 살펴보도록 하겠습니다.[1]


Squeak comment.png최신 스퀵 이미지를 열고 SBE-Quinto.st 파일 출력을 file in 하기 위해 파일 목록 도구(File List tool)를 사용하십시오. 새 이미지에서 게임의 동작을 검증하십시오.


그림 2.14: 스퀵 소스 코드 파일에 넣기


몬티첼로(Monticello) 패키지

비록 파일로 내보내기가 여러분이 작성한 코드의 스냅샷을 만드는 편리한 방법이지만, 이 방법은 확실히 "구식"입니다. 대부분의 오픈소스 프로젝트를, CVS[2] 또는 Subversion[3]을 사용하여 저장소에서 그들의 코드를 유지하는 작업이 훨씬 더 편리한 것처럼, 스퀵 프로그래머도, 몬티첼로Monticello 패키지를 사용하여 코드를 관리하는 것이 훨씬 더 편리합니다. 이러한 패키지들은 .mcz로 끝나는 이름을 가진 파일로 표현하며, 실제로는 패키지의 모든 코드를 zip으로 압축한 번들입니다.

몬티첼로 패키지 브라우저를 사용하여, FTP와 HTTP 서버를 포함한 다양한 형식의 서버에 있는 저장소에 패키지를 저장할 수 있으며, 또한 로컬 파일 시스템 디렉터리에서 패키지를 바로 작성할 수 있습니다. 패키지의 사본은 항상 로컬 하드 디스크의 package-cache 폴더에 캐쉬합니다. 몬티첼로Monticello는 여러분의 프로그램에 대해 다양한 버전을 저장하고, 버전을 병합하며, 이전 버전으로 되돌리고, 버전간의 차이를 탐색할 수 있게 합니다. 사실 몬테첼로는 분산 리비전 관리 시스템이며, 이는 몬테첼로가 CVS 또는 서브버전 git 또는 Mercurial의 경우처럼, 개발자들의 작업을 다양한 장소에 저장할 수 있게 해준다는 의미입니다.

이메일로 mcz 파일을 보낼 수도 있습니다. 수신자는 package-cache 폴더에 저장할 수 있으며, 이 파일을 불러오고 검색하기 위해 몬티첼로Monticello를 사용할 수 있습니다.


Squeak comment.pngWorld ▷ open... ▷Monticello browser 를 선택하여 몬티첼로 브라우저를 여십시오.


브라우저의 오른쪽 창을 보시면(그림 2.15를 보십시오) 여러분이 사용하고 있는 이미지에 불러온 코드의 모든 저장소를 포함한 몬티첼로 저장소들의 목록을 보실 수 있습니다.


그림 1.5 몬티첼로 브라우저


몬티첼로 브라우저에서 우측 최상단의 디렉터리는 네트워크를 통해 불러오고 내보낸 패키지의 사본을 캐시 하는 package-cache 로컬 디렉터리입니다. 이 로컬 캐쉬는 유용한데, 로컬 기록을 유지해주기 때문입니다. 인터넷 접근 할 수 없거나, 원격 저장소에 자주 저장하고 싶지 않을 정도로 연결이 상당히 느린 곳에서도 작업할 수 있게 해줍니다.


몬티첼로에서 코드 저장하고 불러오기

몬티첼로 왼쪽을 보시면 이미지로 불러온 버전 정보를 포함한 패키지 목록이 있습니다. 불러온 이후로 수정된 패키지는 별표(*)로 표시합니다(때때로 이러한 패키지들은 dirty package 로 일컬어지기도 합니다). 패키지를 선택하면 저장소의 목록은 선택한 패키지의 사본을 포함하는 저장소로 제한됩니다.

패키지는 뭘까요? 동일한 접두사를 공유하는 클래스와 메서드 카테고리의 그룹으로 생각할 수 있습니다. Quinto 게임의 모든 코드를 SBE-Quinto라 부르는 클래스 카테고리에 모두 집어 넣었기 때문에, SBE-Quinto Package 로 그 패키지를 지칭할 수 있습니다.


Squeak comment.pngSBE-Quinto 패키지를 +Package 버튼을 사용하고 SBE-Quinto를 입력하여 몬티첼로Monticello 브라우저에 SBE-Quinto 패키지를 추가하십시오.


SqueakSource: 스퀵용 소스 포지(Source Forge)

코드를 저장하고 공유하는 최고의 방법은 SquakSource(스퀵소스) 서버에 프로젝트를 위한 계정을 만드는 것이라고 생각합니다. SquakSource는 SourceForge[4]를 닮았습니다. 프로젝트를 관리해주는 웹 프론트엔드 HTTP 몬티첼로 서버입니다. http://www.squeaksource.com 에 공용 스퀵 소스 서버가 있으며, 이 책에 관련된 코드 사본은 http://www.squeaksource.com/SqueakByExample.html 에 저장되어 있습니다. 웹브라우저로 이 프로젝트를 볼 수 있지만, 자신의 패키지를 관리할 수 있도록 해주는 몬티첼로 브라우저를 사용하여 스퀵 내부로부터 작업을 하는 것이 훨씬 더 생산적입니다.


Squeak comment.png웹 브라우저에서 http://www.squeaksource.com 을 여십시오. 여러분의 계정을 만들고 Quinto 게임에 대한 프로젝트를 만드십시오(예를 들면 "register").


SqueakSource는 몬티첼로 브라우저를 사용하여 저장소를 추가했을 때, 활용할 정보를 보여줄 것입니다.

SqueakSource에 프로젝트를 만들었으면, 스퀵 시스템에 이 저장소를 사용하도록 알려야합니다.


Squeak comment.pngSBE-Quinto 패키지를 선택했으면, 몬티첼로 브라우저에서 +Repository 버튼을 클릭하십시오.


사용할 수 있는 다른 형식의 저장소가 목록에 보일 것입니다. SqueakSource 저장소를 추가하려면 HTTP를 선택하십시오. 서버에 대한 필요한 정보가 대화 상자에 뜰 것입니다. SqueakSource 프로젝트를 식별하려면 나타난 템플릿을 복사하고 몬티첼로에 넣은 다음 서명과 암호를 기재하십시오:

MChttpRepository 
  location: 'http://www.squeaksource.com/YourProject'
  user: 'yourInitials'
  password: 'yourPassword'


빈 서명과 암호를 제공해도 프로젝트를 불러올 수 있지만 업데이트할 수는 없습니다:


MCHttpRepository
  location: 'http://www.squeaksource.com/YourProject'
  user: ''
  password: ''


이 템플릿을 accept 하면 몬티첼로 브라우저 오른쪽에 여러분의 새 저장소가 뜹니다.


그림 2.16: 몬티첼로 저장소 탐색


Squeak comment.pngSqueakSource에서 Quinto 게임의 첫 번째 버전을 저장하기 위해 Save 버튼을 누르십시오.


이미지에 패키지를 불러오려면, 먼저 특정 버전을 선택해야 합니다. 이 동작은 Open 버튼 또는 노랑-버튼 메뉴를 사용하여 열 수 있는 저장소 브라우저에서 수행할 수 있습니다. 버전을 선택하면 이미지에 해당 버전을 불러올 수 있습니다.


Squeak comment.png방금 저장한 SBE-Quinto 저장소를 여십시오.


몬티첼로는 6장에서 더 깊게 논의할 수 있는 많은 기능이 있습니다. http://www.wiresong.ca/Monticello/ 에서 몬티첼로 온라인 문서를 찾아보실 수 있습니다.


Notes

  1. one click버전은 Contents/Resources/ 디렉토리 안에 파일이 있습니다. 클래스이름의 대소문자까지 정확하게 구분하니 참고하는것이 좋고 저 Resources 디렉토리는 squeak의 image가 있는 디렉토리니 다른경로에 image를 두는경우도 참고해두면 좋습니다
  2. http://www.nongnu.org/cvs
  3. http://subversion.tigris.org
  4. http://www.sourceforge.net