Skip to main content

Значок панели инструментов учителя Инструментарий учителя Введение в эффективность кода

Теперь, когда учащиеся попрактиковались в написании последовательностей кода для выполнения конкретной задачи, им будет предложено применить эти навыки для чтения последовательностей кода и их оценки. В этом упражнении учащимся будет предоставлена ​​карта, похожая на карту в разделе «Игра», и предложено просмотреть 3 кодовые последовательности, чтобы выбрать предпочтительное решение. По каждой последовательности учащиеся ответят на 3 вопроса:

  • Выполняет ли этот код задачу?

  • Если это работает, каковы преимущества этого кода перед другими?

  • Каковы недостатки этого кода по сравнению с другими?

Затем, просматривая все последовательности, учащихся познакомят с идеей эффективности кода и спросят, какое решение они предпочитают — исходя из эффективности и собственных предпочтений — и объяснят, почему. Это может стать трамплином для обсуждения всем классом вопросов эффективности и точности кодирования.

Чтение последовательностей кода для выбора предпочтительного решения

Когда ваш класс работал над разделом «Игра», вы, вероятно, заметили, что существует множество разных решений одной и той же проблемы. Это то, что часто случается в мире программирования. Хотя могут быть разные способы сделать что-то, у каждого будет предпочтительный метод или решение, и это может зависеть от ряда факторов. В этом упражнении ваша группа рассмотрит 3 возможных решения проблемы с помощью блока кода, выяснит, работают ли они должным образом, затем выберет предпочтительное решение из группы и объяснит, почему вы выбрали его.

Проблема: Создайте последовательность, которая, когда робот начнет работу в начале, будет входить и выходить из всех трех классов (в любом порядке) и возвращаться в конечную точку. Робот должен перемещаться по лестнице и проходить через дверные проемы, отмеченные маленькими прямоугольниками на изображении карты.

  • Для каждого приведенного ниже решения ответьте на эти 3 вопроса в своей инженерной тетради:

    • Выполняет ли этот код задачу? Почему или почему нет?

    • Если это работает, каковы преимущества этого кода перед другими?

    • Каковы недостатки этого кода по сравнению с другими?

  • Большую часть времени программирование оценивается по его эффективности, и предпочтительным решением является то, которое достигает цели наиболее эффективным способом.

Нажмите на решения ниже, чтобы увидеть увеличенное изображение.

Решение А (дюймы)
Раствор А (дюймы)

Раствор Б (дюймы)
Раствор Б (дюймы)
Решение C (дюймы)
Раствор C (дюймы)
Решение А (метрическое)
Решение А (метрическое)
Решение А (метрическое)
Решение Б (метрическое)
Решение C (метрическое)
Решение C (метрическое)

Что такое эффективность кода?

Если бы вам нужно было взять с кухни три вещи, вы бы, скорее всего, взяли все три вещи за одну поездку, а не совершали три отдельные поездки. Почему? Потому что это будет более эффективно. Эффективность означает «достижение максимальной производительности с минимальными затратами и усилиями». Так как же это связано с программированием?

Эффективность кода означает, что программа написана так, чтобы работать хорошо и быстро, используя наименьший объем работы или шагов, правильно, при этом выполняя свою работу. Это важно, поскольку снижает риск того, что программа не будет работать должным образом и, в свою очередь, вызовет проблемы в других частях программы, которые работают вокруг нее. Эффективность кода может быть мерой качества, и когда мы пишем проекты в блоке VEXcode IQ, мы часто ищем наиболее «эффективный» проект в качестве предпочтительного решения.

По сути, эффективность кода — это принцип, который означает, что вы хотите написать код, который достигает вашей цели, используя как можно меньшее количество команд или блоков.

В своей инженерной тетради ответьте на следующие вопросы:

  • Учитывая эффективность кода, какое решение вы предпочитаете и почему?

  • Считаете ли вы, что это лучшее решение, почему или почему бы и нет?

Значок панели инструментов учителя Инструменты учителя  - Ответы

Ответы могут различаться, поскольку выше не были указаны конкретные размеры для создания последовательности перемещения по трем комнатам.
Нажмите здесь , чтобы увидеть возможный пример решения.

Значок «Мотивировать обсуждение» Мотивировать обсуждение

Хотя эффективность полезна, у нас часто есть другие соображения о том, как и почему мы поступаем определенным образом. Попросите учащихся поделиться своими ответами в своих инженерных тетрадях и/или использовать этот вопрос для обсуждения баланса эффективности и действий.
Q: В программировании эффективность обычно является предпочтительной методологией; Можете ли вы придумать причину, почему это так?
A: Ответы могут быть разными, но некоторые из них включают:

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

  • Проекты всегда подвержены ошибкам. Чем эффективнее написан проект, тем меньше вероятность ошибки.

  • Люди, которые используют программирование для управления промышленными роботами, полагаются на эффективность этих проектов, позволяющую сэкономить время, энергию и ресурсы компании.