Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 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 / 283 / 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 / 283 / 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 / 3535 / 536
Регистрация: 01.06.2013
Сообщений: 7,686
Записей в блоге: 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
Ответ Создать тему
Новые блоги и статьи
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru