Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.77/187: Рейтинг темы: голосов - 187, средняя оценка - 4.77
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
18.06.2015, 21:33
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Для меня такие нонешние времена начались лет 20 назад с выходом C++ Builder 1.0
Смешная шутка, спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.06.2015, 21:33
Ответы с готовыми решениями:

ООП или функции
Привет форумчанам! Такой вопрос нарисовался, Везде ли стоит применять ООП ? Например сейчас пишу маленький блог с простеньким...

ООП или Структурный подход?
Доброго времени суток! Могу ли я использовать процедурный подход программирования в PHP для разработки портала бронирование отелей с...

литература и/или статьи по ООП
Предложите литературу или скорее статьи по ООП, но с уклоном в элементарное понимание что это и для чего нужно а не обьяснение 3-х китов...

926
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
18.06.2015, 21:37
Цитата Сообщение от korvin_ Посмотреть сообщение
Смешная шутка, спасибо.
А с чего вы взяли что это шутка?
0
0 / 0 / 0
Регистрация: 15.06.2015
Сообщений: 18
19.06.2015, 23:48
ООП оказалось очередной модной религией и полностью провалилось.

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

Результат работы метода класса зависит от состояния объекта. Вызов метода не приводит к одинаковому результату на одинаковых входных данных.

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

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

С этой точки зрения ООП эквивалентно использованию исключительно глобальных переменных вместо параметров функции в процедурной программе.

Поэтому все нормальные программисты вернулись к процедурному программированию.
0
Модератор
Эксперт JS
 Аватар для Eva Rosalene
5241 / 2115 / 416
Регистрация: 06.01.2013
Сообщений: 4,846
20.06.2015, 01:07
Слишком жирно.
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 01:41
Цитата Сообщение от scrumban Посмотреть сообщение
С этой точки зрения ООП эквивалентно использованию исключительно глобальных переменных вместо параметров функции в процедурной программе
ООП эквивалентен передаче в функцию структуры в виде параметров.

Добавлено через 1 минуту
Цитата Сообщение от scrumban Посмотреть сообщение
Результат работы метода класса зависит от состояния объекта. Вызов метода не приводит к одинаковому результату на одинаковых входных данных
И очень правильно делают.

Добавлено через 43 секунды
Цитата Сообщение от scrumban Посмотреть сообщение
Поэтому все нормальные программисты вернулись к процедурному программированию.
Чем дальше тем больше ООП даже в той же WinAPI

Добавлено через 1 минуту
Цитата Сообщение от scrumban Посмотреть сообщение
Результат работы метода класса зависит от состояния объекта. Вызов метода не приводит к одинаковому результату на одинаковых входных данных
Приводит. Просто не надо забывать что состояние объекта - это тоже входные данные. Если указатель this передается неявно это не значит что его нет.

Добавлено через 1 минуту
Цитата Сообщение от scrumban Посмотреть сообщение
Перед каждым действием с объектом класса по хорошему надо проверить состояние всех членов класса, что никто не делает, а иногда и невозможно сделать
Или не нужно. Объекты на то и придуманы чтобы результат возвращаемый методом зависел от состояния (которое тоже является входными данными метода).

Добавлено через 1 минуту
Цитата Сообщение от scrumban Посмотреть сообщение
Поэтому все нормальные программисты вернулись к процедурному программированию.
Нормальные - это те кто не в состоянии мыслить иерархиями и классификацией объектов? Эт получается абсолютно оторванные от реальной действительности.
0
 Аватар для Voivoid
710 / 284 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
20.06.2015, 10:12
Тут не исправить уже ничего, Господь, жги!
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 12:41
Цитата Сообщение от Voivoid Посмотреть сообщение
Тут не исправить уже ничего, Господь, жги!
Ну да. Если ФП-ники не в состоянии осмыслить что функция может иметь вектор входных значений и вектор выходных - с этим ничего не поделаешь.

Добавлено через 9 минут
Цитата Сообщение от scrumban Посмотреть сообщение
ООП оказалось очередной модной религией и полностью провалилось.
По сему вытекает что очень модной религией оказалось ФП. Чем то ФП-ники напоминают свидетелей Иеговы. Те же заученные фразы (ну тут из серии почему ООП-ЗЛО), а когда логика начинает этим заученным фразам противоречить - стеклянные глаза вместо попыток мышления.

Добавлено через 55 секунд
Цитата Сообщение от Voivoid Посмотреть сообщение
Господь, жги!
Типа инквизицией собрались заделаться? Не выйдет.
0
 Аватар для Voivoid
