Kor:스크래치

🏴󠁧󠁢󠁥󠁮󠁧󠁿 스크래치(Scratch)는 매사추세츠 공과 대학 (MIT)의 평생 유치원 그룹이 개발한 무료 교육용 프로그래밍 언어로, 등록된 스크래처가 4100만 명 이상이며 웹 사이트에 공유된 프로젝트가 4200만 개에 이른다. 현재 버전인 3.0은 여기에서 다운로드 하거나 여기에 있는 온라인 에디터에서 접속할 수 있다(이전 버전인 스크래치 2.0은 여기에서, 스크래치 1.4는 여기에서 다운로드 받을 수 있다). 만 8세에서 만 16세 사이의 아이들을 대상으로 하며 고등학교 3학년까지 권장한다.

스크래치는 재미있고 교육적이며 배우기 쉽도록 고안되었다. 블록 기반 프로그래밍을 사용하여 이야기, 게임, 예술, 시뮬레이션 등을 제작할 수 있는 도구가 있다. 스크래치에는 그림판과 소리 에디터 또한 내장되어 있다.

스크래치에서 사용자는 퍼즐이나 레고같이 블록 팔레트에서 블록을 끌어와 다른 블록에 연결하여 프로그래밍 한다. 여기서 여러 블록의 구조는 스크립트라고 한다. 또한 이 프로그래밍 방법(블록으로 코드를 작성하는 것)은 "드래그 앤드 드롭"으로 불린다.

스크래치 웹사이트의 URL은 https://scratch.mit.edu 이다.

용도
스크래치는 아이들에게 기본적인 컴퓨터 프로그래밍을 소개하는 수단으로 전 세계의 학교에서 사용된다. 또한 학교 밖에서도 사용된다. 어린이, 심지어는 어른도 스크래치 프로그래밍의 기본 원리를 이해하고 자주 다른 프로그래밍 언어로 옮겨간다. 스크래치를 사용하는 동안, 사람들은 스크래치의 프로젝트를 만들고, 리믹스 하고, 다른 사람들과 공동으로 작업할 수 있다.

개발 환경
이 언어를 디자인 할 때, 제작자의 최우선 순위는 이해하기 쉽고 이전의 프로그래밍 경험이 없는 아이들이 쉽게 배울 수 있는 언어와 개발 환경을 만드는 것이었다. 강력한 멀티미디어 기능 및 멀티스레드 프로그래밍 방식과 스크래치 프로그래밍 언어의 제한된 범위 사이에는 뚜렷한 차이가 있다.

스크래치 개발 환경의 사용자 인터페이스는 여러 창으로 화면을 분할한다: 중간에 있는 것은 블록 팔레트이고, 오른쪽에 있는 것은 스크립트 영역이며, 무대와 스프라이트는 왼쪽에 있다. 블록 팔레트에는 프로그램을 만들기 위해 스크립트 영역으로 끌 수있는 코드 조각("블록"이라고 함)이 있다. 한 번에 많은 양의 블록을 표시하지 못하게 하고, 사용하기 쉽도록, 팔레트는 동작, 형태, 소리, 펜, 제어, 이벤트, 관찰, 연산, 변수 및 추가 블록과 같은 10 개의 탭으로 구성되어 있다.

단어 이름의 의미
"스크래치"는 평생 유치원 그룹의 프로그래밍 언어의 제목으로 사용되었다. 음악의 "스크래치"와 관련이 있다.

마찬가지로, 스크래치 안에서, 다양한 조각의 코드(블록)를 가져와서 함께 모으고 뭔가 새로운 것을 만든다.

단어의 변종
"스크래치"라는 단어는 스크래치 사용자 사이에서 다른 유명한 단어를 만들어 냈다.


 * 스크래처(Scratcher) 스크래치의 사용자
 * Scratching 스크래치를 사용하는 중이라는 뜻의 동명사/분사
 * Scratched(스크래치 됨) 다른 게임의 복제본을 만든 프로젝트다. 예: "스크래치된 팩맨"
 * 스크래치 시간대(Scratch Time) 토론방의 시각이 설정되는 시간대 (EST/EDT)
 * 스크래치 팀(Scratch Team) 웹 사이트의 운영자와 개발자.
 * 계속 스크래치를 즐기세요!(Scratch On!) 사용자를 격려하기 위해 스크래치 팀에 의해(다른 스크래처들도 사용하긴 하지만) 만들어지고 사용된 문구로 "스크래치를 계속 사용함"을 의미한다.

좌우명
스크래치의 좌우명은 "상상, 프로그래밍, 공유(Imagine, Program, Share)"이다. 이것은 스크래치 프로젝트를 만드는 기본 원칙을 따른다. 아이디어를 생각(상상)하고, 스크래치로 그 생각을 프로젝트로 만들고(프로그래밍), 마지막으로 그것을 커뮤니티에 올린다(공유)는 것이다. 스크래치 2.0이 발표된 이래로 이 좌우명은 웹 사이트에서 덜 알려져 왔다. 첫 페이지에는 더 이상 좌우명이 없지만 스크래치가 무엇인지에 대한 설명이 대신 있다.

