Как обучать программированию на физфаке?, Что реально необходимо физику. |
Документ взят из кэша поисковой машины. Адрес
оригинального документа
: http://wasp.phys.msu.ru/forum/index.php?showtopic=11644
Дата изменения: Unknown Дата индексирования: Sun Apr 10 05:02:45 2016 Кодировка: Windows-1251 |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
Как обучать программированию на физфаке?, Что реально необходимо физику. |
![]()
Сообщение
#1
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
В процессе общения с некоторыми людьми, многие из которых понимают что такое программирование гораздо лучше меня, возникла потребность обсудить этот вопрос. Мне кажется, что обучать детей С и С++
, из которых многие вообще понятие не имеют что такое алгоритм, кажется просто варварством и садизмом. Но начинать, как в MIT, с книжки SICP и давать scheme, кажется тоже излишним, ибо не всем нужно так глубоко лезть в computer science. Но, на мой взгляд, давать Python на первых курсах было бы идеально. Отличный язык, огромное количество пакетов для научной работы, существование реализаций, интегрирующихся с .NET и Java. Кому нужно, те легко сами освоят и С, и С++. Но то, что у нас творится на первых курсах, прививает стойкое отвращение к самому процессу программирования, по крайней мере у меня полно примеров( да и у меня вернулся интерес только к курсу четвертому) Сообщение отредактировал ivandasch - 28.7.2007, 17:15 -------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#2
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Действительно, преподавание программирования у нас довольно странное. У меня создалось впечатление, что какой-то общей программы нет и в каждой группе учат что-то свое (тут я в основном имею в в виду второй поток, но насколько я знаю, на первом потоке примерно также). Например, у меня на первом курсе было программирование на дельфи, а потом Mathematica (да, и еще LaTeX немного), а в у моего знакомого из другой группы С++ и matlab.
Сложность с программированием в том, что начальный уровень у всех сильно отличается, ни в каком другом курсе такой проблемы нет (кроме английского, но его преподают еще хуже), и что с этим делать не очень понятно. -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#3
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
2 Werth: Что делать с разным уровнем как раз все понятно. На физфак поступают умные люди, поэтому достаточно давать концепции, а не реализации. Для этого нужен ПРОСТОЙ язык. С и С++ для этого явно не подходит. На первых курсах, увы, не учат программированию, а учат реализации некоторых концепций на конкретных языках, которые сами по себе очень сложны и не предназначались для обучения. Это языки для профессионалов.
-------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#4
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Цитата(ivandasch @ 28.7.2007, 18:33) Ну если не вдаваться в детали (ООП какое-нибудь, например, или шаблоны), то С/С++ не сильно отличается от дельфи. Но вообще я согласен, лучше начинать с чего-нибудь другого, того же питона. -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#5
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
2 Werth: Шаблоны это вообще то, ради чего и стоит использовать С++. А без ООП это просто С, который сейчас является "переносимым ассемблером" и для обучения программированию абсолютно не годный. Одна работа с вводом/выводом чего стоит. Масса проблем, на преодоления которых тратится уйма времени, при этом важные детали совсем не освещаются.
P.S. Изучение MATLAB - это вообще нонсенс. Учитывая то, что практически веcь нужный функционал есть в бесплатном виде для python, навязывать эту систему в наше время кажется абсурдным. Не стоит забывать и о борьбе с нелегальным софтом, которое делает изучение Matlab просто бездумной тратой денег, которые факультету явно не хватает. -------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#6
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Цитата(ivandasch @ 28.7.2007, 18:50) Шаблоны - вещь, конечно, отличная, я просто имел в виду, что их не надо рассказывать на семинарах, по крайней мере на начальном этапе. Цитата(ivandasch @ 28.7.2007, 18:50) Ну для этого можно использовать iostream Цитата(ivandasch @ 28.7.2007, 18:50) Изучение MATLAB - это вообще нонсенс. Учитывая то, что практически веcь нужный функционал есть в бесплатном виде для python, навязывать эту систему в наше время кажется абсурдным. Не стоит забывать и о борьбе с нелегальным софтом, которое делает изучение Matlab просто бездумной тратой денег, которые факультету явно не хватает. В матлабе почти все, что нужно уже есть сразу, а для питона нужно еще и устанавливать искать дополнительные пакеты. Но с точки зрения легальности матлаб, конечно, не вариант. Сообщение отредактировал Werth - 28.7.2007, 18:00 -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#7
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
2 Werth: Я имел ввиду ввод-вывод в С. iostream - это STL
![]() P.S. При этом в дисплейном классе до сих пор используется устаревший компилятор, который не поддерживает стандарт. Этож просто абзац! P.P.S. Я знаю курс языка С++, где STL и шаблоны начинают использовать сразу, а реализация собственных шаблонов происходит где-то ближе к середине курса ![]() Сообщение отредактировал ivandasch - 28.7.2007, 18:22 -------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#8
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Цитата(ivandasch @ 28.7.2007, 19:14) Я в курсе ![]() -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#9
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
2 Werth: То, что это уже не С
![]() -------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#10
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Цитата(ivandasch @ 28.7.2007, 19:27) Я считаю, что ОПП в курсе программирования вообще не нужно объяснять, для большинства научных задач это лишнее. А кому понадобится, тот сможет сам разобраться, имхо. Сообщение отредактировал Werth - 28.7.2007, 18:30 -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#11
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
2 Werth: Вот это очень зря, ООП часто незаменимо в некоторых именно научных задачах. На самом деле в концепции ООП ничего сложного нет, и на примере простых языков эту парадигму понять очень легко.
-------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#12
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Цитата(ivandasch @ 28.7.2007, 19:46) На самом деле в концепции ООП ничего сложного нет, и на примере простых языков эту парадигму понять очень легко. Но все-таки сначала хорошо бы объяснить более просты вещи, циклы или массивы, например. А то некоторые и этого не знают. -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#13
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
2 Werth: Это следствие сложности языка. Например зачем осваивать "массив", когда он уже реализован и является встроенным типом? Так же как список,хеш, тьюпл. Понять как реализовать массив не могут потому, что не разобрались с указателями. С циклами не разобрались потому, что голова перегружена другими деталями. Кстати, изучая С, люди так и не узнают что такое функциональное программирования. Я лично только сейчас начал исправлять огрехи нашего физфаковского образования.
P.S. Зато мы изучали win32api ("Зато мы делаем ракеты, и переплыли Енисей.....") -------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#14
|
|
![]() индивидуалист, ренегат и предатель ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 542 Репутация: 39 Предупреждения: (0%) ![]() ![]() |
Развели демагогию... Вы ж профессионалы оба - достаньте и померяйтесь. Я ваще кроме как недо-С++ походу ничего не знаю
![]() Хоть и моя кафедра, но преподавают, проганье действительно отвратно. Причины тому вполне очевидны для инсайдера, но как вы понимаете, сказать я ничего не скажу (мне еще диплом получить надо) ![]() Давайте ближе к телу, господа. У меня напиример есть неплохой материал, который я хотел Соболеву предложить как пособие для спецкурса. Если есть какой-нть brief summary по вашей альтернативе, активней, я полон энтуазизма пообщаться и с Соболевым, а возможно и с самим Пытьевым по этому поводу. С фразой "давайте преподавать Python" или "все это недо-С++" или "Ваня ваши методы на шляпу намазывает и ест по утрам", я естественно ни к кому общаться не пойду. Жду фидбэка, желательно с ударом в ПМ, чтоб я оперативней реагировал... -------------------- ... Фрейд до сих пор озадаченно моргает...
|
![]()
Сообщение
#15
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Цитата(ivandasch @ 28.7.2007, 20:05) Я имел в виду само понятие. Для некоторых это не совсем очевидно. Цитата(ivandasch @ 28.7.2007, 20:05) А надо? Я правда сам его почти не знаю, только собираюсь заботать, но после чтения всяких обзорных статей у меня создалось впечатление, что для физических задач это не сильно нужная вещь. Цитата(ivandasch @ 28.7.2007, 20:05) А мы нет ![]() -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#16
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
Лех, посмотри в сторону http://www.intuit.ru/department/pl/python/12/2.html. Отличное введение. При желании, я могу привлечь одного функциональщика для спецкурса по clisp или scheme. Возможность есть, было бы желание....
Werth, lisp для численных расчетов, естественно, не годен. Но для таких вещей как CAS он очень полезен, ну и вообще для вправления мозгов. Все-таки в MIT не дураки работают, но почему-то они на первом курсе преподают программирование на базе диалекта lisp ![]() Сообщение отредактировал ivandasch - 28.7.2007, 19:25 -------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]()
Сообщение
#17
|
|
![]() индивидуалист, ренегат и предатель ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 542 Репутация: 39 Предупреждения: (0%) ![]() ![]() |
Я со следующей недели наверно буду активно на факультете появляться начинать. Ты бываешь там? Пообщаимсо. Я кстати, уже вторую неделю не курю и уже не хочется. Так что, скоро стану жирным ублюдком
![]() -------------------- ... Фрейд до сих пор озадаченно моргает...
|
![]()
Сообщение
#18
|
|
![]() программист ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: VIP Сообщений: 1,008 Репутация: 106 Предупреждения: (0%) ![]() ![]() |
про python мысль интересная. недавно меня познакомили с пакетами numpy и scipy -- в принципе, по возможностям почти как матлаб без тулбоксов и без оболочки.
у этой концепции есть недостатки -- 1) мало кто с этим знаком, 2) отсутсвие вменяемой интерактивной среды -- я имею в виду не существующие среды для питона, а именно математические a-la matlab. (я как-то уже привык получать необходимую мне информацию в середине отладки одним наведением мыши на объект). 3) готовые библиотеки алгоритмов (a-la toolbox'ы матлаба) :-) причем первое -- существенней. кстати -- про способности наших студентов вы преуменьшаете. студент у нас способный, только очень ленивый. сложности ровно из-за этого. за последние 4 года моего стажа -- НИ ОДИН студент в моей группе не обращался ко мне с вопросом о доп. времени в компьютерном классе, несмотря на то, что компы есть не у всех, и не все (а особенно те, у кого нету дома компов) успевают написать все в классе. и еще одно пожелание: просьба подкреплять свои предположения конкретным опытом, а не просто восторгом от опыта знакомства с конкретной средой/языком или пакетом, или своим IMHO. скажем, кому-то не хватало познаний в теории графов и диаграмм вороного для решения конкретной задачи, или кому-то пришлось, матерясь, осваивать самостоятельно QT/unix для чего-то конкретного, или кто-то с горя пошел на доп. образование чтобы еще раз изучить С++, потому-что науч.рук потребовал что-то сделать. Tal: никто тебя не выгонит с кафедры, не переживай.. ![]() -------------------- То, что маленький компьютер может сделать, имея большую программу, большой компьютер сделает, имея малую, отсюда следует вывод, что бесконечно большая программа может действовать без всякого компьютера. ....каждое бесконечно длинное заклинание должно реализоваться..ї С.Лем "Профессор А.Дронда" |
![]()
Сообщение
#19
|
|
![]() элита ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Мега-Гуру Сообщений: 613 Репутация: 52 Предупреждения: (0%) ![]() ![]() |
Цитата(ivandasch @ 28.7.2007, 20:13) lisp для численных расчетов, естественно, не годен. Но для таких вещей как CAS он очень полезен, ну и вообще для вправления мозгов. Да, согласен. Хотя вряд ли у кого-нибудь может возникнуть необходимость писать самому CAS. Цитата(SHiFT @ 28.7.2007, 20:29) отсутсвие вменяемой интерактивной среды -- я имею в виду не существующие среды для питона, а именно математические a-la matlab. (я как-то уже привык получать необходимую мне информацию в середине отладки одним наведением мыши на объект) Вот это мне больше всего нравится в матлабе. Вплоть до того, что я некоторые алгоритмы сначала пишу и отлаживаю в матлабе, а потом переношу на С++ или Fortran Сообщение отредактировал Werth - 28.7.2007, 19:35 -------------------- How I want a drink, alcoholic of course, after the heavy lectures involving quantum mechanics.
|
![]()
Сообщение
#20
|
|
![]() ----- ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Элита Сообщений: 4,867 Репутация: 260 Предупреждения: (0%) ![]() ![]() |
2 SHiFT: Да сред полно, включая бесплатные. Например Eric http://www.die-offenbachs.de/eric/eric4-screenshots.html Сорри, по Лоровской привычке до конца не дочитал..... Но ученые не жалуются, им то как раз Python очень нравится. И он значительно быстрее Matlab.
Я это говорю, потому что сейчас разрабатываю конкретный софт, используя С++ и Qt4(ну и еще одну кривую библиотеку). И понимаю, что знаний мне не хватает. Понял я это после разговора с коллегой, который большой фанат функционального программирования. Он говорит, что это совершило в его сознании настоящий переворот. Начал и я копать в эту тему, и понял, что сам практически ничего не знаю из теории алгоритмов. И меня это удручает. Естественно С++ я изучал сам, причем скорее этому меня побудило знакомство с Linux и Qt. Можно сказать то, что физфак не дал мне ничего в области computer science, до всего доходил сам. Сообщение отредактировал ivandasch - 28.7.2007, 19:41 -------------------- Возле города Пекина ходят-бродят хунвейбины.
И старинные картины ищут-рыщут хунвейбины. И не то, чтоб хунвейбины любят статуи, картины, Вместо статуй будут урны революции культурной. И ведь главное, знаю отлично я, Как они произносятся, Но что-то весьма неприличное На язык ко мне просится, Хунвейбины. |
![]() ![]() |
Текстовая версия | Сейчас: 10.04.2016, 5:02 |