Язык программирования для детей
От: angry.andrew Украина  
Дата: 29.11.10 13:01
Оценка: 5 (2)
Прошу прощения, если эта тема уже затрагивалась. Видел много тем по обучению, но мне хотелось сделать акцент именно на обучении детей.

Небольшое лирическое отступление.
Я начал учиться программированию лет в 10, когда отец купил мне книжку для детей по программированию на Бейсике. Компьютера у меня тогда не было, поэтому свою первую программу я написал на бумажке (кажется она переворачивала введенную строку). Эта самая программа послужила толчком для покупки компьютера (ZX Spectrum ). Далее я изучал ассемблер, Паскаль, потом С++ (на котором пишу и сейчас) плюс еще кое-какие языки чисто для ознакомления.
Сейчас у меня есть 10-летний племянник, и мой отец, видимо решив повторить путь успеха, хочет отдать ему ту самую книгу по Бейсику, дабы ребенок мог ознакомиться с азами и решить, интересно ему это или нет. Проблема в том, что я не смог объяснить неспециалисту, что Бейсик — это плохой язык для обучения (тем более, что в книге описывается еще тот "классический" вариант с номерами строк и повсеместными goto). На резонный вопрос, что я могу порекомендовать в качестве "хорошего" языка для обучения, ответа у меня не нашлось. Когда я начинал, другого варианта кроме спектрум+бейсик у меня просто не было, но калечить мозг ребенку сейчас не хочется. Проблема еще в том, что в "мое" время я мог вывести на экран какой-то текст, нарисовать квадратики и т.п. и чувствовать себя счастливым. Сейчас же, мне кажется, дети разбалованы всевозможными GUI-шными красивостями, 3D-игрушками, и вывод текста в консоли может показаться им не слишком заманчивым. Надеюсь, что я ошибаюсь .
Поэтому был бы благодарен за конструктивную информацию по данному вопросу (слово "конструктивная" означает, что не нужно флудить и писать "С++", "ассемблер" и т.п. ).

Я для себя сформулировал приблизительный список требований к такому языку.
1. Он должен быть интерпретируемым.
2. Должен иметь достаточно простой и интуитивно понятный синтаксис.
3. Никакой экзотики, язык должен быть в целом подобен массово используемым языкам.
4. Желательно, чтобы были простые средства визуализации, возможность чего-то порисовать (мне кажется, для детей это важно — сам сначала этим увлекался ).
5. Желательно, чтобы язык был объектно-ориентированным, но допускал и простое алгоритмическое применение (ИМХО, ООП — это важно, но начинать лучше без него).
6. Очень желательно, чтобы была простая и наглядная среда программирования (например, Visual Studio — это НЕ простая среда для ребенка).
7. В дополнение к языку, конечно, хотелось бы иметь по нему хорошую книжку-учебник для детей. Но у меня создалось впечатление, что с этим у нас туго.

C/C++, C#, Java и т.д. отпадают по понятным причинам. Паскаль для ребенка ИМХО тоже не совсем то. Некоторые рекомендуют Питон. Интересно было бы узнать, как он соответствует приведенному выше списку.

Спасибо.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.