Почему Python должен быть первым языком программирования в школе?

Nov 23, 2014 13:41

Сегодня писал ответ Нине Шумилиной из Твери, на вопрос о Python, как первом языке программирования в школе.

Она цитировала Константина Полякова, заключение его статьи в сентябрьском номере "Информатики":
По этим причинам автор склонен поддержать мнение И.А. Сукина: Python хорош для профессиональных программистов, но его использование в качестве ( Read more... )

Leave a comment

8kap8 November 23 2014, 12:40:04 UTC
Я еще добавлю вот какую мысль. Когда-то программированию учили на ассемблере (или даже в машинных кодах), и, когда появились языки высокого уровня, тоже наверняка были большие дебаты на тему того, можно ли начинать обучение программированию с языка высокого уровня, или надо обязательно учить ассемблер. Аналогичная проблема наверняка появлялась и во многих более мелких ситуациях (можно ли учить работе с файлами через стандартные функции, или надо досконально понимать, что происходит на низком уровне?) Поэтому вопрос с питоном - это, на мой взгляд, просто развитие этой же темы.

Reply

dkirienko November 23 2014, 13:06:04 UTC
Петя, это у меня в планах, этот кусок я не дописал. По этому поводу у меня есть замечательные цитаты - предисловие Кнута к "Искусству программирования", где он 50 лет назад рассуждает, на каком языке ему приводить примеры - на машинном или на "алгебраическом", под "алгебраическими" он подразумевает Fortran или Cobol. И останавливается на машинном языке, который сам же и придумывает. Его аргументы ( ... )

Reply

от Вл. Ильина 8kap8 November 23 2014, 13:25:12 UTC
Первым языком программирования должен быть Кумир, видимо, я согласен с Кнутом.

Кстати, не раскрыта тема "вторых", "третьих" языков. Первый язык в школе - Питон. А второй, или одного для школы достаточно?

А в вузе? С учетом того, что студенты разные - и "забудьте все, чему вас учили в школе" - опять Питон?

И еще важный вопрос.
Что значит "должен быть"? Это должно быть закреплено в стандарте?

Reply

Re: от Вл. Ильина dkirienko November 23 2014, 13:36:43 UTC
Не понял ремарку про Кумир и Кнута. Кнут вообще-то на вымышленном машинном языке писал примеры ( ... )

Reply

Re: от Вл. Ильина ext_544214 November 23 2014, 19:31:12 UTC
Почему не начинать с Java/C#?

Reply

Re: от Вл. Ильина dkirienko November 23 2014, 19:40:19 UTC
Почему в MIT не начинают с Java/C#? С простых вещей надо начинать.

Reply

Re: от Вл. Ильина ext_544214 November 23 2014, 19:51:04 UTC
Что из Java/C# непростое в том смысле, что имеет высокий порог входа? Концепция "Всё есть класс"?

Reply

Re: от Вл. Ильина dkirienko November 23 2014, 19:54:02 UTC
Размер кода, который нужно написать, чтобы программа заработала.

Reply

Re: от Вл. Ильина ext_544214 November 23 2014, 20:07:50 UTC
С трудом себе представляю студента, который, умея программировать (хоть как-то) на Python/C++/Pascal/BASIC испугался бы этой стандартной обёртки, которую ещё и среда разработки генерит по дефолту. А в остальном размер кода не сильно отличается

Reply

Re: от Вл. Ильина dkirienko November 23 2014, 20:20:54 UTC
Это какая-то бессмысленная дискуссия. Я вот с трудом представляю себе лектора, который желая обсудить такие вопросы, как двоичный поиск - обход в глубину - сортировка захочет начинать курс с того, что это де мол язык Java и я буду на нём писать примеры кода.

Вот я обсуждал эту статью с Андреем Станкевичем, он говорит, что он алгоритмы на лекциях пишет на питоноподобном псевдокоде. Хотя основной язык программирования для студентов в ИТМО - это Java.

Reply

Re: от Вл. Ильина ext_544214 November 23 2014, 20:39:47 UTC
Для алгоритмического курса - я соглашусь, что это более правильно. Я просто, видимо, не вполне понял цель "унификационного" курса

Reply

perepertoz November 27 2014, 01:42:19 UTC
1) нормально всё читается. язык же компактный
2) он мог бы писать примеры на scheme, но это была бы другая книга :)

Reply

vlad_tcvs April 18 2015, 15:45:04 UTC
В области программирования микроконтроллеров до сих пор идут дебаты. А после появления ардуино они стали куда жарче.

Reply


Leave a comment

Up