Декабрь 19, 2019 Просмотры 143 просмотра

С какого языка изучать программирование?

Беседовал недавно со школьником на тему: какой язык программирования он собирается изучать. Буду, говорит, изучать PHP или С++. Спрашиваю: а кто тебе посоветовал именно их изучать? - Да кто-то из друзей...

Ну что на это сказать? Если начать с этих языков (PHP, вообще-то, трудно назвать языком программирования в классическом смысле), то я сильно сомневаюсь в результатах. Тем более, что советовал, скорее всего, такой же "грамотей", как и тот, с которым беседовал я.

Так что смысл в такой статье есть. Привожу краткие характеристики тех языков, которые я преподавал в течение ряда лет.

BASIC - язык наиболее простой для начального знакомства. Его осваивают не только те, у кого хорошо развито математическое мышление. Я его преподавал как начальный язык программирования. Так как в нем нет необходимости описывать типы переменных, он больше похож на обычные математические решения. Для олимпиад подходит до городского уровня, но не выше.

PASCAL - требует определенного математического мышления, но вполне подходит для начального изучения. В настоящее время имеется достаточно много литературы, доступной для школьников. Олимпиадное программирование обычно происходит на нем. Это язык, на котором я веду преподавание.

СИ - язык профессионального программирования. Для начального изучения не рекомендуется. Его можно изучать после основательного знакомства с Паскалем. Но нужен он лишь для уровня международных олимпиад, ну может иметь преимущества для некоторых классов задач. С литературой по нему, доступной для школьников, я не знаком.

DELPHI - в консольном варианте это Паскаль, может использоваться на олимпиадах. В объектно-ориентированном варианте не используется на олимпиадах. Для начального обучения не рекомендуется, также как и остальные ООП языки программирования. Я провожу пару занятий по Delphi в конце курса, но исключительно для того, чтобы у моих учеников не было комплекса неполноценности при общении с "распальцованными" выскочками.

АССЕМБЛЕР - на самом деле правильнее говорить ассемблеры, т.к. для каждого типа процессоров ассемблер свой. Для начального изучения категорически не рекомендуется. Его как первый язык может освоить только электронщик, детально знакомый с работой цифровой техники. В Интернете я встречал предложения начинать с ассемблера, но это не более чем стёб.

Общие замечания: языки программирования различаются синтаксисом, т.е. способом выражения мысли программиста. Главное не синтаксис, а алгоритмическое мышление. Если его нет, то нет и навыка программирования. Если выработано алгоритмическое мышление, то переход с одного языка программирования на другой не столь уж и проблематичен. Во многих школах преподавание ведется на BASIC просто потому, что других языков преподаватели не знают, а те кто знают - работают программистами и ерундой (вроде преподавательской деятельности) не занимаются.

Вывод: начинать изучение надо с TurboBASIC или TurboPASCAL. Подчеркиваю, что с турбо-вариантов. Изучение начинать после знакомства с алгеброй. Как вариант допустимо изучение программирования до знакомства с алгеброй, но тогда на примере языка программирования BASIC вводить алгебраические понятия. Но это в том случае, если идет индивидуальное обучение.

Моя практика показывает, что раннее обучение, как правило, неэффективно. Правда, встречаются дети с исключительной (высокой) мотивировкой, для которых общие рекомендации не работают. Но это очень редко. Если у ребенка есть явно выраженные математические способности, то можно начинать с PASCAL, если нет, то лучше начинать с BASIC.

Всем и каждому программирование не нужно вообще. Для общего образования достаточно знать компьютер на уровне пользователя. Изучение языков программирования - это серьёзный труд, требующий большой концентрации внимания, поэтому прежде всего надо четко знать, чего вы хотите. И самое главное, чего хочет ребенок. Или это глубокий интерес - и тогда требуется серьезный подход, или это поверхностное желание... В случае глубокого желания надо настраиваться на серьезный труд и не на один год. (От редакции: в сети есть множество ресурсов, контент которых составляют обучающие материалы по конкретным языкам, статьи по практике программирования  и т.п.)

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

Желаю успехов в освоении этого предмета. От простого к сложному.


Просмотры 143 просмотра

Отзывы

Админ
Отлично!
Март 28 Админ

Статьи и обзоры Все статьи

Автодержатель - незаменимая вещь для тех, кто за рулем. Фаблеты, ...
Как подключить роутер? Этот вопрос задается в месяц более 70 ...
Хостинг предоставляет место для хранения файлов вашего сайта. Если привести ...
Криптовалюта - это цифровые деньги, или как ее еще называют ...