LINUX.ORG.RU

[C][образование] Нужна критика программы курса про Си

 ,


3

3

Хотелось бы увидеть желающих предметно покритиковать программу курса про Си для профильной специальности.

Рабочая версия программы: http://dev.iu7.bmstu.ru/trac/workbook_c_iu7/wiki/plan

Особенно интересует мнение по: http://dev.iu7.bmstu.ru/trac/workbook_c_iu7/wiki/plan#Лабораторныеработы

★★★★★

Ответ на: комментарий от MKuznetsov

есть легенда, что С делался не в последнюю очередь для стар-трека(игруха такая) на PDP.

Не надо пересказывать соседские байки, надо проверять любую не достоверную информацию.

http://cm.bell-labs.com/cm/cs/who/dmr/spacetravel.html

LamerOk ★★★★★
()
Ответ на: комментарий от sv75

Все остальные компиляторы как правило имеют свой аналог юниксового make, ms vc - nmake и т.д. Так что обычного make для сборки более чем достаточно.

LamerOk ★★★★★
()

Не вижу лекции по спискам, деревьям и другим структурам данных. Это намного более важно, чем изучение конкретного языка.

Еще я что-то не нахожу части о потоках и процессах, что тоже используется повсеместно.

В остальном вроде ничего.

vurdalak ★★★★★
()
Ответ на: комментарий от LamerOk

Спасибо, учту. Двоичную арифместику тащить не вижу нужды, есть аж два курса, где это должны раскрыть.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от vurdalak

Списки планировались и в лекциях, пойду проаерю.

