Навчальний мову програмування

Навчальний мова програмування - мова програмування, призначений для навчання. В якості таких розроблялися такі мови як BASIC [1] і Паскаль [2]. З розробленого для навчання мови ABC виріс Python [3]. Популярною мовою, розробленим спеціально для освіти є LOGO [4]. Спеціально для російських шкіл розроблена мовна середа Кумир [5]. Набирає популярність створений в Массачусетському технологічному інституті мову візуального програмування Scratch і тому подібні середовища програмування [6].


1. Вимоги до навчального мові програмування

Навчальний мова повинна забезпечувати простоту, ясність і читабельність конструкцій. Зайва гнучкість, "вседозволеність" синтаксису може ускладнити розуміння програм. З цим пов'язані переваги використання в освітньому процесі мов сімейства Pascal перед Сі -подібними мовами. [7] [8]

При виборі мови програмування не відіграють роль такі фактори, як його новизна, ефективність реалізації (у вигляді компілятора або інтерпретатора). Фактор поширеності має як психологічне значення (впливаючи на мотивацію учнів), так і практичне (затребуваність отриманих знань без необхідності перенавчання) [9].

Навчальний мова програмування повинна забезпечувати плавний перехід від псевдокоду до власне програмуванню. Корисним у навчанні може бути можливість використання національної лексики для ключових слів і ідентифікаторів [7].

Альтернативою щодо трудомістким для вивчення комплексним мов програмування загального призначення можуть скласти прості мініязикі, в яких, для наочності, мається графічний виконавець, начебто черепашки в Лого - першому і одному з найвідоміших таких мов. [10]


2. Мови розроблені для російської школи

Для викладання елементів програмування в рамках курсів інформатики було розроблено ряд навчальних мов програмування з російськими ключовими словами. У групі академіка А. П. Єршова був вироблений підхід з вивченням двох мов програмування - більш простого, призначеного в основному для управління графічним виконавцем, і більш просунутого універсального. В якості такої пари були розроблені мови Робік та Рапіра. [11] Основними російськими освітніми мовами є:

Для початкового навчання програмуванню можуть також використовуватися прості мови управління графічними виконавцями, такими як Кукарача в системі Роботландия або кенгуреня Ру [11].


3. Бейсік

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].


4. Інші


Примітки

  1. Андрій Колесов. Basic - етапи великого шляху - www.visual.2000.ru/kolesov/nauka/basichis.htm Авторський варіант. Стаття була опублікована c незначною літературної правкою в журналі " Наука і життя "№ 10/2000, с. 18-20.
  2. Wirth N. Recollections about the development of Pascal (HOPL II), 3.3 - oberoncore.ru / _media / library / n._wirth_-_recollections_about_the_development_of_pascal_hopl_ii_.pdf
  3. The Making of Python - www.artima.com / intv / pythonP.html, A Conversation with Guido van Rossum, Part I. by Bill Venners, January 13, 2003
  4. Мова Лого - chernykh.net/content/view/227/240 / на сайті "Історія комп'ютера"
  5. Система програмування кумира → Підручники - www.niisi.ru / kumir / books.htm
  6. Олександр Казанцев Школа. Виконавці та алгоритми - wiki.linuxformat.ru/index.php/LXF126: School1 / / Linux Format. - Січень 2010 р.. - № 126-127 (1).
  7. 1 2 С. С. Кобілов Освітня інформатика: підхід до навчання, вибір навчальних мов та створення програмних систем - www.ict.edu.ru/vconf/files/3197.rtf. - Самаркандський державний університет.
  8. Есе "Мова Сі та початкове навчання програмуванню" - www.stolyarov.info/pvt/anti_c?page=1, А. В. Столяров
  9. Вибір мови для навчання програмуванню - ito.edu.ru/2008/Moscow/VIII/1/VIII-1-7732.html, Лобачов Олександр Олександрович, Куликова Ольга Валентинівна, ІТО-2008
  10. Mini-languages: a way to learn programming principles - course.zjnu.cn/kcjx/uploadfile/2008112722134383.pdf
  11. 1 2 3 Леонов А.Г., Первин Ю.А. Роль і місце теми "Елементи програмування" в загальному шкільному інформатичних освіті. - www.ict.edu.ru/ft/001735/1999_5_14-23.pdf / / Комп'ютерні інструменти в освіті. Інформатизація освіти. - СПб. : ЦПО, 1999. - № 5. - С. 14-23.
  12. Дейкстра Едсгер - chernykh.net/content/view/176/186 / на сайті "Історія ком'ютера"
  13. Джеймс М. Рено Хочете навчитися програмувати? - www.altlinux.org/Books:Basic-256 = So You Want To Learn to Programm? - basicbook.org / / пров. з англ. С. Ірюпін, В. Чорний. - М .: Альт Лінукс, 2011. - 320 с. - ISBN 978-5-905167-06-5
  14. У ньому, наприклад, відсутні процедури та функції. Інший, подібний сучасний діалект - Basic4GL (Англ.) рос.
  15. Brin, David (Sept 14, 2006). " Why Johnny can't code - www.salon.com/tech/feature/2006/09/14/basic/print.html ". Salon Magazine. Перевірено 4/12/09.
  16. Small Basic для початківців - download.microsoft.com / documents / rus / visualstudio / SmallBasic.pdf
  17. Використання вільного програмного забезпечення в освіті - 79.133.86.67/virtual/expo/InfoKom10/dokald_10/Samarina.doc, Самаріна А.Є., Смоленський державний університет
  18. Visual Basic Express Edition - www.microsoft.com/Express/VB/
  19. Psychology, 1990, 3. The Misconception Problem: Prolog, pp. 186-190

Література

  • Patrick Mendelson, TRG Green and Paul Brna Ch. 2.5. Programming Languages ​​in Education: The Search for an Easy Start / / Psychology of Programming - www.cl.cam.ac.uk/teaching/1011/R201/ppig-book/ch2-5.pdf / M. Hoc, TRG Green, R. Samuray and DJ Gilmore (eds.). - Academic Press, 1990. - P. 175-200. - ISBN 0-12-350772-3