Bạn có thể viết Marlowe code trực tiếp dưới dạng Marlowe text hoặc sử dụng giao diện trực quan Blockly để ghép các phần của hợp đồng lại với nhau. Đây là một công cụ rất hữu ích cho những người dùng không có kinh nghiệm trong việc biên tập chương trình và muốn xây dựng các hợp đồng một cách trực quan.

Để sử dụng Blockly, hãy làm theo các bước sau:

  1. Mở Marlowe Playground.

Bạn sẽ thấy một cửa sổ như sau:

landing-page
landing-page
  1. Nhấp vào Start coding (Bắt đầu code)! ở dưới cùng bên trái, sau đó chọn Blockly từ menu.

Bạn sẽ thấy một cửa sổ như sau:

blockly
blockly
  1. Bạn có thể xây dựng hợp đồng bằng cách thêm các thành phần vào contract (hợp đồng) block.

Bạn sẽ thấy danh sách các tùy chọn để hình thành hợp đồng bằng cách nhấp vào contract trong menu

blockly-contract
blockly-contracts
  1. Nhấp vào Contract và chọn một block.
  2. Drag it into the building pane và sau đó lắp nó vào top-level slot.

Ví dụ sau đây cho thấy cách tạo một hợp đồng bắt đầu với When làm cấu trúc chính của nó.

blockly-four
blockly-four
  1. Tiếp tục xây dựng hợp đồng. Để xây dựng hợp đồng với When, nó cần bao gồm một hoặc nhiều hành động kích hoạt hợp đồng. Chúng có thể được chọn từ Action mục menu.
blockly-five
blockly-five

Ví dụ sau đây cho thấy cách xây dựng hành động Deposit và điều chỉnh nó vào khoảng trống đầu tiên trong hợp đồng mà bạn đang xây dựng.

blockly-six
blockly-six
  1. Tiếp theo, chèn các thông tin sau:
  • ai đang gửi tiền (bên)
  • giá trị và tiền tệ (token) của deposit
  • tài khoản đó sẽ được gửi cho ai (người nhận).
blockly-seven
blockly-seven
  1. Bạn có thể thêm các hành động khác. Đối với điều này, hãy chọn các hành động, thêm chúng và điền thông tin. Hành động tương ứng sẽ yêu cầu các loại thông tin khác nhau. Thêm Close tab sau khi Continue để hợp đồng đóng sau khi deposit.
  2. Cuối cùng, khi tất cả các hành động được chèn và các điều kiện được thêm vào, bạn có thể hoàn tất hợp đồng của mình bằng cách thêm Close tab vào hợp đồng chính. Điều này cho thấy hợp đồng sẽ hoạt động như thế nào trong trường hợp deposit không được thực hiện trước thời hạn quy định.
blockly-eight
blockly-eight