Урок 20. Другие блоки в Scratch, подпрограммы и функции в программировании - Творческое программирование для всех
Программирование игр в Scratch

Этот урок — один из самых важных, особенно для тех, кто всерьёз решил освоить профессию программиста. Мы изучаем понятие подпрограмм и функций в программировании. В Scratch нет этих понятий, но есть возможность создавать Другие блоки. Это и есть прямой аналог подпрограмм. Подумай, что по-твоему, значит термин подпрограмма. Внимательно слушай объяснения учителя. И ты убедишься, что это совсем не сложно, а даже наоборот — удобно. С помощью других блоков (подпрограмм) мы научимся делать код короче и понятнее, то есть оптимальнее. Вперёд! Успехов! 🙂

Замечание: с января 2019 года на сайте Scratch доступна новая версия редактора — Scratch 3.0, который внешне немного отличается от Scratch 2.0, в котором записывался данный урок. Поэтому если возникнут вопросы, пиши их, пожалуйста, в комментариях к видео или внизу этой страницы сайта. Мы провели сравнение двух версий языка в серии прямых эфиров.

Scratch 2.0 по-прежнему можно использовать, скачав и установив программу на свой компьютер. Мы записали также видео-уроки о том, как установить Scratch 2.0 и Scratch 3.0 на свой компьютер.

Часть 1. Оптимизируем игру «Викторина» с помощью других блоков

В этом видео: Показать

Проект «Простая викторина», который оптимизируется путём создания другого блока, здесь: https://scratch.mit.edu/projects/73491752/.

Итоговый, оптимизированный проект, с другим блоком, здесь: https://scratch.mit.edu/projects/74172132/.

Подумай, как можно сделать скрипт ещё более красивым, понятным, оптимальным с помощью других блоков-подпрограмм.

И не забывай делать гимнастику для глаз: https://scratch.mit.edu/projects/133688293/ 😉

В первой части урока ты узнал(а) и научился(ась):

  • как создать Другой блок, определить код Нового блока и использовать этот блок в скрипте;
  • что такое подпрограмма и какими свойствами она обладает;
  • что такое функция;
  • как с помощью подпрограмм можно оптимизировать скрипты, делая их короче и понятнее.

Часть 2. Делаем красивый код в проекте «Викторина»

В этом видео: Показать

Задание: вспомни, как мы оптимизировали код проекта «Простая викторина» с использованием списков в уроке 19, и постарайся сделать новую версию проекта с использованием списков и Других блоков одновременно. И увидишь, насколько код станет ещё более понятным, удобным для модификации и красивым.

Статья о том, что такое красивый код, на Хабре: Что такое красивый код, и нужен ли он? Что думают в Яндексе.

Итак, теперь ты знаешь и умеешь:

  • что такое красивый код?
  • как сделать код скрипта красивым и оптимальным с использованием Других блоков Scratch (или подпрограмм);
  • как редактировать созданный ранее Другой блок Scratch.

Хочешь знать и уметь больше?

Если хочешь ещё лучше разобраться в этой важной теме и набраться больше опыта, посмотри и изучи ещё проекты, в которых используются Другие блоки Scratch:

  • Геометрические фигуры: https://scratch.mit.edu/projects/90085838/ (рисование точек и отрезков вынесено в другие блоки. Можно ещё более оптимизировать код и сделать его более красивым и понятным, вынеся в Другие блоки (подпрограммы) рисование отдельных геометрических фигур. Попробуй сделать это самостоятельно.
  • Ten Squares (Десять квадратов): https://scratch.mit.edu/projects/131777552/ — здесь тоже рисование отдельных квадратов вынесено в другие блоки. В описании проекта читай инструкцию по управлению клавишами.
  • Интерфейс интернет-магазина (в комментариях смотри задания и пояснения): https://scratch.mit.edu/projects/102905443/ — этот проект ты можешь сделать ещё лучше!
  • Рисование фракталов: https://scratch.mit.edu/projects/106367149/ — это более сложный пример того, как подпрограмма (Другой блок) вызывает сама себя. В программировании этот приём называется рекурсией или рекурсивным вызовом. Рекурсия встречается даже в жизни! На Хабре есть хорошая статья о рекурсии.

Можешь также самостоятельно поискать проекты с использованием Других блоков Scratch на сайте scratch.mit.edu в разделе «Исследуй». Пиши и делись своим опытом в комментариях к уроку. Успехов!

Ольга Елисеева

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *