OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 29 Март, 2024 00:58

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 39 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Суббота, 22 Август, 2009 15:52 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Alexey Veselovsky писал(а):
А если учесть что C++ в 1992 году по факту как такового ещё небыло... ;-)
Действительно в 92 году было кто в лес кто по дрова.
Linus Torvalds в январе 2004 года писал(а):
but some fundamental facts haven't changed:...
Обратите внимание, Алексей, что написал он это 12 лет спустя.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Суббота, 22 Август, 2009 16:07 

Зарегистрирован: Вторник, 25 Апрель, 2006 16:21
Сообщения: 2180
Откуда: Нижний Новгород
Вообще, у меня сильные сомнения что он что-то писал на С++ после 98 года.
Думаю он руководствуется принципом "от добра добра не ищут".

Вообще, непонятно кто его вынуждает пользоваться исключениями (они легко выключаются, собственно многие ими и не пользуются -- язык ничего не навязывает, в отличае от многих иных), new/delete (гм, кстати, а где там автоматика? аллокатор памяти можно написать как угодно ручками) и т.п.

А эмуляция руками ООП в том же gtk на С смотрится весьма феерично ;-) И работает gtk, кстати, существенно тормознее чем qt, писаном на глючном тормозном и вообще неправильном С++. Видимо все силы gtk team'а уходят на оную эмуляцию ООП и борьбу с языком. Тут уж не до оптимизации.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Суббота, 22 Август, 2009 16:08 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2449
Откуда: Россия, Томск
Info21 писал(а):
http://kerneltrap.org/node/view/2067
Ссылка нерабочая, вот правильная: http://kerneltrap.org/node/2067


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Понедельник, 24 Август, 2009 04:09 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
Илья Ермаков писал(а):
Используют классы просто как модули? Оно того стоит?


Стоит. Основная проблема, которую я вижу при работе с сишным (не плюсовым) кодом - это отсутствие инкапсуляции в принципе. Да, можно добиться определенной инкапсулиции с помощью функций/хэндлов, но этого никто не делает, потому что это требует слишком много манипуляций (намного больше, чем написать слово private в C++) для совершенно простых вещей. Вот и получается, что ходит некая сложная структура, с которой все что хотят то и делают, причем с помощью каких-нибудь жутких макросов. Определить в каком месте кто-то "портит память" невозможно в принципе, пока не проанализирушь весь код. После нескольких дней ковыряния в таком коде начинаешь понимать ратующих за запрещение манипуляций с указателями в принципе и повсеместный GC. Так вот - язык C++ в принципе позволяет решить эти проблемы при определенном уровне культуры использования со значительно меньшими затратами, чем в случае C без плюсов. При этом остается возможность легко спускаться на "самый низ".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 27 Август, 2009 12:36 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Вставлю свои 5 копеек.
Сложность С++ - это миф. Так же как мифом является то, что ББ непригоден для реальных разработок.
1. В стандарте С++ половина страниц составляет описание стандартной библиотеки. Причем, очень большую часть из этого составляет описание библиотеки ввода-вывода. Про контейнеры говорить не будем, хотя это тоже очень полезные составляющие.
2. Многие так называемые "сложности" С++ происходят из желания дать средства, позволяющие новые типы сделать ОЧЕНЬ ПОХОЖИМИ на встроенные. Даже не очень похожими, а просто такими же по синтаксису.
Например, любую переменную встроенного типа можно инициализировать. Вот вам и необходимость конструкторов. Для симметрии возникли деструкторы.
А если есть конструкторы, то требуется описание их поведения в разных ситуациях: при передаче в подпрограмму, при возврате, при наследовании и т.п.
В Оберонах инициализация переменных отсутствует, поэтому и конструкторов не требуется.
То же самое можно сказать и о перегрузке операций - просто для удобства и красоты. Комплексные числа как-то привычнее складывать с помощью плюса, а не вызывая функцию Add. А вообще-то перегрузка операций и не нужна.
3. По большому счету, принципиальных отличий от Оберона-КП только два: шаблоны и исключения. О чем тут и можно было наблюдать... Об остальном как-то не слишком спорили.
4. Чего мне реально в С++ не хватает - это явной конструкции модуля. Да, есть классы, пространства имен. Но ИМХО - это не эквивалент модуля, как он сделан в КП+ББ.
5. Чего мне не хватает в ББ+КП - так это стандартной библиотеки. Из мелочей хотелось бы отметить отсутствие инициализации. Ну удобно это. Еще хотелось бы, чтобы описание константы отличалось от описания переменной только заменой слова var на const - а это опять же отсутствие инициализации.
И должен констатировать, что после С/С++ оператор for в КП представляется не очень удачным, так как правая граница включается в проверку. Это диссонирует с массивами. .

Вот.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 17:08 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Еще о популярности С++.

На РСДН возник очередной холивар.

Павел Дворкин прописал свои приоритеты в программировании:
1. Эффективность
2. Свобода (выражения мыслей)
3. Надежность (меньше ошибок)
4. Скорость разработки - программист меньше времени тратит.

Это по поводу того, что ему постоянно навязывают инструмент типа Додиез-Ява, мотивируя это пунктами 3 и 4. А он более важным считает 1 и 2, поэтому выбирает С++.

Я написал своими словами, так как у меня сейчас доступ к РСДН сбоит.

Как считают оберонцы?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 17:40 

Зарегистрирован: Понедельник, 30 Июль, 2007 10:53
Сообщения: 1538
Откуда: Беларусь, Минск
Указанные инструменты - продукт "эффективности" и "свободы выражения мысли". И именно такими, возможно, получаются программы и у того автора. Только пользуется и плюётся уже не он.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 17:42 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
На первом месте должна быть дисциплина мышления. И как конкретика - дисциплина инженерного процесса (ответственность за каждое свойство создаваемых конструкций).
Как следствие будет надёжность (без неё вообще нельзя считать решение решением).

А остальное сумеем сбалансировать под задачу :)

По поводу эффективности - главное не громоздить к ней явных препятствий. Набивший оскомину пример с только динамич. ООП в Дж/Ш, что сразу отсекает их, по-хорошему, от целого пласта задач.

Свобода выражения - штука относительная. Важно, чтобы было, что выражать ) Бред какой-то лучше не выражать (это как в вопросе о доведённой до абсурда "равноценности мнений" и т.п.) :) И типовые грабли язык должен отсекать (но в связи с п. об эффективности - не полностью, а перенаправлять в более строгое русло, чтоб можно было использовать только с чётким пониманием; как SYSTEM).
Кроме того, чтобы свободно выражать мысли, нужно иметь хорошо отобранные выразительные средства. Иначе замахаешься проецировать мысль.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 18:02 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8500
Откуда: Троицк, Москва
Поставленная умственная техника программирования обеспечивает как надежность продукта, так и скорость разработки.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 20:07 

Зарегистрирован: Четверг, 17 Ноябрь, 2005 11:51
Сообщения: 2935
Откуда: г. Ярославль
Я думаю, что аргумент "свобода выражения мыслей" маскирует нежелание заниматься тщательным проектированием.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 22:51 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Мы с ним спорили по поводу эффективность-надежность. И многие рсднщики считают допустимым, что система падает, но самоперезапускается. Особенно, если это незаметно для пользователя. То есть, по поводу надежности народ считает, что надо специально оговаривать уровень надежности с заказчиком...
Как и по поводу эффективности. тоже...Я думаю, что сначала прога должна быть правильной, а уж потом быстрой... :) Однако в ответ приводят высказывание Бентли, что в программе вполне допустимы несколько незначительных ошибок... И лучше потратить время на повышение эффективности, чем на устранения этих незначительных ошибок...
Вот такие интересные мнения... :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Среда, 11 Ноябрь, 2009 23:08 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Несколько незначительных будет в большой почти наверняка. Если даже полностью грудью лечь за надёжность. Сколько будет значительных вдобавок, если на надёжность спустить рукава, мы все хорошо знаем.

