2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему На страницу Пред.  1, 2, 3, 4, 5, 6  След.
 
 Re: программирование
Сообщение21.08.2009, 15:34 
Заслуженный участник


15/05/09
1563
Xaositect в сообщении #236748 писал(а):
Википедия утверждает, что "In the academic realm of MIT there is a long tradition of criticizing object-oriented programming as a false annunciation." Понимаю, что это не авторитетный источник, но там еще ссылка на статью о том, что "no significant difference in productivity between OOP and procedural approaches"
Возможно, я ошибался, и в MIT действительно господствует негативное отношение к ООП. Возможно, что в среднем использование ООП не привело к повышению продуктивности разработки ПО по сравнению с ситуацией неиспользования ООП. Впрочем, последний вывод, если он и следует из исследований, вполне может нести коньюктивный привкус.

Могу сказать лишь о себе: переход к использовании С++ вместо С не дал мне существенных преимуществ. Когда же я понял суть ООП, преимущества возникли, а моя продуктивность возросла как будто "на пустом месте" - тот же язык, а результаты разительно другие. И я отнюдь не считаю, что "Classes and inheritance are syntactic sugar"; я использовал по сути аналогичные приемы в проектах на С и даже на Фортране :) , однако только когда концепция выходит за рамки "чистой" и начинает поддерживаться языковыми средствами, она становится действительно эффективной.

Что касается ФП как альтернативы императивному программированию, то здесь я воздержусь от сравнений по двум причинам: самая главная - я не имею опыта использования ФП, вторая - специфика моей работы в последние N лет (в основном - низкоуровневое программирование).

В любом случае, все, что я написал, - ИМХО; я не претендую на истину в последней инстанции.

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 19:31 
Заслуженный участник


27/04/09
28128
ФП во многих случаях не может иметь места: как уже сказал PapaKarlo, в низкоуровневом программировании; в реализации пользовательских интерфейсов тоже. И больше пока в голову, кроме интерфейсов, ничего не пришло.
А вообще, ядро программы может быть без нареканий (только производительность, но она может быть улучшена оптимизациями) написано на функциональном ЯП, но интерпретатор/компилятор этого ЯП должны быть императивно-написанными.
Не стоит раздувать типичный ФП-vs-ООП-холивар, тут больше нечего сказать. У обоих есть преимущества. Но учиться программированию, думаю, лучше с ООП.

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 19:53 
Заслуженный участник
Аватара пользователя


06/10/08
6422
arseniiv в сообщении #236842 писал(а):
в низкоуровневом программировании;

Ну тут от этого никуда не денешься.

arseniiv в сообщении #236842 писал(а):
в реализации пользовательских интерфейсов тоже.

http://haskell.org/haskellwiki/Phooey
http://haskell.org/haskellwiki/WxFruit
http://xmonad.org/
http://programatica.cs.pdx.edu/House/

arseniiv в сообщении #236842 писал(а):
А вообще, ядро программы может быть без нареканий (только производительность, но она может быть улучшена оптимизациями) написано на функциональном ЯП, но интерпретатор/компилятор этого ЯП должны быть императивно-написанными.

http://www.haskell.org/ghc/
http://hackage.haskell.org/trac/ghc/wik ... y/Compiler
Парсеры и преобразователи вообще хорошо пишутся в функциональном стиле.

arseniiv в сообщении #236842 писал(а):
Не стоит раздувать типичный ФП-vs-ООП-холивар, тут больше нечего сказать. У обоих есть преимущества. Но учиться программированию, думаю, лучше с ООП.

Я так и не научился программировать на C++, хотя не скажу, что меня плохо учили. И дело тут скорее не в ООП, а в C++. Это ужасный язык. Более-менее приличные библиотеки, типа boost, состоят из неудобочитаемых и неудобопонимаемых темплэйтов. Надеюсь, скоро будут учить ООП на примере Python.

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 20:19 


27/07/09
21
Товарищи PapaKarlo и arseniiv, как говорится, имхо у всех имхастое.
Я же, привел литературу, которая и подтверждает мои слова. А ваши утверждения, относительно ФП и программирования в целом, не обоснованы и не надо ими вводить людей в заблуждение.

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 20:34 
Заслуженный участник


27/04/09
28128
Я ни слова не говорил о Си++. Мне он тоже не нравится. Он не унифицированный, хотя операторы типа += хороши. Но они уже и так много где есть.
Xaositect в сообщении #236852 писал(а):
Парсеры и преобразователи вообще хорошо пишутся в функциональном стиле.
Ну т ак ведь самый первый парсер для функционального ЯП должен быть написан на нефункциональном. А потом уже можно сколько угодно раз писать дальше на чём угодно :)

AVM в сообщении #236865 писал(а):
А ваши утверждения, относительно ФП и программирования в целом, не обоснованы и не надо ими вводить людей в заблуждение.
Ну-ну, а это уже ваше имхо. Объективности ну никакой. :?

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 22:06 
Заслуженный участник


15/05/09
1563
arseniiv в сообщении #236842 писал(а):
Не стоит раздувать типичный ФП-vs-ООП-холивар, тут больше нечего сказать. У обоих есть преимущества.
Полностью согласен.

arseniiv в сообщении #236842 писал(а):
Но учиться программированию, думаю, лучше с ООП.
Не знаю. Ничего сказать не могу - я сам учился.

Xaositect в сообщении #236852 писал(а):
Я так и не научился программировать на C++, хотя не скажу, что меня плохо учили. И дело тут скорее не в ООП, а в C++. Это ужасный язык.
Китайский - это ужасный язык. Сколько иероглифов надо учить. Но небольшая часть населения Земли имеет иное мнение (наверное).

AVM в сообщении #236865 писал(а):
А ваши утверждения, относительно ФП и программирования в целом, не обоснованы и не надо ими вводить людей в заблуждение.
Какие утверждения необоснованы? Утверждения, что не стоит возводить ФП на пьедестал?

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 23:35 
Заслуженный участник


15/05/05
3445
USA
AVM в сообщении #236865 писал(а):
Я же, привел литературу, которая и подтверждает мои слова. А ваши утверждения, относительно ФП и программирования в целом, не обоснованы и не надо ими вводить людей в заблуждение.

Вот Ваш список:
AVM в сообщении #236517 писал(а):
Броуди "НАЧАЛЬНЫЙ КУРС ПРОГРАММИРОВАНИЯ НА ЯЗЫКЕ ФОРТ" - замечательная книга.
SICP - одна из лучших книг по программированию вообще.
Про ФП читайте у Харрисона "Функциональное программирование".
Кроме Вашего "имхастого имхо" ничего в этом списке нет.

Я себе представил молодого программиста, который ищет работу. У него спрашивают: "На чем программируете?". А он в ответ: "На Форте, Схеме, Эрланге, знаю Коммон Лисп. А С++, Делфи, Ява и, прости Господи, Бейсик - это отстой."

И не надо кивать на MIT. Там готовят не программистов, а докторов наук по Computer Science. И от C и С++ там вовсе не отказываются. Но считают, что ученый должен владеть разными парадигмами программирования.

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 23:36 


21/03/06
1545
Москва
Xaositect писал(а):
И дело тут скорее не в ООП, а в C++. Это ужасный язык.

Подпишусь. Особенно раздражает синтаксис шаблонов, масса правил для неявных преобразований типов таких, что, как сам Страуструп признается, иногда проще выполнить явное преобразование чем вспоминать правила, а также синтаксис указателей и ссылок. Одни только const char *, const *char. const * char * чего стоят.

 Профиль  
                  
 
 Re: программирование
Сообщение21.08.2009, 23:59 


27/07/09
21
PapaKarlo в сообщении #236899 писал(а):
Какие утверждения необоснованы?

Следующие:
PapaKarlo в сообщении #236729 писал(а):
Но Ваши высказывания по отдельным языкам программирования и парадигмам программирования в целом действительно спорны.

PapaKarlo в сообщении #236729 писал(а):
Абсолютные утверждения о том, что тот или иной язык программирования (парадигма программирования) лучше или хуже, просто неверны.

PapaKarlo в сообщении #236783 писал(а):
И я отнюдь не считаю, что "Classes and inheritance are syntactic sugar"

PapaKarlo в сообщении #236783 писал(а):
однако только когда концепция выходит за рамки "чистой" и начинает поддерживаться языковыми средствами, она становится действительно эффективной.

arseniiv в сообщении #236842 писал(а):
ФП во многих случаях не может иметь места

arseniiv в сообщении #236842 писал(а):
А вообще, ядро программы может быть без нареканий (только производительность, но она может быть улучшена оптимизациями) написано на функциональном ЯП, но интерпретатор/компилятор этого ЯП должны быть императивно-написанными.

arseniiv в сообщении #236842 писал(а):
У обоих есть преимущества. Но учиться программированию, думаю, лучше с ООП.

arseniiv в сообщении #236870 писал(а):
Ну т ак ведь самый первый парсер для функционального ЯП должен быть написан на нефункциональном.


-- Сб авг 22, 2009 00:25:28 --

2 Yuri Gendelman
"Я же, привел литературу, которая и подтверждает мои слова" = "В этих книгах Вы найдете подтверждение моим словам". Так что, приятного чтения.

 Профиль  
                  
 
 Re: программирование
Сообщение22.08.2009, 11:06 
Заслуженный участник


31/12/05
1480
AVM в сообщении #236688 писал(а):
Да? Вы ещё скажите, что в MIT неправильно преподают, в Кембридже.
Кстати, эпоха ушла. Вместо легендарного 6.001 в MIT теперь Питон.

http://web.mit.edu/6.00/www/ref.shtml

 Профиль  
                  
 
 Re: программирование
Сообщение22.08.2009, 12:58 


27/07/09
21
2 tolstopuz
http://groups.csail.mit.edu/mac/users/gjs/6.945/

 Профиль  
                  
 
 Re: программирование
Сообщение22.08.2009, 13:43 
Заслуженный участник


31/12/05
1480
AVM в сообщении #236989 писал(а):
Это H-Level Graduate. Я про совсем недавно закончившиеся времена, когда SICP был обязательным для всех первокурсников.

Кстати, несмотря на то, что в SICP совсем ничего нет про ООП, реально про него рассказывали.

http://ocw.mit.edu/OcwWeb/Electrical-En ... /index.htm (лекции 16-18)

 Профиль  
                  
 
 Re: программирование
Сообщение22.08.2009, 19:39 
Заслуженный участник


15/05/05
3445
USA
AVM в сообщении #236920 писал(а):
2 Yuri Gendelman
"Я же, привел литературу, которая и подтверждает мои слова" = "В этих книгах Вы найдете подтверждение моим словам". Так что, приятного чтения.
Как и следовало ожидать, сказать по существу Вам просто нечего.

 Профиль  
                  
 
 Re: программирование
Сообщение22.08.2009, 19:44 
Заслуженный участник


27/04/09
28128
Yuri Gendelman, а вам есть чего? Тоже ссылками кидаетесь :!:

 Профиль  
                  
 
 Re: программирование
Сообщение22.08.2009, 19:53 


27/07/09
21
2 Yuri Gendelman
Я не собираюсь ничего Вам пересказывать, сами читайте.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 81 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group