710 / 284 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
20.06.2015, 13:02
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
иметь вектор входных значений и вектор выходных
Научитесь сначала изъясняться общеупотребительными терминами ( область задания функции и область значений функции ), а не той кашицей, которая у тебя в голове.
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 13:05
Если не видите, что this - вектор входных и выходных параметров метода.
0
0 / 0 / 0
Регистрация: 15.06.2015
Сообщений: 18
20.06.2015, 13:27
Программист, вызывая метод, должен знать входные данные метода.
Пусть часть входных данных задаётся неявно как члены класса.
Но члены класса скрыты от программиста под private.
Поэтому программист НЕ ЗНАЕТ с какими данными будет работать метод.

Добавлено через 5 минут
Fulcrum_013,
Нормальные - это те кто не в состоянии мыслить иерархиями и классификацией объектов? Эт получается абсолютно оторванные от реальной действительности
Посмотри любой промышленный код, особенно для микроконтроллеров.
Это в 99% случаев будет чистый С с ассемблерными вставками и процедурное программирование. Никаких С++ и ООП там не допустимо.

Добавлено через 40 секунд
Весь Linux написан на чистом С без ООП в конце концов.
0
1195 / 588 / 88
Регистрация: 20.09.2012
Сообщений: 1,881
20.06.2015, 13:37
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Вопрос как раз к том на чем виртуальная машина написана.
что исходники по ссылки не осиливаются? на Си она написана. она у всех на Си.
А есть еще жесткое... FORTRAN и С++ с этим справлялись даже на машинах с тактовой частотой 800 кгц.
"FORTRAN и С++" - жесткое реальное время. ща мы небось дойдем что FORTRAN прерывания там обрабатывал. сказочники они такие сказочники.
И там не то что Garbage Collection, там при этом вообще распределения памяти нет
и FORTRAN, и С++ там тоже отсуствует. иначе это попсовый цирк, а не жесткий рилтайм.

но вернемся к мифу о том что несуществует без ооп. что ж в результате? есть в фп хотя бы след от
ооп? нету и нигде оно там не используется (желающие могут еще и исходники хаскеля посмотреть и пр на выбор).
итого утверждение
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Опять же тот же Erlang выполняется на виртуальной машине, соответсвенно без C++ и системы состояний с изменяемым значением переменных, ручным управлением памяти и т.д. и т.п. в том числе ООП существовать не может.
является ложью и к сожалению не единствнной
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 14:36
Цитата Сообщение от pycture Посмотреть сообщение
ща мы небось дойдем что FORTRAN прерывания там обрабатывал
Именно.
Цитата Сообщение от pycture Посмотреть сообщение
есть в фп хотя бы след от ооп?
А есть ли хотя бы одна операционка или вообще что либо серьезное написанное именно средствами ФП
Цитата Сообщение от pycture Посмотреть сообщение
и FORTRAN, и С++ там тоже отсуствует. иначе это попсовый цирк, а не жесткий рилтайм.
И фортран и C++ присутствуют. и прекрасно справляются.
?
0
 Аватар для castorsky
1978 / 1082 / 87
Регистрация: 29.11.2013
Сообщений: 3,353
20.06.2015, 14:54
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
ФП-ники не в состоянии осмыслить что функция может иметь вектор входных значений и вектор выходных
У меня просто нет слов. Одни маты.
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 15:00
Цитата Сообщение от pycture Посмотреть сообщение
"FORTRAN и С++" - жесткое реальное время. ща мы небось дойдем что FORTRAN прерывания там обрабатывал. сказочники они такие сказочники.
Кстати с жестким реальным временем и винда прекрасно справляется при замене штатного модуля обработки прерываний на модуль использующий очередь с приоритетами (кстати именно таково требование к системам реального времени - обработка прерываний по преоритетам). Так вот как вы будете реализовывать очередь с преоритетами без глобальных данных?

Добавлено через 1 минуту
Цитата Сообщение от scrumban Посмотреть сообщение
Весь Linux написан на чистом С без ООП в конце концов.
Сомнительно что там нет ни одной callback функции, а тем более их таблиц. Если VMT собирается в ручную а не компилятором это еще не значит что не используется ООП подход.
0
0 / 0 / 0
Регистрация: 15.06.2015
Сообщений: 18
20.06.2015, 15:08
Fulcrum_013,
Сомнительно что там нет ни одной callback функции, а тем более их таблиц.
Это никакого отношения к ООП не имеет.
Функция qsort с callback сравнения в чистом С со времён царя Гороха. Это пример ООП на С по вашему?
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 15:18
Цитата Сообщение от scrumban Посмотреть сообщение
Это никакого отношения к ООП не имеет.
Если имеет место группировка функций по применимости к наборам данных - то это ООП.
0
0 / 0 / 0
Регистрация: 15.06.2015
Сообщений: 18
20.06.2015, 15:24
ООП это инкапсуляция, наследование и полиморфизм.
Каждый из этих терминов приводит к своим характерным ошибкам.

