Подтвердить что ты не робот

Что учить после царапины?

Мой сын с энтузиазмом программирует простые игры в Scratch. Однако Scratch - очень простая среда программирования (даже без подпрограмм), и я вижу, что скоро ему нужно будет перейти к чему-то еще.

Кто-нибудь знает хороший язык обучения, который упрощает графику, но предоставляет "реальные" функции программирования, такие как структуры данных, функции, массивы и списки?

Бонусные баллы, если они работают под Linux (Ubuntu). Ответ на форму "язык Foo с библиотечным баром" также является опцией.

4b9b3361

Ответ 1

Как насчет lua?

Есть хороший графический "движок", называемый LOVE, который полностью программируется в lua. У него хорошая документация, и это не очень сложно.

Есть также несколько других подобных двигателей, использующих lua:

Был еще 2d движок, но я не могу найти его в данный момент, он был похож на LOVE, но с немного другим подходом к вещам.

Я бы рекомендовал ЛЮБОВЬ для начинающих, поскольку это очень легко, имеет хорошие учебные пособия и, самое главное, вы можете сразу сделать приятные вещи.

Также lua обычно используется в качестве языка сценариев игры. Например, все дополнения для World of Warcraft написаны в lua, на самом деле весь интерфейс написан в lua. Это означает, что очень легко найти ответы на вопросы, связанные с игрой в lua. Кроме того, если у вас есть игра, в которой lua используется как язык сценариев, вы можете легко добавить к ней свои собственные материалы.

Я написал это с точки зрения игры, но есть довольно много проектов, которые используют lua в качестве языка сценариев.

Вы также можете попробовать python, но он не настолько хорош из коробки, готовый к использованию и легкому освоению/пониманию инструментов.


Также здесь ссылка на lua manual.

Ответ 2

Если Scratch начинает немного ограничивать, но они не готовы к сложностям кодирования текстового редактора, посмотрите на Scratch-производную "BYOB" (создайте собственные блоки). Серьезно, он превращает Scratch в взрослую среду программирования с функциями (и, следовательно, рекурсией), структурами данных, многопоточными и всем!

Там также Panther, но я был менее впечатлен им (создание новых блоков в Panther, похоже, требует кодирования их функции непосредственно в Squeak, в то время как в BYOB вы можете просто создать их в обычном стиле Scratch drag-n-drop).

Ответ 3

Взгляните на Processing.

Это тур по силе - это графика, анимация и визуальная манипуляция. Он также работает под Linux.

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

Ответ 4

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

Ответ 5

Это может быть чуть больше прыжка, но Python с PyGame позволит вашему ученику сделать многие из такие же программы, как он или она уже привыкли с Scratch, но с очень жестким контролем над тем, как все это работает.

  • Плюсы:. Это python, который является очень простым языком для чтения и записи и обеспечивает очень богатую среду программирования, без необходимости в любом шаблоне.
  • Минусы: его SDL, который использует цикл событий, который вы сами можете написать. Это может быть довольно большим препятствием для молодого программиста.

Ответ 6

Scratch написана в Squeak (который работает на Linux, Windows и Mac), поэтому я скажу, что сделайте шаг до Smalltalk! Единственная проблема - отсутствие очень хорошей книги начинающих на этом языке, что странно, когда вы рассматриваете ее происхождение. Тем не менее, основные понятия легко изучить (почти без синтаксиса), а окружающая среда стимулирует эксперименты.

Ответ 7

Вот интересный проект Microsoft, называемый Small Basic, который является хорошей, простой и бесплатной средой программирования для обучения на основе BASIC.

Нет бонусных очков из-за отсутствия ubuntu, но классный инструмент обучения.

Ответ 9

Ну, есть почтенный старый логотип - не уверен в структурах, но вы получаете списки, функции с параметрами и графикой очень просты. Есть много хороших реализаций. Логотип даже был уподоблен "lisp без всех круглых скобок".

Ответ 10

Я бы предложил использовать CodingBat. Хотя CodingBat не предоставляет графику, он предоставляет "функции программирования" и простую практику, включающую строки, массив и логику. Я думаю, что этот веб-сайт помогает в разработке базовой основы программирования.

Ссылка: http://codingbat.com/