Учебные языки программирования: Учебный язык программирования | это… Что такое Учебный язык программирования?
Содержание
Учебный язык программирования | это… Что такое Учебный язык программирования?
Уче́бный язык программи́рования — язык программирования, предназначенный для обучения. В качестве таковых разрабатывались такие языки как BASIC[1] и Паскаль[2]. Из разработанного для обучения языка ABC вырос Python[3]. Популярным языком, разработанным специально для образования является LOGO[4]. Специально для российских школ разработана языковая среда КуМир[5]. Набирает популярность созданный в Массачусетском технологическом институте язык визуального программирования Scratch и тому подобные среды программирования[6].
Содержание
|
Требования к учебному языку программирования
Учебный язык должен обеспечивать простоту, ясность и удобочитаемость конструкций. Излишняя гибкость, «вседозволенность» синтаксиса может затруднить понимание программ. С этим связаны преимущества использования в образовательном процессе языков семейства Pascal перед Си-подобными языками.[7][8]
При выборе языка программирования не играют роль такие факторы, как его новизна, эффективность реализации (в виде компилятора или интерпретатора). Фактор распространённости имеет как психологическое значение (влияя на мотивацию учащихся), так и практическое (востребованность получаемых знаний без необходимости переучивания)[9].
Учебный язык программирования должен обеспечивать плавный переход от псевдокода к собственно программированию. Полезным в обучении может быть возможность использования национальной лексики для ключевых слов и идентификаторов[7].
Альтернативой относительно трудоёмким для изучения комплексным языкам программирования общего назначения могут составить простые миниязыки, в которых, для наглядности, имеется графический исполнитель, вроде черепашки в Лого — первом и одном из самых известных таких языков. [10]
Языки разработанные для российской школы
Для преподавания элементов программирования в рамках курсов информатики было разработан ряд учебных языков программирования с русскими ключевыми словами. В группе академика А. П. Ершова был выработан подход с изучением двух языков программирования — более простого, предназначенного в основном для управления графическим исполнителем, и более продвинутого универсального. В качестве такой пары были разработаны языки Робик и Рапира.[11] Основными российскими образовательными языками являются:
- Робик (включает ряд графических исполнителей: Муравей, Маляр и др.)
- Рапира (предназначен для изучения после Робика)
- Школьный алгоритмический язык и его реализация Е-практикум
- КуМир (современный диалект школьного алгоритмического языка, включает графические исполнители Чертёжник и Робот)
Для начального обучения программированию могут также использоваться простые языки управления графическими исполнителями, такими как Кукарача в системе Роботландия или Кенгурёнок Ру[11].
Бейсик
BASIC, англ. Beginner’s All-purpose Symbolic Instruction Code — стал в начале 60-х первым, получившем распространение языком программирования для обучения начинающих. Однако он получил резкую критику за несоответствие принципам структурного программирования и лёгкость создания спагетти-кода. Известно высказывание Эдсгера Дейкстры — «Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации». Под влиянием этой критики создатели Бейсика Джон Кемени и Томас Курц в 1975 расширили язык структурными средствами и отказались от практики использования GOTO. В 80-х годах они создали обновлённый вариант языка, названный True BASIC (англ.)русск.[12]. Современные распространённые диалекты Бейсика (QBasic, Visual Basic) имеют microsoftовское подтверждение, однако и они имеют мало общего с прародителем, являясь вполне современными структурными языками программирования[11]. Специально для целей обучения созданы следующие диалекты Бейсика.
- BASIC-256[13] довольно близкий к «классическому» бейсик[14], созданный в ответ на статью Дэвида Брина «Почему Джонни не умеет программировать»[15].
- Microsoft Small Basic[16] — своего рода Visual Basic .NET «для самых маленьких».
В школьное образование также внедряется «Visual Basic для Linux» Gambas[17], Доступна бесплатная образовательная экспресс-версия Visual Basic .NET[18].
Другие
- Паскаль
- ABC и Python
- Смолток
- Пролог[19]
- Лого
- Скретч
Примечания
- ↑ Андрей Колесов. Basic — этапы большого пути Авторский вариант. Статья была опубликована c незначительной литературной правкой в журнале «Наука и жизнь» № 10/2000, с. 18—20.
- ↑ Wirth N. Recollections about the development of Pascal (HOPL II), 3.3
- ↑ The Making of Python, A Conversation with Guido van Rossum, Part I. by Bill Venners, January 13, 2003
- ↑ Язык Лого на сайте «История компьютера»
- ↑ Система программирования КуМир → Учебники
- ↑ Александр Казанцев Школа. Исполнители и алгоритмы // Linux Format. — январь 2010 г.. — № 126-127 (1).
- ↑ 1 2 С. С. Кобилов Образовательная информатика: подход к обучению, выбор учебных языков и создание программных систем. — Самаркандский государственный университет.
- ↑ Эссе «Язык Си и начальное обучение программированию», А. В. Столяров
- ↑ Выбор языка для обучения программированию, Лобачев Александр Александрович, Куликова Ольга Валентиновна, ИТО-2008
- ↑ Mini-languages: a way to learn programming principles
- ↑ 1 2 3 Леонов А.Г., Первин Ю.А. Роль и место темы «Элементы программирования» в общем школьном информатическом образовании. // Компьютерные инструменты в образовании. Информатизация образования. — СПб.: ЦПО, 1999. — № 5. — С. 14-23.
- ↑ Дейкстра Эдсгер на сайте «История комьютера»
- ↑ Джеймс М. Рено Хотите научиться программировать? = So You Want To Learn to Programm? / пер. с англ. С. Ирюпин, В. Чёрный. — М.: Альт Линукс, 2011. — 320 с. — ISBN 978-5-905167-06-5
- ↑ В нём, к примеру, отсутствуют процедуры и функции. Другой, подобный современный диалект — Basic4GL (англ.)русск.
- ↑ Brin, David (Sept 14, 2006). «Why Johnny can’t code». Salon Magazine. Проверено 4/12/09.
- ↑ Small Basic для начинающих
- ↑ Использование свободного программного обеспечения в образовании, Самарина А.Е., Смоленский государственный университет
- ↑ Visual Basic Express Edition
- ↑ Psychology, 1990, 3. The Misconception Problem: Prolog, pp. 186-190
Литература
- Patrick Mendelson, T. R. G. Green and Paul Brna Ch. 2.5. Programming Languages in Education: The Search for an Easy Start // Psychology of Programming / M. Hoc, T.R.G. Green, R. Samurçay and D.J. Gilmore (eds.). — Academic Press, 1990. — P. 175-200. — ISBN 0-12-350772-3
Ссылки
- Александр Казанцев Школа. Исполнители и алгоритмы // Linux Format. — январь 2010 г.. — № 126-127 (1).
- Educational programming languages в каталоге ссылок Open Directory Project (dmoz).
Учебный язык программирования | это… Что такое Учебный язык программирования?
Уче́бный язык программи́рования — язык программирования, предназначенный для обучения. В качестве таковых разрабатывались такие языки как BASIC[1] и Паскаль[2]. Из разработанного для обучения языка ABC вырос Python[3]. Популярным языком, разработанным специально для образования является LOGO[4]. Специально для российских школ разработана языковая среда КуМир[5]. Набирает популярность созданный в Массачусетском технологическом институте язык визуального программирования Scratch и тому подобные среды программирования[6].
Содержание
|
Требования к учебному языку программирования
Учебный язык должен обеспечивать простоту, ясность и удобочитаемость конструкций. Излишняя гибкость, «вседозволенность» синтаксиса может затруднить понимание программ. С этим связаны преимущества использования в образовательном процессе языков семейства Pascal перед Си-подобными языками.[7][8]
При выборе языка программирования не играют роль такие факторы, как его новизна, эффективность реализации (в виде компилятора или интерпретатора). Фактор распространённости имеет как психологическое значение (влияя на мотивацию учащихся), так и практическое (востребованность получаемых знаний без необходимости переучивания)[9].
Учебный язык программирования должен обеспечивать плавный переход от псевдокода к собственно программированию. Полезным в обучении может быть возможность использования национальной лексики для ключевых слов и идентификаторов[7].
Альтернативой относительно трудоёмким для изучения комплексным языкам программирования общего назначения могут составить простые миниязыки, в которых, для наглядности, имеется графический исполнитель, вроде черепашки в Лого — первом и одном из самых известных таких языков.[10]
Языки разработанные для российской школы
Для преподавания элементов программирования в рамках курсов информатики было разработан ряд учебных языков программирования с русскими ключевыми словами. В группе академика А. П. Ершова был выработан подход с изучением двух языков программирования — более простого, предназначенного в основном для управления графическим исполнителем, и более продвинутого универсального. В качестве такой пары были разработаны языки Робик и Рапира. [11] Основными российскими образовательными языками являются:
- Робик (включает ряд графических исполнителей: Муравей, Маляр и др.)
- Рапира (предназначен для изучения после Робика)
- Школьный алгоритмический язык и его реализация Е-практикум
- КуМир (современный диалект школьного алгоритмического языка, включает графические исполнители Чертёжник и Робот)
Для начального обучения программированию могут также использоваться простые языки управления графическими исполнителями, такими как Кукарача в системе Роботландия или Кенгурёнок Ру[11].
Бейсик
BASIC, англ. Beginner’s All-purpose Symbolic Instruction Code — стал в начале 60-х первым, получившем распространение языком программирования для обучения начинающих. Однако он получил резкую критику за несоответствие принципам структурного программирования и лёгкость создания спагетти-кода. Известно высказывание Эдсгера Дейкстры — «Студентов, ранее изучавших Бейсик, практически невозможно обучить хорошему программированию. Как потенциальные программисты они подверглись необратимой умственной деградации». Под влиянием этой критики создатели Бейсика Джон Кемени и Томас Курц в 1975 расширили язык структурными средствами и отказались от практики использования GOTO. В 80-х годах они создали обновлённый вариант языка, названный True BASIC (англ.)русск.[12]. Современные распространённые диалекты Бейсика (QBasic, Visual Basic) имеют microsoftовское подтверждение, однако и они имеют мало общего с прародителем, являясь вполне современными структурными языками программирования[11]. Специально для целей обучения созданы следующие диалекты Бейсика.
- BASIC-256[13] довольно близкий к «классическому» бейсик[14], созданный в ответ на статью Дэвида Брина «Почему Джонни не умеет программировать»[15].
- Microsoft Small Basic[16] — своего рода Visual Basic .NET «для самых маленьких».
В школьное образование также внедряется «Visual Basic для Linux» Gambas[17], Доступна бесплатная образовательная экспресс-версия Visual Basic . NET[18].
Другие
- Паскаль
- ABC и Python
- Смолток
- Пролог[19]
- Лого
- Скретч
Примечания
- ↑ Андрей Колесов. Basic — этапы большого пути Авторский вариант. Статья была опубликована c незначительной литературной правкой в журнале «Наука и жизнь» № 10/2000, с. 18—20.
- ↑ Wirth N. Recollections about the development of Pascal (HOPL II), 3.3
- ↑ The Making of Python, A Conversation with Guido van Rossum, Part I. by Bill Venners, January 13, 2003
- ↑ Язык Лого на сайте «История компьютера»
- ↑ Система программирования КуМир → Учебники
- ↑ Александр Казанцев Школа. Исполнители и алгоритмы // Linux Format. — январь 2010 г.. — № 126-127 (1).
- ↑ 1 2 С. С. Кобилов Образовательная информатика: подход к обучению, выбор учебных языков и создание программных систем. — Самаркандский государственный университет.
- ↑ Эссе «Язык Си и начальное обучение программированию», А. В. Столяров
- ↑ Выбор языка для обучения программированию, Лобачев Александр Александрович, Куликова Ольга Валентиновна, ИТО-2008
- ↑ Mini-languages: a way to learn programming principles
- ↑ 1 2 3 Леонов А.Г., Первин Ю.А. Роль и место темы «Элементы программирования» в общем школьном информатическом образовании. // Компьютерные инструменты в образовании. Информатизация образования. — СПб.: ЦПО, 1999. — № 5. — С. 14-23.
- ↑ Дейкстра Эдсгер на сайте «История комьютера»
- ↑ Джеймс М. Рено Хотите научиться программировать? = So You Want To Learn to Programm? / пер. с англ. С. Ирюпин, В. Чёрный. — М.: Альт Линукс, 2011. — 320 с. — ISBN 978-5-905167-06-5
- ↑ В нём, к примеру, отсутствуют процедуры и функции. Другой, подобный современный диалект — Basic4GL (англ.)русск.
- ↑ Brin, David (Sept 14, 2006). «Why Johnny can’t code». Salon Magazine. Проверено 4/12/09.
- ↑ Small Basic для начинающих
- ↑ Использование свободного программного обеспечения в образовании, Самарина А.Е., Смоленский государственный университет
- ↑ Visual Basic Express Edition
- ↑ Psychology, 1990, 3. The Misconception Problem: Prolog, pp. 186-190
Литература
- Patrick Mendelson, T. R. G. Green and Paul Brna Ch. 2.5. Programming Languages in Education: The Search for an Easy Start // Psychology of Programming / M. Hoc, T.R.G. Green, R. Samurçay and D.J. Gilmore (eds.). — Academic Press, 1990. — P. 175-200. — ISBN 0-12-350772-3
Ссылки
- Александр Казанцев Школа. Исполнители и алгоритмы // Linux Format. — январь 2010 г.. — № 126-127 (1).
- Educational programming languages в каталоге ссылок Open Directory Project (dmoz).
Обучение кодированию детей: какой язык программирования нам следует использовать?
Один из самых частых вопросов, которые я получаю от учителей и родителей: какой язык программирования следует использовать для обучения детей программированию? Важно ли всегда начинать с блочных языков, таких как Scratch? В каком возрасте им следует переходить на текстовые языки? И как мне выбрать между Python, Java или JavaScript?
В течение почти 10 лет я преподавал кодирование сотням студентов, я часто выступаю на конференциях или провожу семинары для учителей, плохо знакомых с информатикой. Многие учителя впервые пытаются построить программу CS в своих школах, и понятно, почему они беспокоятся о том, какой язык программирования выбрать. В дополнение к попыткам выяснить, что лучше для их учеников, учителя должны найти баланс между тем, что им удобно преподавать, и тем, что, по мнению администраторов, родителей и учеников, они должны изучать.
Итак, есть ли один «правильный» язык программирования для начала?
Язык кодирования не важен. Понятия программирования есть!
Как вы можете догадаться, ответ: Нет! Важен не язык, а то, как научить студентов решать задачи с помощью кода. Понимание того, как создать алгоритм (пошаговые инструкции) для выполнения задания, и придумать лучший способ написать это в коде, вероятно, самая сложная часть.
Языки программирования приходят и уходят — и вы адаптируетесь.
Выучить довольно небольшое количество ключевых слов и простой синтаксис определенного языка программирования легко — намного проще, чем выучить настоящий разговорный человеческий язык! В отличие от этого, чтобы программировать самостоятельно, нужно понимать основные концепции программирования — например, переменные, списки, условные операторы, циклы и функции, — а затем знать, когда, где и как их использовать для преобразования алгоритма в код.
После того, как учащийся усвоит эти концепции и какое-то время успешно программирует на одном языке, программировать на другом языке не так уж сложно. Переключение языков не сразу легко, но это можно сделать.
Однако изменит ли этот первый язык ваше мышление и способ программирования в будущем? Важно ли сегодня учить самый популярный язык в индустрии?
Языки программирования приходят и уходят — и вы адаптируетесь.
Популярность языков программирования меняется, и нет никакой гарантии, что то, чему мы учим наших детей сегодня, будет использоваться к тому времени, когда они выйдут на рынок труда. Моим первым языком программирования был Паскаль. (Да, вам, вероятно, придется поискать это сейчас.)
За эти годы я научился использовать разные языки на разных машинах — некоторые из них слишком малопонятны, чтобы их упоминать. За последние 10 лет работы преподавателем я достаточно изучил Logo, Scratch, Processing, JavaScript, Arduino и Python, чтобы использовать их в качестве языка обучения на своих занятиях.
Шесть лет назад я предложил детям начать с Logo, самого раннего языка обучения компьютерным наукам, и я до сих пор считаю, что он остается хорошим вариантом, доступным сегодня. Вот самая важная часть: если вы можете научить детей основным понятиям программирования, и они потратили достаточно времени на кодирование на одном языке, то они должны были усвоить основы, чтобы позже переключать языки по мере необходимости.
Часто возникает еще один вопрос: должны ли мы начинать всех детей с блочных языков вместо текстовых?
Блок или текст?
Я начал использовать Scratch, возможно, самый популярный и удобный для детей блочный язык, на уроке цифрового дизайна для шестиклассников почти 10 лет назад, и мне по-прежнему нравится использовать его на всех уровнях обучения. Я рад использовать новые функции только что выпущенной версии Scratch 3.0, особенно расширения для поддержки преобразования текста в речь и языкового перевода.
Блочное программирование избавляет молодых и начинающих программистов от разочарований, таких как пропуск запятой или забывание закрыть скобку, и оставляет больше времени для понимания концепций. Кроме того, Scratch сосредоточен на творчестве и легком доступе к созданию графики, редактированию звука, обмену проектами и созданию ремиксов, что делает его идеальным первым языком программирования для всех возрастов. Он позиционируется как инструмент для создания рисунков, анимации, историй и игр, а не как «язык программирования» — брендинг, делающий Scratch более гостеприимным и менее пугающим.
Важен не язык, а то, как научить студентов решать задачи с помощью кода.
Я обнаружил, что после нескольких лет использования Scratch студенты хотят попробовать кодирование на основе текста, потому что они ассоциируют его со «взрослыми» и «настоящим» кодированием, которое используется в промышленности. Я также видел, что иногда для обзора таких понятий, как переменные и циклы, требуется просто изменение языка.
Мои учащиеся средней школы готовы приложить дополнительные усилия, необходимые для изучения текстового кодирования; часто они замедляются, чтобы быть осторожным с их орфографией и синтаксисом, когда они решают задачу программирования на Python, JavaScript, Arduino и Processing. Но как только учащиеся могут пройти начальную часть «Мне нужно действительно следить за тем, что я печатаю», они часто ценят гибкость и мощь текстового кодирования, особенно когда они обнаруживают, насколько проще копировать, вставлять, изменять и сотрудничать. по текстовому коду для создания проектов.
Ускоренный курс компьютерных наук Foothill College KCI, который я провожу каждое лето, предлагаю учителям как Scratch, так и Python и показываю один и тот же проект на обоих языках. Им нравится видеть параллели между двумя типами языков, и даже больше, если мы сначала начнем с «псевдокода» или блок-схемы — способа записать алгоритм перед написанием кода. Вот как выглядит небольшой проект, включающий проверку пароля, в виде блок-схемы, в Scratch и в Python.
Блок-схема программы проверки паролейТа же программа проверки паролей в ScratchТа же программа проверки паролей в Python
И преподаватели, и учащиеся, не имевшие опыта блочного программирования, легко могут изучать Python на моих занятиях, показывая, что при наличии правильных проектов можно начать с текстового языка.
Что делает любой язык программирования подходящим языком для обучения детей программированию? Существуют ли какие-либо критерии, помогающие выбрать язык?
Хотя может быть полезно знать, что обучение кодированию больше связано с концепциями и что вам не нужно зацикливаться на выборе идеального первого языка, остается вопрос: что должен иметь язык, чтобы сделать его хорошим выбором для обучения дети для кодирования? Хотя языки программирования часто оцениваются по многим параметрам — по скорости, приложениям, доступным библиотекам, отраслевой поддержке, — вот несколько важных критериев, которые я рассматриваю.
Есть ли в нем сильное педагогическое сообщество?
Одной из причин, по которой я всегда указываю на Scratch и Python, является их доступ к сети преподавателей, использующих эти языки в своих классах. За ними стоят такие большие сообщества, потому что они всегда были бесплатными, открытыми и радушными для широкого круга пользователей со всего мира. Наличие большого сообщества означает, что вы можете найти больше ресурсов, таких как проекты, планы уроков, учебные пособия, видео и книги, посвященные преподаванию языка в классе. Также вполне вероятно, что вы можете пойти на образовательную конференцию и найти сессию, дающую вам советы.
…обучение хорошим навыкам программирования лучше, чем обучение популярному языку.
Легко ли подобрать?
Существует множество текстовых языков на выбор — некоторые из них сегодня более популярны в технологической отрасли, чем другие, некоторые обладают специфическими особенностями, которые делают их подходящими для создания конкретного проекта. Хотя многим старшеклассникам, возможно, придется в конечном итоге выучить Java для курса компьютерных наук AP, это не обязательно самый простой язык для начала. Python намного проще и набирает популярность в образовании, потому что он такой простой. После трех лет использования Python на факультативных занятиях по информатике я постоянно удивляюсь тому, как мало нужно, чтобы что-то сделать, и как быстро мои ученики средней школы учатся программировать на Python. Вдохновленный тем, насколько хорошо Python работает в обучении детей программированию, я потратил время на написание книги об этом.
Какова философия дизайна? Он был разработан для этой возрастной группы?
Важно предлагать инструменты, соответствующие возрасту, а языки программирования могут скрывать или отображать функции в зависимости от целевой возрастной группы. Scratch, основанный на философии использования кода для творческого самовыражения, намеренно упрощает некоторые конструкции, которые можно ожидать от языка программирования. Scratch Jr. предназначен для детей, которые все еще учатся читать, и не имеет переменных или условий, которые могут быть слишком запутанными в их возрасте. Python предлагает расширения для поддержки многих типов проектов, но они доступны в виде модулей, которые необходимо добавлять явно, поэтому вам не нужно их просматривать, пока они не потребуются. Языки для старших школьников, работающих над сложными программами, должны поддерживать отладку — фундаментальный навык. Если обучение «объектно-ориентированному» программированию имеет решающее значение, то использование Java — неплохой выбор.
Насколько легко его установить и работает ли он на разных платформах?
Об этом следует помнить, особенно если важно, чтобы учащиеся продолжали программировать дома. Некоторые работают только в определенных средах, например язык кодирования Swift от Apple. Если учащиеся работают на устройствах Chromebook, крайне важно иметь стабильный инструмент на основе браузера. Еще одна вещь, которую следует учитывать: действительно ли язык доступен бесплатно, чтобы каждый студент мог использовать его дома, или есть скрытые расширения, доступные только за плату?
Насколько легко делиться проектами с сообществом?
Одной из фундаментальных идей Scratch было создание сообщества, позволяющее детям делиться друг с другом и учиться друг у друга. Это сообщество также полезно для учителей. Однако совместное использование также требует планирования: когда и в какой степени вы хотите, чтобы учащиеся делились, комментировали, повторно использовали и переназначали чужие проекты. Хотя JavaScript может не одобряться как первый текстовый язык для изучения, и он не так прост, как Python, у него есть то преимущество, что он просто работает в Интернете. Продемонстрировать проекты так же просто, как разместить их на школьном веб-сервере.
Есть много других соображений при выборе языка. Какие проекты возможны? Разные языки имеют поддержку и расширения для разных типов проектов; например, Processing и P5. js упрощают реализацию медиапроектов и создание рисунков и анимации. Python делает возможным написание сложных проектов анализа данных и даже машинного обучения. Учителям также могут понадобиться мощные инструменты для управления заданиями и оценками, особенно для групповых проектов.
Один из самых частых вопросов: «Этот язык сегодня популярен?» Популярность, безусловно, может повлиять на выбор языка программирования, чтобы побудить студентов записаться на курс. Понятно, что родители хотят, чтобы преподаватели учили тому, что можно найти на рынке труда. Тем не менее, обучение хорошим навыкам программирования важнее, чем обучение популярному языку.
Хотя мы можем уделить особое внимание поиску «идеального» языка программирования для начала, давайте не будем забывать, что конечная цель состоит в том, чтобы позволить учащимся изучить фундаментальные концепции программирования. Они могут никогда не захотеть программировать после вашего урока, а язык, который вы преподаете, может устареть, когда они станут старше. Важно то, что обучение кодированию поможет учащимся понять, как компьютеры решают задачи, приобретут навыки критического мышления и, надеюсь, узнают, насколько весело создавать вещи с помощью кода.
Эдупориум Еженедельник | 5 языков кодирования для изучения учащимися
Важность обучения кодированию образования для современных студентов не вызывает особых сомнений. Независимо от того, являются ли они новичками в программировании или обладают некоторыми фундаментальными навыками, информатика продолжает приобретать все большее значение. Для многих, особенно тех, кто интересуется лучшими профессиями STEM , это означает, что они будут программировать. Таким образом, чем раньше они смогут изучить различные языки кодирования, тем лучше. Есть большая вероятность, что нынешним старшеклассникам в будущем понадобится знать программирование в той или иной форме. Что касается детей, которые в настоящее время учатся в начальной школе или детском саду, шансы, что им понадобится кодирование для будущей работы, выглядят еще более высокими. Итак, какие языки они могут начать изучать и в каком возрасте?
Блочный
Blockly — это простой язык программирования, который лучше всего подходит для начинающих и младших школьников. В средах Blockly coding учащиеся могут соединять отдельные блоки, представляющие различные функции, и создавать согласованные программы, состоящие из более мелких команд, объединенных вместе. Blockly подходит для учащихся начальной школы , в частности, позволяя детям в возрасте шести лет начать кодирование. Он также очень универсален, поэтому студенты могут использовать его с множеством инструментов STEAM. Например, в блочной среде у вас обычно есть блоки разного цвета. Разноцветные блоки обычно представляют разные функции, такие как движения, свет и, в конечном итоге, переменные. Связывая блоки кода вместе, учащиеся могут изучать основы кодирования в классе, используя такие инструменты, как Dash Robot , Ozobot Evo , Дрон Tello EDU и многое другое.
Начало работы с языком программирования Blockly.
Blockly изначально был разработан командой Google, чтобы помочь учащимся увидеть и узнать о концепциях кодирования с использованием взаимосвязанных блоков. Блоки могут представлять любые наиболее важные элементы кодирования, включая переменные, логику и циклы. Рассматривая Blockly как язык программирования для начинающих, многие производители 9Образовательные инструменты робототехники 0057 включают блочное кодирование в свои продукты, и с тех пор это проверенный подход к ознакомлению учащихся с программированием. Blockly отлично подходит для начинающих, потому что им не нужно создавать синтаксис (или печатать код) самостоятельно. Таким образом, им не приходится иметь дело со сложностями расширенного кодирования, что помогает уменьшить страх. Кроме того, кодирование Blockly в большинстве случаев напоминает игру с множеством ярких цветов и понятных значков, что помогает учащимся освоиться.
Среда OzoBlockly в элементарном кодировании.
Одним из наших любимых инструментов для начинающих кодеров является Ozobot Evo и среда OzoBlockly вместе с ним. Эта платформа кодирования доступна через веб-браузеры и совместима со многими устройствами, которые учащиеся обычно используют в классе. Он также предлагает пять уровней программирования для изучения учащимися, каждый из которых усложняется и включает все более сложные элементы кодирования. Используя OzoBlockly , учащиеся могут управлять движениями, паузами, светом, скоростью и направлением своего робота, просто перетаскивая блоки в свою программу и настраивая различные параметры. Используя редактор OzoBlockly, учащиеся могут создавать программы и узнают, как загружать их в своего робота. Оттуда они могут по-настоящему увидеть, как разработка цифровых программ приводит к реальным действиям, которые должен выполнять робот.
Царапина
Этот блочный язык, созданный для того, чтобы помочь детям упростить изучение более сложного программирования и повысить ценность творческого решения проблем, часто используется на вводных уроках CS. Scratch, один из лучших языков программирования, представляет собой графический язык с поддержкой перетаскивания, который в значительной степени предназначен для начинающих программистов. Он был разработан в Массачусетском технологическом институте, полностью бесплатен и доступен через Интернет, что позволяет студентам программировать интерактивные истории, игры и другие настраиваемые творения. Далее, в Scratch в окружающей среде существуют различные типы блоков, которые пользователи могут различать по цвету (очень похоже на Blockly). Студенты могут просто выбирать, перетаскивать и бросать блоки в свои программы для создания последовательностей. И благодаря этому процессу они начинают по-настоящему мыслить творчески и по мере продвижения развивают навыки системного мышления.
Обучение студентов программированию с помощью Scratch.
Скретч-код для детей идеально подходит для детей в возрасте от 8 до 16 лет. Это помогает учащимся рассматривать кодирование как нечто веселое и приятное, а не как нечто слишком сложное для их освоения. Поскольку программирование — это очень важная грамотность, Scratch помогает учащимся погрузиться в кодирование без страха и опасений. Лучше всего то, что учащиеся могут использовать его по любому школьному предмету, включая математику, информатику, обществознание и английский язык. Игры и задачи в онлайн-среде Scratch полностью настраиваются и позволяют преподавателям использовать их во всем, что они преподают. Для тех, кто только начинает, на их веб-сайте также есть полезные учебные пособия для уроков кодирования Scratch. И учителя, и ученики могут узнать, как правильно размещать блоки, а также как строить и создавать с помощью Scratch.
Блоки на языке программирования Scratch.
Scratch действительно интерактивен, поскольку учащиеся создают программы, управляющие действиями персонажа, чтобы рассказать историю. Есть несколько разделов с различными типами блоков Scratch, которые могут использовать учащиеся. Категории включают в себя движение, внешний вид, звук, события, управление, распознавание, операторы и переменные блоки для программирования экранного кота Scratch. Блоки движения включают в себя простые движения, такие как поворот, скольжение и движение вперед, а также более сложные блоки. В частности, ученики могут запрограммировать своего персонажа, чтобы он что-то сказал, помахал рукой или издал звук. Блоки событий также хороши тем, что они позволяют учащимся заставить своего персонажа делать что-то, основанное на внешнем событии. Например, они могут заставить его поворачиваться, когда громкость достигает определенного уровня — пример утверждения «если-то». По сути, студенты могут вставлять, переставлять и удалять блоки, чтобы создать идеальную программу.
С++
Еще один язык программирования, который учащиеся могут использовать для создания фундамента для будущего успешного программирования, — это C++. В отличие от Scratch и Blockly, C++ — это текстовый язык программирования, который знакомит учащихся с более сложной стороной программирования. На самом деле он существует уже довольно давно — более 40 лет, если быть точным. Элементы C++ присутствуют во многих аспектах Интернета и других средств массовой информации, которые мы регулярно используем. C++ появился после некоторых экспериментов с языком программирования C. И, что неудивительно, его гибкость и низкоуровневая функциональность являются двумя его самыми полезными и популярными функциями. Это также играет огромную роль в том, как мы используем компьютеры и Интернет.
Общие сведения о языке программирования C++.
Навыки кодирования на C++ могут позволить учащимся решать всевозможные задачи в будущем. На этом языке работают многие современные операционные системы, веб-браузеры, микроконтроллеры и даже видеоигры. В основе кодирования C++ пользователи создают код вокруг объектов и классов, которыми они могут манипулировать с помощью функций. Поскольку это текстовый язык и довольно сложный, учащиеся обычно не начинают его изучать до старших классов. Учащиеся средней школы , однако, также могут попробовать это в зависимости от их навыков и знаний в области компьютерных наук. При использовании C++ программисты обычно пишут свой собственный код с помощью текстового редактора. И студенты могут получить доступ к любым бесплатным платформам, подобным этим, чтобы начать изучать этот навык.
Решения STEM для программирования на C++.
Что касается инструментов STEM, которые можно использовать при обучении студентов программированию на C++, то на нашем радаре есть несколько. Опять же, учащимся лучше иметь опыт работы с более простыми языками программирования, прежде чем пробовать C++, но если они это сделают, вот несколько рекомендаций. Первый это UKIT Advanced из UBTECH Education . С помощью этого комплекта учащиеся могут создавать робототехнические устройства и программировать их с помощью программного обеспечения uCode, которое поддерживает кодирование как на C, так и на C++. Затем есть mBot-S , который интегрируется с Arduino IDE. Студенты могут получить доступ к Arduino IDE mBot в среде mBlock и найти возможность кодирования на C++. Кроме того, NAO Robot V6 — это еще одно, более продвинутое решение для робототехники, включающее язык C++.
Питон
Следующим в нашем списке языков программирования, которые нужно знать для будущего, наполненного множеством технологий и информатики, является Python . Язык программирования Python, безусловно, сложнее, чем Blockly и Scratch, и не использует в программах те же виды графического представления. Python основан на тексте, что означает, что учащиеся должны знать синтаксис и уметь эффективно сообщать о том, что они хотят, чтобы их программы делали. Несмотря на то, что Python немного более продвинут, его довольно легко освоить всем, кто раньше использовал другие языки программирования. Кроме того, существуют инструменты для программирования и робототехники, которые помогают обучать детей, начиная с начальной или средней школы.
На что похож язык программирования Python.
Python — это язык с открытым исходным кодом, что означает, что каждый может использовать и распространять его. Среди потенциальных образовательных и реальных применений Python — сетевое программирование, разработка программного обеспечения и разработка игр, которые являются ценными навыками для программистов. Начать работу с Python легко, и все загрузки доступны в нижнем колонтитуле их веб-сайта, включая обновления программного обеспечения, исходный код, лицензии и различные версии для компьютеров Mac и Windows. Что хорошего в Python, так это то, что он помогает решать проблемы с кодом почти так же просто, как записывать свои мысли. Поскольку Python — это текстовый язык, программистам часто приходится выполнять такие операции, как обработка текста, чисел, изображений и других данных. Кроме того, компьютеры не преобразовывают текст в код заранее, а преобразуют его в режиме реального времени во время работы программы.
Инструменты робототехники для кодирования на Python.
Что касается инструментов STEM для использования с Python, они частично совпадают с теми, которые студенты могли использовать, когда начинали программировать. Многие решения для робототехники включают в себя, например, начального уровня кодирования с Blockly, а также возможность перехода на более сложный язык, такой как Python. Мы уже упоминали об этом, но mBot-S — один из примеров. Некоторые другие роботы включают Edison Robot и 9.0057 Робот Финч 2.0 . Среда Edison, известная как EdPy , более детализирована и предназначена для кодирования с помощью Python. В частности, для EdPy преподаватели также могут получить доступ к планам уроков, чтобы облегчить себе жизнь. С Finch 2.0 учащиеся могут установить специальный редактор и код на Python на компьютерах Mac, Chromebook или Windows. Они могут управлять многими действиями Finch, вводя код в редактор во время изучения Python.
Ява
Наконец, у нас есть Java, один из самых широко известных языков программирования, который очень полезно знать. Java — это объектно-ориентированный язык, который ученые-компьютерщики используют для запуска миллиардов устройств. Сегодня это высокоуровневый язык программирования общего назначения, который используется во всех отраслях промышленности. Многие программисты проповедуют, что Java удивительно легко понять и интерпретировать. Несмотря на свои сложности, научиться кодировать на Java не так страшно, как вы думаете. Учащиеся в возрасте от 12 лет могут попробовать Java, и, как вы уже догадались, существуют инструменты STEAM, которые им в этом помогают.
Почему важна Java?
Люди используют Java во всем, от веб-разработки до создания игр, а также как часть веб-сайтов в некоторых из наиболее важных отраслей нашей экономики. Это очень помогает веб-разработчикам добавлять ключевые функции на свои веб-сайты, особенно в мобильные версии и приложения. Конечно, мобильные приложения составляют огромную часть нашей повседневной жизни, и постоянно появляются новые. Даже те, которые существуют уже много лет, постоянно обновляются. Кроме того, многие из платформ и сервисов, которые мы используем в Интернете каждый день, работают в режиме 9.0057 Ява . К ним относятся торговые сайты, правительственные сайты, сайты здравоохранения и образовательные сайты. Java также является очень безопасным языком со встроенными функциями безопасности для предотвращения взломов и других проблем.
Как и зачем изучать язык программирования Java.
Одним из лучших инструментов для обучения языку Java (в отличие от JavaScript) является Finch Robot 2.0. Этот робот совместим с шестью языками программирования, включая Java как один из самых надежных и сложных. С помощью Finch 2.0 учащиеся старших классов и даже колледжей могут изучать Java. Текстовая среда доступна на компьютерах Mac и Windows, когда дело доходит до обучения с Finch.