Учебный язык программирования

Учебный язык программирования

Уче́бный язык программи́рования — язык программирования, предназначенный для обучения. В качестве таковых разрабатывались такие языки как 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]. Специально для целей обучения созданы следующие диалекты Бейсика.

В школьное образование также внедряется «Visual Basic для Linux» Gambas[17], Доступна бесплатная образовательная экспресс-версия Visual Basic .NET[18].

Другие

Примечания

  1. Андрей Колесов. Basic — этапы большого пути Авторский вариант. Статья была опубликована c незначительной литературной правкой в журнале «Наука и жизнь» № 10/2000, с. 18—20.
  2. Wirth N. Recollections about the development of Pascal (HOPL II), 3.3
  3. The Making of Python, A Conversation with Guido van Rossum, Part I. by Bill Venners, January 13, 2003
  4. Язык Лого на сайте «История компьютера»
  5. Система программирования КуМир → Учебники
  6. Александр Казанцев Школа. Исполнители и алгоритмы // Linux Format. — январь 2010 г.. — № 126-127 (1).
  7. 1 2 С. С. Кобилов Образовательная информатика: подход к обучению, выбор учебных языков и создание программных систем. — Самаркандский государственный университет.
  8. Эссе «Язык Си и начальное обучение программированию», А. В. Столяров
  9. Выбор языка для обучения программированию, Лобачев Александр Александрович, Куликова Ольга Валентиновна, ИТО-2008
  10. Mini-languages: a way to learn programming principles
  11. 1 2 3 Леонов А.Г., Первин Ю.А. Роль и место темы «Элементы программирования» в общем школьном информатическом образовании. // Компьютерные инструменты в образовании. Информатизация образования. — СПб.: ЦПО, 1999. — № 5. — С. 14-23.
  12. Дейкстра Эдсгер на сайте «История комьютера»
  13. Джеймс М. Рено Хотите научиться программировать? = So You Want To Learn to Programm? / пер. с англ. С. Ирюпин, В. Чёрный. — М.: Альт Линукс, 2011. — 320 с. — ISBN 978-5-905167-06-5
  14. В нём, к примеру, отсутствуют процедуры и функции. Другой, подобный современный диалект — Basic4GL (англ.)русск.
  15. Brin, David (Sept 14, 2006). «Why Johnny can't code». Salon Magazine. Проверено 4/12/09.
  16. Small Basic для начинающих
  17. Использование свободного программного обеспечения в образовании, Самарина А.Е., Смоленский государственный университет
  18. Visual Basic Express Edition
  19. 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

Ссылки



Wikimedia Foundation. 2010.

Игры ⚽ Нужен реферат?

Полезное


Смотреть что такое "Учебный язык программирования" в других словарях:

  • Oz (язык программирования) — Oz Семантика: функциональный, процедурный, декларативный, объектно ориентированный, вычисления с ограничениями, Н модели, параллельные вычисления Тип исполнения: компилируемый Появился в: 1991 Автор(ы): Gert Smolka his students Релиз …   Википедия

  • Паскаль (язык программирования) — Эта статья или раздел нуждается в переработке. В Паскале нет модулей, ООП и прочих новомодных веяний. Описание расширений должно присутствовать только в статьях о соответ …   Википедия

  • Скретч (язык программирования) — У этого термина существуют и другие значения, см. Scratch. Скретч Семантика: событийно ориентированная Класс языка: графический, учебный Тип исполнения …   Википедия

  • Модула-2 (язык программирования) — Модула 2 (Modula 2) язык программирования общего назначения, разработанный Никлаусом Виртом в 1978 году. Содержание 1 Цели и принципы разработки языка 2 Общая характеристика …   Википедия

  • Учебный алгоритмический язык — У этого термина существуют и другие значения, см. Алгоритмический язык. Учебный алгоритмический язык  формальный язык, используемый для записи, реализации и изучения алгоритмов. В отличие от большинства языков программирования, не привязан к …   Википедия

  • Язык ассемблера — Листинг программы на языке ассемблера Motorola MC6800 (слева идут адреса и машинные коды в шестнадцатеричной системе, вычисленные и сгенерированн …   Википедия

  • Языки программирования с ключевыми словами не на английском — Языки программирования, основанные не на английском языке  такие языки программирования, которые, в отличие от большинства распространенных языков, не используют ключевые слова, взятые из английской лексики. Содержание 1 Преобладание языков… …   Википедия

  • Языки программирования c ключевыми словами не на английском — Языки программирования, основанные не на английском языке такие языки программирования, которые, в отличие от большинства распространенных языков, не используют ключевые слова, взятые из английской лексики. Содержание 1 Преобладание языков програ …   Википедия

  • Языки программирования, основанные не на английском — языке такие языки программирования, которые, в отличие от большинства распространенных языков, не используют ключевые слова, взятые из английской лексики. Содержание 1 Преобладание языков программирования, основанных на английском …   Википедия

  • Русские языки программирования — Языки программирования, основанные не на английском языке такие языки программирования, которые, в отличие от большинства распространенных языков, не используют ключевые слова, взятые из английской лексики. Содержание 1 Преобладание языков… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»