Как вы относитесь к паскалю?
, (есть гипотеза)
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.156] |
|
|
| Страницы: (20) [1] 2 3 ... 19 20 все ( Перейти к последнему сообщению ) |
Как вы относитесь к паскалю?
, (есть гипотеза)
|
Сообщ.
#1
,
|
|
|
|
Голосование только для тех, кто знает какой-нибудь диалект паскаля и писал на нем что-нибудь сложнее helloworld.
Когда-то прочитал в журнале "Магия ПК" статью, в которой излагались теоретические принципы преподавания программирования в школе. В ней, в частности, защищался тезис: первым, "учебным" языком программирования ни в коем случае не должен быть тот, который ученик будет использовать для рабочих программ. Причина в том, что новичок слишком часто сталкивается с проблемами, и зачастую совершенно непонятно, в чем же именно проблема и что от него хочет этот бежевый ящик, и негативные эмоции переносятся на "тупой" язык программирования. К тому же у новичка нет навыков правильной разработки программ, он часто пишет спагетти-код без пробелов с однобуквенными именами с инопланетной логикой, и эти неправильные навыки закрепляются - потому что первые. Когда уже опытному программисту приходится писать на своем "первом" языке, все эти эмоции и рефлексы всплывают и очень мешают. Моим первым ЯП был бейсик. Никто не заставлял меня учить его насильно - все сам. Я признаю, что современный бейсик, в общем-то, нормальный язык. Но вот писать на нем категорически не хочется даже в теории - лучше уж на фортране-66, чес-слово. И я, конечно же, не одинок - наверное, все слышали, что "курица - не птица, бейсик - не язык" и что "студенты, начинавшие с бейсика, безнадежно испорчены". Такая же судьба постигла еще один "учебный" язык - паскаль. Если судить беспристрастно, то паскаль (особенно современные диалекты) - отличный язык. Синтаксис, близкий к естественному английскому, железное правило "сперва объяви, потом уже используй", отличная, не костыльная модульность, и программисту не нужно помнить обо всех протечках высокоуровневых абстракций, чтобы случайно не отстрелить себе ногу. Может, в нем не хватает некоторых фишечек, присущих некоторым монстрикам, но это отнюдь не фатальный недостаток. Тем не менее очень широко распространено мнение, что паскали ни на что не годятся, многие даже испытывают к паскалю какую-то запредельно иррациональную ненависть. Вот я и подумал: может быть, паскаль ненавидят те, у кого он был первым, "учебным" высокоуровневым языком? |
|
Сообщ.
#2
,
|
|
|
|
Цитата Начинал(а) с другого языка, паскаль - хороший язык |
|
Сообщ.
#3
,
|
|
|
|
Python - хороший язык для обучения в школах. Pascal - был им 20 лет назад, сейчас на дворе 14-й, если верить календарю
Цитата AVA12 @ Причина в том, что новичок слишком часто сталкивается с проблемами, и зачастую совершенно непонятно, в чем же именно проблема и что от него хочет этот бежевый ящик, и негативные эмоции переносятся на "тупой" язык программирования. Это верно в отношении C/C++, как первого языка. Цитата AVA12 @ Если судить беспристрастно, то паскаль (особенно современные диалекты) - отличный язык. Для каких задач он отличный? Для промышленной разработки он не годится из-за бедности средств и технологий, для обучения - из-за бедности парадигм и концепций. |
|
Сообщ.
#4
,
|
|
|
|
Цитата Мяут-Настоящий @ Для каких задач он отличный? Skype? Работает же, на Delphi написан. |
|
Сообщ.
#5
,
|
|
|
|
Цитата для обучения - из-за бедности парадигм и концепций Структурное программирование, ООП, модули, обработка ошибок, нормальные строки "из коробки", быстрый компилятор - что еще нужно? Новичку нужно научиться программировать, если сразу забивать ему голову еще и концептуальными парадигмами, то, боюсь, он ничему не научится. Остальное - офтопик. |
|
Сообщ.
#6
,
|
|
|
|
Где вариант - пофиг? Чем больше паскалят - тем лучше джавистам
|
|
Сообщ.
#7
,
|
|
|
|
Цитата AVA12 @ Новичку нужно научиться программировать, если сразу забивать ему голову еще и концептуальными парадигмами Прежде чем дать таблицу умножения, рассказывают саму концептуальную парадигму (умножить n на m - это сложить n с сами собой m раз). Почему в программировании должно быть не так? Цитата Pacific @ Skype? Работает же, на Delphi написан. По поводу Delphi (это кстати отдельный язык) - в холиварах куча тем, милости прошу. Правда у Skype на нем написана только морда виндового клиента. Цитата AVA12 @ Структурное программирование, ООП, модули, обработка ошибок, нормальные строки "из коробки", быстрый компилятор Все это уже есть в Python. А еще есть встроенные списки, множества и словари, foreach-цикл (причем только он). Синтаксис у Python выразительнее, и к тому же обязывает расставлять отступы. А еще есть интерактивный интерпретатор, который позволит вообще не думать о том, что это такое на первом занятии. Ну и как я заметил - зачем забивать голову языком, который потом применяться человеком врядли будет. |
|
Сообщ.
#8
,
|
|
|
|
Как пример кода на Python. Задание - считать с клавиатуры 2 числа и вывести в шестнадцатиричной системе счисления их сумму.
![]() ![]() a = int(raw_input('Enter a: ')) b = int(raw_input('Enter b: ')) print hex(a + b) |
|
Сообщ.
#9
,
|
|
|
|
Цитата Прежде чем дать таблицу умножения, рассказывают саму концептуальную парадигму (умножить n на m - это сложить n с сами собой m раз). Почему в программировании должно быть не так? Однако высшую математику преподают в вузах, а не в начальной школе. Почему в программировании должно быть не так? Цитата и к тому же обязывает расставлять отступы Вот это, кстати, очень спорная фишка. Навязывание правильного стиля - это, наверное, хорошо, но вот возможность случайно сломать логику незаметным для глаза способом - пугает. Цитата зачем забивать голову языком, который потом применяться человеком врядли будет Зачем забивать голову кучей арифметических примеров? Зачем забивать голову материальными точками с двухвалентными аллелями? Может, чтобы научиться учиться? И перечитай второй абзац первого собщения. |
|
Сообщ.
#10
,
|
|
|
|
Цитата print hex(a + b) Не кажется ли тебе, что для новичка было бы полезнее самому перевести число в шестнадцатиричный вид? А заучивать список магических кнопок - это удел дрессированных обезьян? |
|
Сообщ.
#11
,
|
|
|
|
У меня на 5.5-м, 6-м и 7-м Паскалях множество интересного написано, включая системное. Но ничего промышленного, это да.
|
|
Сообщ.
#12
,
|
|
|
|
Начинал с бесика второй язык был паскаль.
Третий ассемблер, затем си, php, sql, c#, си++. Ненавижу то, что паскаль был второй. Не навижу потому что знаю лучше чем си++. Но язык хороший и лучше чем си/си++, но нехватает популярности у паскаля - нет массы кода которая очень нужна. С одной стороны языки учил сам. Хотя это не совсем правда. |
|
Сообщ.
#13
,
|
|
|
|
AVA12, почему или "ненавижу" или "хороший"? Между ними такая гамма вариантов...
Вот конкретно сейчас я никак к паскалю не отношусь. У меня просто нет повода как-либо к нему относиться Добавлено ИМХО, единственный приличный наследник Паскаля - Ада. |
|
Сообщ.
#14
,
|
|
|
|
D_KEY, можно ведь и воздержаться от голосования.
|
|
Сообщ.
#15
,
|
|
|
|
Цитата AVA12 @ Однако высшую математику преподают в вузах, а не в начальной школе. Почему в программировании должно быть не так? Ну вот я и не призываю разбираться с обобщенным программированием и MPL в C++. И даже об итераторах и генераторах ни слова ![]() Цитата AVA12 @ Вот это, кстати, очень спорная фишка. Навязывание правильного стиля - это, наверное, хорошо, но вот возможность случайно сломать логику незаметным для глаза способом - пугает. Безусловно, спорная. Но стиль - куда более серьезная проблема у начинающих разработчиков, чем логика. Цитата AVA12 @ Может, чтобы научиться учиться? Ну если есть возможность научить сразу хорошему языку, почему избегать ее? Цитата AVA12 @ Не кажется ли тебе, что для новичка было бы полезнее самому перевести число в шестнадцатиричный вид? А заучивать список магических кнопок - это удел дрессированных обезьян? Может быть. Но не на первом занятии, когда еще ни слова о циклах не сказано. Добавлено Цитата D_KEY @ У меня просто нет повода как-либо к нему относиться ![]() Ну вот голосилку создали - повод появился |