버전
스크래치의 현재 버전은 3.0이고, 온라인 편집기와 오프라인 편집기는 2019년 1월 2일에 공식적으로 발표되었다. 스크래치의 이전 버전은 2013년 5월 9일에 출시된 스크래치 2.0이다. 더 이전 버전은 스크래치 1.4, 스크래치 1.3, 스크래치 1.2, 스크래치 1.1, 그리고 스크래치 1.0 이다. 각 버전에는 중대한 변경 사항이 있었으며 특히 2.0에서 3.0 사이에는 많은 변화가 있었다.

특징

 * 스크래치는 튜링 완전하다.
 * 기본적으로 사건을 기반으로 프로그래밍하도록 되어 있다.
 * 그것이 객체 지향 프로그래밍 언어인지의 여부는 커뮤니티에서 논의되고 있다.
 * 스크래치에는 데이터 저장을 위한 변수와 리스트가 있으며 배열을 구현할 수 있다.
 * 스크래치는 반복에서, 단일 프레임 프로그래밍으로 시뮬레이션 할 수 있지만, 원자성이 없다.
 * 스크래치 2.0은 함수 및 재귀 호출를 지원한다.
 * 스크래치에는 여러 가지 간단화한 형 변환 규칙이 있다. 그러나 데이터는 그렇지 않으며 최상위 리스트, 스프라이트 또는 프로시저(함수)를 가질 수 없다.

OS 접근 권한
스크래치에서는 하드웨어/OS 접근이 제한되어 있으며, 매우 안전한 프로그램이다. 다음 기능은 스크래치에서 접근할 수 있다:


 * 소리 크기
 * 스크래치 프레임 기준의 마우스 위치
 * 스크래치 프로그램에 커서가 있을 때 눌리는 키
 * 스크래치 3.0에서는 이미지 입력용 웹캠을 사용하여 동작을 센서 값으로 사용할 수 있다.
 * 실행 중에는 접근할 수 없지만 개발 중에는 파일 시스템에 접근할 수 있다.
 * 스크래치는 컴퓨터에 연결된 레고 WeDo 세트 또는 피코보드와 외부에서 통신 할 수 있다.

스크래치 수정
MIT 미디어 연구소에서 개발한 교육용 프로그래밍 언어인 스크래치에 기능을 추가하는 행위이다. 스크래치를 수정하면 더 많은 OS 접근 권한을 제공한다. 2.0의 하위 버전인 1.4를 수정할 경우에는 스몰토크와 스퀵을 익혀야 하고, 2.0을 수정할 경우에는 액션스크립트를 익혀야 한다.

스크래치 주니어
스크래치 주니어는 스크래치를 기반으로 하는 프로그래밍 언어이지만 덜 복잡하다. 그래서 이 앱은 5세에서 7세까지의 어린이를 대상으로 고안했다. 이 앱은 스크래치와는 다르게 태블릿용 모바일 앱으로 개발되었다. 몇몇 구성원은 두 프로젝트 모두에 기여하기는 하지만, 스크래치 주니어의 개발 팀은 스크래치 팀과는 조금 다르다.

주목할 만한 정보
스크래치(Scratch)가 스크래처에게 위 베어 베어스 (We Bare Bears) 프로젝트를 만들도록 함으로써 위 베어 베어스(We Bare Bears)를 홍보하기 위해 카툰 네트워크(Cartoon Network)와 협력했다. 카툰 네트워크 웹 사이트에서 스크래치의 위치를 볼 수 있다.

이외에도 한국의 출판사인 예림당도 스크래치에 가입된 상태이다.

스크래치는 2012년 스크래치 팀에서 2.0 농담으로 연기한 만우절 농담 때문에 일시적으로 이름이 히이잉(Neigh)으로 변경되었다. 많은 양의 나의 작은 조랑말 또한 있었다. 자세한 내용은 여기에 나와 있다.

스크래치는 2016년 ScratchCation 덕분에 잘 알려진 스크래치 고양이 프로젝트로 가득 차 있었다. 스크래치 팀은 스크래치 고양이가 스크래치를 떠난다고 남긴 메모와 알림을 보여주었다. 비슷한 시기에 마지막 스크래치 디자인 스튜디오가 나왔다. 스크래처 모두가 그것에 대해 알고 그것을 참조할 만한 것으로 만들었다.

더 보기

 * 스크래치 시작하기
 * 스크래치 3.0 스크래치 웹 사이트 및 프로그램의 현재 버전
 * 스크래치 2.0 스크래치 웹 사이트 및 프로그램의 이전 버전
 * 위키백과 안의 스크래치 문서 외부 웹 사이트에 있는 스크래치 설명
 * 스크래치 위키
 * 프로그래밍 언어 그것이 무엇인지와 세계에서의 사용에 대한, 컴퓨터 과학의 내용