코드 생성

코드 생성은 작업공간의 블록을 실행 가능한 코드 문자열로 변환하는 프로세스입니다.

코드 생성은 블록에서 연산을 평가하거나, 미로를 통해 캐릭터를 이동하거나, 온라인 상점을 구성하는 등의 작업을 실질적으로 할 수 있게 하므로 매우 중요합니다.

Blockly는 블록을 직접 '실행'하지 않습니다. 대신 코드 문자열을 생성한 다음 실행합니다.

코드 생성기

코드를 생성하려면 코드 생성기 인스턴스를 사용합니다.

다음 코드 스니펫은 작업공간의 블록에 자바스크립트 코드를 생성하는 방법을 보여줍니다.

// javascriptGenerator is a code generator that makes JavaScript strings.
import {javascriptGenerator} from 'blockly/javascript';

const code = javascriptGenerator.workspaceToCode(myWorkspace);

Blockly에서 제공하는 다양한 코드 생성기와 액세스 방법에 관한 자세한 내용은 코드 생성기 개요를 참고하세요.

블록 코드 생성기

각 블록에는 생성되는 코드를 정의하는 연결된 블록 코드 생성기가 있습니다. 블록 코드 생성기는 생성하려는 개별 언어마다 정의해야 합니다.

다음 코드 스니펫은 '앞으로 이동' 블록의 자바스크립트 블록 코드 생성기를 정의합니다.

javascriptGenerator.forBlock['my_custom_block'] = function(block, generator) {
  const steps = block.getFieldValue('FIELD_NAME');
  // moveForward is a function you would have to define yourself and provide
  // within your execution context.
  return `moveForward(${steps});\n`;
}

블록 코드 생성기를 정의하는 방법에 관한 자세한 내용은 블록 코드 생성기를 참고하세요.

실행

코드를 생성했으면 실행 방법을 알아야 합니다. 실행 방법을 결정하는 것은 애플리케이션에 따라 다르며 Blockly의 범위를 벗어납니다.

코드를 실행하는 방법에 관한 자세한 내용은 코드 실행을 참고하세요.