Сегодня писал ответ Нине Шумилиной из Твери, на вопрос о Python, как первом языке программирования в школе.
Она цитировала Константина Полякова, заключение его
статьи в сентябрьском номере "Информатики":
По этим причинам автор склонен поддержать мнение И.А. Сукина: Python хорош для профессиональных программистов, но его использование в качестве
(
Read more... )
1. "Алгебраические" языки приходят и уходят, мода на очередной "алгебраический" язык продолжается лет пять. А я тут о вечных ценностях собираюсь писать...
2. Студенту наверняка придется изучить не один машинный язык, коли он изучил один, то и с остальными будет нетрудно, значит, ничего страшного нет в том, чтобы писать коды на вымышленном машинном языке.
И в результате через 50 лет примеры кода у Кнута читать невозможно. Это самый большой недостаток "Искусства программирования" - примеры на машинном коде. С другой стороны, если бы он писал примеры на Fortran или Cobol, то результат был бы не лучше.
Поэтому в томе 4A, например, он уже примеры программ пишет просто на "естественном" языке.
Я про это планирую написать, когда займусь доработкой статьи.
Reply
Кстати, не раскрыта тема "вторых", "третьих" языков. Первый язык в школе - Питон. А второй, или одного для школы достаточно?
А в вузе? С учетом того, что студенты разные - и "забудьте все, чему вас учили в школе" - опять Питон?
И еще важный вопрос.
Что значит "должен быть"? Это должно быть закреплено в стандарте?
Reply
Про "вторые" и "третьи" языки я писать вообще-то не собирался, но вот написал ниже, посмотри комментарий. На мой вкус Python одного - достаточно, но тут возможны и варианты. Хочешь объяснять, как устроены массивы и динамическая память - ну рассказывай про С, пожалуйста.
"должен быть" - нет, я не претендую на закрепление статуса языка в стандарте. В стандарте вообще ни один язык не указан, поэтому вряд ли нужно туда вписывать какой-то конкретный язык.
Что касается вузов - это сложный вопрос. Мы несколько лет назад в поезде в ЛКШ.Зима обсуждали этот вопрос и я спрашивал, каким языкам программирования должны учить в вузе. Высказывались разные мнения и только один язык называли все - это C.
Ну "линейку" для вуза для специальности "Прикладная математика и информатика" я бы построил так, возможно, в разной последовательности.
1. Python
2. C
3. C++
4. Java или C#
5. Assembler
6. Что-то функциональное.
Причем роль Python здесь - это скорее унификация, выравнивание студентов, разминка некоторая. Студенты приходят разные, нужно с чего-то начинать. Если начинать сразу с C, то это может быть тяжело для некоторых.
Reply
Reply
Reply
Reply
Reply
Reply
Вот я обсуждал эту статью с Андреем Станкевичем, он говорит, что он алгоритмы на лекциях пишет на питоноподобном псевдокоде. Хотя основной язык программирования для студентов в ИТМО - это Java.
Reply
Reply
2) он мог бы писать примеры на scheme, но это была бы другая книга :)
Reply
Leave a comment