Для остального у нас есть вроде бы курс Типы и структуры данных, правда он как-то больше по стекам и очередям, причем однопоточным, чем по дереьям (

sv75 ★★★★★
() автор топика
Ответ на: комментарий от sv75

правда он как-то больше по стекам и очередям, причем однопоточным

Эмм, а что там рассказывать? Простейшая реализация, небольшое описание. Одну лекцию на списки (включая стеки и очереди), одну на деревья. У нас, ЕМНИП, так и было. Ну и по лабе на каждую лекцию на сях.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Потоки и процессы у нас в отдельном курсе пока что.

В перспективе есть надежда сунуть часть сюда по мере распространения с11, поскольку у паскаля на пол-семестра уменьшится время.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от sv75

А паскаль зачем? Никогда не понимал, какой смысл давать то, что нигде не используется. От замены скобочек блоками begin/end понимание вряд ли улучшается.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Паскаль - красивый, умно спроектированный язык.

Я вот никогда не понимал, какой смысл давать то, что где-то там «используется». Цель образования не в том, чтобы дать готовые к употреблению навыки.

anonymous
()
Ответ на: комментарий от anonymous

Паскаль - такой же язык, как и тот же си, только там все пишется дольше из-за длинных ключевых слов. В чем профит?

vurdalak ★★★★★
()
Ответ на: комментарий от anonymous

Паскаль - красивый, умно спроектированный язык.

Из-за этого на нем никто не пишет? Все дураки, используют какие-то кривые недоязычки вроде C с какими-то закорючками вместо begin и end.

anonymous
()
Ответ на: комментарий от anonymous

Из-за этого на нем никто не пишет?

Преувеличиваете, ламер.

Паскаль спроектирован специально для обучения. Если у вас не хватает мозгов, чтобы это понять, то не лезьте вы в программирование вообще. Тут и так дебилов и ничтожеств чрезмерно много, еще одного ублюдка даром не надо.

anonymous
()
Ответ на: комментарий от vurdalak

Паскаль - такой же язык, как и тот же си

Не такой же. Более строгая система типов, нет всех этих неявных преобразований, нет array decay и вообще бесноватой арифметики указателей.

В чем профит?

В том, что язык проще и понятнее.

anonymous
()
Ответ на: комментарий от anonymous

Более строгая система типов

Особенно радует, что переменные только в начале метода можно объявить.

нет array decay и вообще бесноватой арифметики указателей

Это и недостаток одновременно.

vurdalak ★★★★★
()
Ответ на: комментарий от anonymous

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

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Ну и да, эти преимущества есть и в живых языках.

Каких?!?

Язык или простой (и пригодный для обучения), или практичный. Эти качества сочетаться не могут.

Почему именно паскаль? Давайте еще астрофорт учить, там ведь тоже наверняка много фич.

А надо, чтобы было МАЛО фич.

anonymous
()
Ответ на: комментарий от vurdalak

Особенно радует, что переменные только в начале метода можно объявить.

Естественно. Это хорошо и правильно.

Паскаль - уникальное сочетание строгости и простоты языка. Обычно язык если строгий, то еще и извратный (Ada, хацкелль и прочее говно).

anonymous
()
Ответ на: комментарий от anonymous

Паскаль спроектирован специально для обучения.

Не видел, чтобы в Berkeley, MIT, Harvard и прочих top CS университетах пользовались паскалем для обучения. Scheme, Python, C видел.

anonymous
()
Ответ на: комментарий от anonymous

Особенно радует, что переменные только в начале метода можно объявить.

Естественно. Это хорошо и правильно.

Ты еще пытаешься что-то кукарекать о программировании? Сожри-ка лучше говна и сдохни.

anonymous
()
Ответ на: комментарий от anonymous

нет бесноватой арифметики указателей

Есть она в паскале, ламерок. Впрочем не переживай. Может в 11-ом классе в школе тебе еще расскажут про арифметику указателей.

anonymous
()
Ответ на: комментарий от anonymous

Есть она в паскале, ламерок.

Ну ну. Кастани int к указателю.

Если у тебя мозга в голове нет, то так бы сразу и сказал.

anonymous
()
Ответ на: комментарий от anonymous

Язык или простой (и пригодный для обучения), или практичный.

Чушь. Тот же лисп, хоть нигде и не применяется, просто и практичный. Джава проста и практична, если ты не фанатик нативного кода.

А паскаль не просто так умер. Он умер потому, что преимуществ перед другими языками у него не было.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

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

Лисп не простой и не практичный. Стандарт Common Lisp больше тысячи страниц, с C++ посоревноваться может. Схема ни разу не простая (при полной непрактичности), один только call/cc чего стоит.

Джава проста и практична, если ты не фанатик нативного кода.

Java офигенно практична, но совершенно не проста. ООП при обучении не нужен, а в Java его под ковер замести невозможно.

А паскаль не просто так умер.

С чего-то это он «умер»? Как доминировал в образовании, так и доминирует по сей день. Кое где вытесняется новыми Виртовскими языками, тем же Обероном.

anonymous
()
Ответ на: комментарий от anonymous

ООП при обучении не нужен

На этом разговор можно завершить.

Как доминировал в образовании, так и доминирует по сей день.

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

vurdalak ★★★★★
()
Ответ на: комментарий от anonymous

С чего-то это он «умер»? Как доминировал в образовании, так и доминирует по сей день.

Где доминирует? В убогих рашкинских заборостроительных быдловузах? Лучше скажи в каких серьезных вузах UK и USA (в которых хоть computer science есть) используют твой паскаль.

anonymous
()
Ответ на: комментарий от vurdalak

Вынуждены ориентироваться на нулевых студентов, таких хватает. До начала приема ЕГЭ по информатике точно придется. Ну и Си как первый язык для нубов --- это чревато может быть.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от HerrWeigel

Это все еще под вопросом. SDL плох тем, что по ряду курсов требуют гуй с кнопочками и прочим. До решения разногласий со смежниками все довольно сложно.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Нормальная арифметика есть только в fpc.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Согласен, что паскаль ничем не лучше в обучении программированию. Одна из причин - куча языков С-подобных, не знаю ни одного Pascal\delphi-подобного (мож они есть). Скобочки по мне куда логичней begin end и воспринимаются лучше, хотя один хрен. На паскале пишут довольно много, готовых компонентов тоже много и вполне качественных.

Megamozg
()
Ответ на: комментарий от anonymous

Естественно. Это хорошо и правильно.

Вы не могли бы умереть, пожалуйста?

sv75 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

В убогих рашкинских заборостроительных быдловузах? Лучше скажи в каких серьезных вузах UK и USA (в которых хоть computer science есть) используют твой паскаль.

В Оксфорде используют Оберон.

anonymous
()
Ответ на: комментарий от vurdalak

На этом разговор можно завершить.

ООПодрочер детектед. А я-то думал, что с человеком разговариваю. Оказалось, что со свиньей.

anonymous
()
Ответ на: комментарий от vurdalak

Джава проста и практична, если ты не фанатик нативного кода.

Кстати, сомневаюсь в простоте. Там есть свои айсберги.

Там вывод типов кстати есть, я отстал от жизини?

sv75 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

Паскаль спроектирован специально для обучения.

Ну и пусть его в школе по-прежнему используют, как раз подходит.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

В Оксфорде используют Оберон.

Можно ссылку, подтверждающее это утверждение?

На сайте Oxford'а я только нашел, что для обучения используют Haskell (курс functional programming) и Java (курсы imperative programming и object-oriented programming).

anonymous
()
Ответ на: комментарий от sv75

Ну и пусть его в школе по-прежнему используют, как раз подходит.

Для ВУЗов тоже в самый раз.

anonymous
()
Ответ на: комментарий от anonymous

Бакаларвская программа слишком коротка, чтобы потом переучиваться (возможно, это наша главная текущая проблема). Я про профильное образование, конечно.

Кроме того, есть шанс начать принимать ЕГЭ по информатике, при его сдаче рассказывать повторно азы на Паскале вообще не ясно зачем.

sv75 ★★★★★
() автор топика
Последнее исправление: sv75 (всего исправлений: 1)
Ответ на: комментарий от sv75

Бакаларвская программа слишком коротка, чтобы потом переучиваться (возможно, это наша главная текущая проблема). Я про профильное образование, конечно.

А ты тоже из тех, кто убежден, что ВУЗы должны давать «практические» знания? Ну тогда тебе не в ВУЗе преподавать надо, а в ПТУ.

Переучиваться студенты должны уже сами. А ВУЗ должен подготовить их к тому, чтобы они могли переучиться на что угодно в кратчайшие сроки.

Кроме того, есть шанс начать принимать ЕГЭ по информатике, при его сдаче рассказывать повторно азы на Паскале вообще не ясно зачем.

Рассказывать не азы, очевидно.

anonymous
()
Ответ на: комментарий от anonymous

Не видел, чтобы в Berkeley, MIT, Harvard и прочих top CS университетах пользовались паскалем для обучения. Scheme, Python, C видел.

Потому что в этих вузах, как легко догадаться, программированию призван учить не язык, а преподаватель. В отрыве от SICP Scheme был бы нужен фанатам, а Python и так нужен только в качестве читабельного скриптового языка.

metar ★★★
()

говную драйвер com-порта или резидента для доса.

x4DA ★★★★★
()
Ответ на: комментарий от anonymous

А ты тоже из тех, кто убежден, что ВУЗы должны давать «практические» знания?

а в чем проблема давать теоретические знания на С?

Почему обязательно нужно обучать с помощью абстрактного сферического языка в вакууме, который нигде не применяется? Вот у меня препод в курсе структур и алгоритмов обработки данных упорно применял в лекциях «псевдокод», который от С отличался только отсутствием точек с запятой на конце, но называть его С и писать ответы на экзаменах с применением С было «ататата»

Harald ★★★★★
()
Ответ на: комментарий от anonymous

А ты тоже из тех, кто убежден, что ВУЗы должны давать «практические» знания?

Да, должны, так написано в образовательном стандарте (есть раздел «уметь и владеть навыками»).

Ну тогда тебе не в ВУЗе преподавать надо, а в ПТУ.

Без анонимусов разбёрёмся.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от Harald

но называть его С и писать ответы на экзаменах с применением С было «ататата»

Типичная для россиянии болезнь (

sv75 ★★★★★
() автор топика
Ответ на: комментарий от sv75

Да, должны, так написано в образовательном стандарте (есть раздел «уметь и владеть навыками»).

Мало ли, что в говностандартах написано. Классическое советское фундаментальное образование всегда строилось на совершенно иных принципах. А те, кто их подрывает - те враги и подонки.

anonymous
()
Ответ на: комментарий от Harald

а в чем проблема давать теоретические знания на С?

А зачем? Он для этого не очень хорошо приспособлен.

Почему обязательно нужно обучать с помощью абстрактного сферического языка в вакууме, который нигде не применяется?

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

Вот у меня препод в курсе структур и алгоритмов обработки данных упорно применял в лекциях «псевдокод», который от С отличался только отсутствием точек с запятой на конце

Чего-то ты явно недоговариваешь.

anonymous
()
Ответ на: комментарий от anonymous

Переучиваться студенты должны уже сами. А ВУЗ должен подготовить их к тому, чтобы они могли переучиться на что угодно в кратчайшие сроки.

Вот пока есть ощущение, что убойный курс Си тут будет очень полезен. После радости плотного общения с Сями становится ясно, чего не хватает в нём.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от anonymous

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

Безусловно. Жизнь, к сожалению, относится ко второму варианту. «В теории нет разницы между теорией и практике. На пркатике — есть»

Неровности и идиотизмы часто есть следствие мыслительных процессов людей не глупых, и если их рассказывать правильно, то они являются весьма полезными для понимания.

sv75 ★★★★★
() автор топика
Ответ на: комментарий от sv75

Вот пока есть ощущение, что убойный курс Си тут будет очень полезен. После радости плотного общения с Сями становится ясно, чего не хватает в нём.

Рано. Пока не прочувствуют основ, к Си нельзя и близко подпускать.

А вот курсе на пятом можно дать задание - написать компилятор Си (или хотя бы существенного его подмножества). Заодно и Си освоят, и поймут, что с ним не так.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.