יצירת קוד היא התהליך שבו הופכים את הבלוק בסביבת העבודה למחרוזת של קוד שאפשר להריץ.
יצירת הקוד חשובה מאוד, כי היא מאפשרת לבלוקס לבצע פעולות, כמו הערכת ביטויים אריתמטיים, העברת דמות במבוך או הגדרת חנות אונליין.
ב-Blockly לא 'מריצים' בלוקים ישירות. במקום זאת, יוצרים מחרוזות קוד ומריצים אותן.
גנרטורים של קוד
כדי ליצור קוד, משתמשים במכונה של גנרטור קוד.
קטע הקוד הזה מראה איך ליצור קוד JavaScript עבור הבלוקס בסביבת העבודה:
// javascriptGenerator is a code generator that makes JavaScript strings.
import {javascriptGenerator} from 'blockly/javascript';
const code = javascriptGenerator.workspaceToCode(myWorkspace);
למידע נוסף על הגנרטורים השונים של קוד ש-Blockly מספקת ועל האופן שבו ניגשים אליהם, ראו גנרטורים של קודי שפות.
גנרטורים של קוד בבלוק
לכל בלוק משויך מחולל קוד של בלוק שמגדיר את הקוד שהוא יוצר. צריך להגדיר גנרטור של קוד בלוקים לכל שפה שרוצים ליצור.
קטעי הקוד האלה מגדירים מחולל קוד של בלוקים ב-JavaScript לבלוקים מסוג 'העברה קדימה':
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.
מידע נוסף על דרכים להרצת קוד זמין במאמר יצירה והרצה של קוד.