Вопрос в том, предсказуемо ли поведение системы. Можем ли мы отвечать за неё, или "на авось".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 15:56 

Зарегистрирован: Вторник, 11 Август, 2009 11:44
Сообщения: 516
Откуда: Бердск
Валерий Лаптев писал(а):
что в программе вполне допустимы несколько незначительных ошибок...
Офигеть :shock:
Это имеет только одно название - "рационализаторы" начинают править миром. Те самые, про которых в среде, где я воспитывался профессионально, говорили:
"Встретил рационализатора - убей его"


Илья Ермаков писал(а):
Несколько незначительных будет в большой почти наверняка. Если даже полностью грудью лечь за надёжность. Сколько будет значительных вдобавок, если на надёжность спустить рукава, мы все хорошо знаем
Угу.
В принципе, есть простой профессиональный (я есть инженер) принцип: не планируй себе проблеммы, попробуй сначала справиться с теми, которые возникнут и без твоего планирования
Вековая мудрость, устанившаяся задолго до появления IT вообще, и программирования - в частности.

Однако убедить "опытных программистов" в том, что они вовсе не изобретают новые гносеологические принципы, а идут по граблям, которые всем давно известны - невозможно, пожалуй :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 17:47 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Info21 писал(а):
Поставленная умственная техника программирования обеспечивает как надежность продукта, так и скорость разработки.
Не все так просто. Почему вы не пишете на С++? :)
Дворкин выбирает С++ именно в силу указанных выше приоритетов. Вы - выбираете ББ в силу неких других приоритетов. Каких, кстати?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 18:01 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 18:55
Сообщения: 2272
Откуда: Россия, Нижний Новгород
Валерий Лаптев писал(а):
Дворкин выбирает С++ именно в силу указанных выше приоритетов.
В силу этих 4 приоритетов однозначно можно выбрать Блэкбокс:

1. Эффективность -- Да
2. Свобода (выражения мыслей) -- Да
3. Надежность (меньше ошибок) -- Да
4. Скорость разработки - программист меньше времени тратит -- Да

А то что некий Дворкин в силу этих же самых приоритетов почему-то выбрал не Блэкбокс, а С++, так это его проблемы, странный он какой-то.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 18:41 

Зарегистрирован: Четверг, 12 Июль, 2007 23:18
Сообщения: 1982
Откуда: Узбекистан, Чирчик
Настоящий приоритет у "Дворкиных" -- распространённость языка. С++ распространён на несколько порядков шире, чем обероны и хаскелли, вот его и выбирают больше людей...


Последний раз редактировалось Geniepro Пятница, 13 Ноябрь, 2009 07:17, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 21:58 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Geniepro писал(а):
Настоящий приоритет у "Дворкиных" -- распространённость языка. С++ распространён на несколько порядков шире, чем обероны и хаскелли, вот их и выбирают больше людей...

Думаю, что это не его ЛИЧНОЕ решение. Видимо когда-то было корпоративное решение, которое обосновали так.
В ББ на рсднском форуме никто не верит... :(
Хотя и знают...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 22:13 
Аватара пользователя

Зарегистрирован: Среда, 29 Март, 2006 12:09
Сообщения: 495
Валерий Лаптев писал(а):
В ББ на рсднском форуме никто не верит... :(
Хотя и знают...
Его еще знают тут, что мне показалось интересным.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: О популярности ООП в лице C++
СообщениеДобавлено: Четверг, 12 Ноябрь, 2009 22:27 

Зарегистрирован: Суббота, 07 Март, 2009 15:39
Сообщения: 3261
Откуда: Астрахань
Поправлюсь.
Здесь знают сам ББ
На РСДН знают О ББ


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

Часовой пояс: UTC + 3 часа


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

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


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

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB