[Comm] [JT] Обучение программированию с нуля

Victor hisbreht на rambler.ru
Вт Окт 6 17:23:39 UTC 2009


В сообщении от Вторник 06 октября 2009 13:28:59 автор Olexander Chernetskyy 
написал:
> Ситуация такая.
> Ребенок, школьница, 11 класс. Информатикой в школе очень недовольна.
> Просит научить программированию.
> Вот и вопрос: чему учить?
> Начать с GWBASIC or QuickBasic?
> А может сразу Perl & возможно Bash?
> А может Java?
> Не знаю.
> Какие будут мнения?
> 
Как мне кажется, выбор языка важен только в том случае, если планируется сразу 
после обучения подключать к какому-нибудь реальному проекту.
Если же это не предвидится, то следует выбирать из языков, которые 
1) хорошо известны тому, кто реально будет учить, чтобы учитель не попадал в 
неловкое положение от того, что он не только не знает каких-то вещей, но и 
слабо ориентируется в справочных материалах по выбранному языку.
2) хорошо воспринимаются ребенком в силу его психологических особенностей:  
одни лучше усваивают избыточное и более приближенное к естественному языку 
(Модула, паскаль, бейсик). другие - схематичные языки вроде С/С++, третьи - 
нечто промежуточное вроде Fortran.

Гораздо важнее определиться, зачем учить. 
Если чтобы быстрее перестала приставать с этой идеей, то дать по верхам С++ 
или что-то подобное наиболее занудным тоном.
Если планируется научить программированию, то больше внимания следует уделять 
не самому языку, а различным стилям программирования, качеству кода, 
алгоритмизации, описанию предметной области рассматриваемой задачи.
Если планируется быстро натаскать под конкретную задачу, то пара стандартных 
приемов, один базовый стиль и конкретный язык под задачу.

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


Подробная информация о списке рассылки community