Поэтому ООП нельзя применять в системном и промышленном программировании, где цена ошибки высока.

Автоматизировать бизнес-процессы можно как угодно, т.к. ничего страшного из-за ошибки не случится, и все действия можно отменить. Поэтому над этим трудятся в основном быдлокодеры и говнокодеры, используя парадигмы ООП.
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 15:32
Цитата Сообщение от scrumban Посмотреть сообщение
Каждый из этих терминов приводит к своим характерным ошибкам.
К ошибкам приводит недопонимание задачи. И недопонимание того как комп ее выполняет. А поскольку цена ошибки действительно высока ФП-ников к автоматизации действительно допускать нельзя.
А для тех кто знает и понимает задачу - каждый из этих терминов - надежнейший удобнейший инструмент.

Добавлено через 5 минут
Цитата Сообщение от scrumban Посмотреть сообщение
Весь Linux написан на чистом С без ООП в конце концов.
Вот имеенно по этому на "Тамагавках" не линукс а спец версия объектно-ориентированной Windows NT-4
0
Модератор
 Аватар для Curry
5171 / 3537 / 536
Регистрация: 01.06.2013
Сообщений: 7,696
Записей в блоге: 9
20.06.2015, 16:04
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Кстати с жестким реальным временем и винда прекрасно справляется при замене штатного модуля обработки прерываний на модуль использующий очередь с приоритетами (кстати именно таково требование к системам реального времени - обработка прерываний по преоритетам). Так вот как вы будете реализовывать очередь с преоритетами без глобальных данных?

Не по теме:

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


Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
ФП-ников к автоматизации действительно допускать нельзя.
Мы давно уже сами допустились.
Цитата Сообщение от Fulcrum_013 Посмотреть сообщение
Если имеет место группировка функций по применимости к наборам данных - то это ООП.
Вы допускаете поразительные высказывания, про то, что такое ООП.
0
 Аватар для Fulcrum_013
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
20.06.2015, 16:22
Цитата Сообщение от KolodeznyDiver Посмотреть сообщение
Вы допускаете поразительные высказывания, про то, что такое ООП.
Тем не менее это как раз и соответствует сути ООП.
Цитата Сообщение от KolodeznyDiver Посмотреть сообщение
Не по теме:
Симменс - такой симменс. Вообще то, АСУ ТП давно движется в сторону умных устройств. Т.е. какой ни будь пид регулятор на микроконтроллере (там си), данные с него и настройки к нему передаются уже, может и на винду. Винде, в таком случае не нужно быть осрв, временные интервалы подстройки умных устройств велики. Всё что надо делать быстро, делается в мк.
Все зависит от обширности процесса. Чем больше и сложнее процесс тем больше вычислительных ресурсов он задействует и тем в больших масштабах требуется синхронное управление приводами и оценка ситуации в общем а не на конкретном локальном устройстве, соответсвенно и ОС и все остальное перекочевывает с УВМ в контроллеры (минимизация компьютеров никоим образом не изменяет сути и алгоритмов их работы), которые по сути являются УВМ без средств интерфейса с пользователем.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.06.2015, 16:22

Гавнокоддинг или учить ООП?
Здравствуйте, дело такое, я пишу все свои скрипты в гавнокоддинге. Дело в том, что у меня все работает, что не работает спрашиваю на...

прога или игра ооп
Здравствуйте)Помогите пожалуйста)Нужно в ближайшее время сдать курсовую работу.Требуется сдать программу какую-нибудь либо игру(желательно...

Mysqli ООП или процедурный подход
Вот интересно, услышать мнение специалистов, что лучшие использовать при работе с mysqli ООП или процедурный подход, что больше используют...

Определить, программа с ооп или нет
Здравствуйте)Помогите пожалуйста разобраться с программой)Мне нужно сдать курсовую по объектно-ориентированному языку на С#.Мне здесь...

Изучаю ООП можно или нет так?
Это index: <?php include('classes/database.class.php'); $object = new DB; $nick = "Alex"; $password = "1"; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
580
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки Правым кликом по серверу -> отладочная информация -> edit Заменить "net": "raw", на "net": "tcp", Нажать кнопку reload.
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru