تولید کد

تولید کد فرآیند تبدیل بلوک‌های یک فضای کاری به رشته‌ای از کد است که می‌تواند اجرا شود.

تولید کد بسیار مهم است، زیرا این چیزی است که به بلوک‌های شما امکان می‌دهد واقعاً کارهایی را انجام دهند ، مانند ارزیابی عبارات حسابی، حرکت یک کاراکتر در پیچ و خم، یا پیکربندی یک فروشگاه آنلاین!

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 است.

برای اطلاعات بیشتر در مورد روش های اجرای کد، اجرای کد را ببینید.