Omówienie procedur

W rozumieniu informatyki procedura to fragment kodu wielokrotnego użytku, który wykonuje określone zadanie.

Blockly implementuje procedury w postaci zestawu bloków, które generują kod służący do definiowania procedury i jej wywoływania.

Bloki wywołującego procedury i bloki definicji

→ Więcej informacji o używaniu klocków.

→ Więcej informacji o tworzeniu niestandardowych bloków procedur.

→ Więcej informacji o tworzeniu niestandardowych modeli procedur, które umożliwiają dodawanie nowych funkcji, takich jak wpisywane parametry.

Wbudowana a wtyczka

Blockly udostępnia 2 implementacje bloków procedur.

Jeden z nich jest dostępny we wtyczce @blockly/block-shareable-procedures, która implementuje bloki procedur bazujące na modelowym modelu danych. Dzięki temu możesz wykonywać różne czynności z blokami procedur, np. umieścić blok definicji w jednym obszarze roboczym, a blok wywołania w innym. Wtyczka to zalecana implementacja bloków procedur.

Druga to starsza implementacja udostępniona w podstawowym rozwiązaniu Blockly. Bloki te nie mają bazowego modelu danych, a wszystkie informacje o procedurach pochodzą z tych bloków. Jedynym sposobem na sprawdzenie w obszarze roboczym, które procedury są dostępne, jest sprawdzenie bloków definicji procedur znajdujących się w tym obszarze. Bloki te są nadal obsługiwane na potrzeby zgodności wstecznej, ale większość programistów powinna mieć możliwość korzystania z nowych bloków udostępnionych przez wtyczkę.

  • Jeśli korzystasz z serializacji XML, możesz używać nowych bloków, ale nie będzie można ich udostępniać między obszarami roboczymi. Ta funkcja wymaga dodatkowej serializacji, która jest udostępniana tylko przez serializator JSON. Jeśli używasz kodu XML, nowe blokady będą działać tak samo jak wcześniejsze. Więcej informacji o uaktualnieniu do formatu JSON

  • Jeśli masz zdefiniowane niestandardowe bloki procedury, musisz je zaktualizować, aby działały z nowymi modelami danych.

  • Jeśli masz zdefiniowane niestandardowe bloki definicji procedury, ale korzystasz z wbudowanego bloku wywołań procedury, musisz nadal korzystać ze starszego blokady wywołującego, dopóki nie zaktualizujesz bloku definicji.