|
|
| Результаты опроса: используете ли вы ооп | |||
| да |
|
238 | 86.55% |
| нет |
|
37 | 13.45% |
| Голосовавшие: 275. Вы ещё не голосовали в этом опросе | |||
|
|
Рейтинг 4.76/461:
|
|
81 / 39 / 3
Регистрация: 29.01.2010
Сообщений: 386
|
|
Стоит ли использовать ООП?09.02.2010, 13:44. Показов 103160. Ответов 793
Метки нет (Все метки)
Здравствуйте.
Возник такой вопрос: стоит ли использовать ооп. Даже не так, когда использовать ооп? Иногда (даже чаще всего) легче написать простые функции, а не мутить с классами обектами и методами. Раздражает инкапсуляция - какой вообще ее смысл? Чтобы получить переменную класса по правилам ооп нужно создавать метод для ее чтения? когда такой подход оправдан - ведь затрачивается куча лишнего времени.
5
|
|
| 09.02.2010, 13:44 | |
|
Ответы с готовыми решениями:
793
Стоит ли использовать ООП -- часть вторая
|
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||||
| 13.08.2017, 14:18 | ||||||||
|
MFC - Все четко и логично, хотя концепция устарела даже на момент ее появления. VCL/FireMonkey - тоже все четко и логично хотя на паскакале. DirectX - тоже все четко и логично. теперя без ООП : OpenGL - полный бардак 4,5 версий, хотя функционал аналогичен Direct3D. Причем настолько бардак что 5-я версия кроме перехода на ООП еще и название сменила дабы не ассоциироваться с предыдущей бредядитной. STL - юселесс говнокод который превращает в говнокод любой использующий его кот. Именно по той причине что там использовалась ФП а не ООП парадигма. WinAPI - без ООП обертки этот лисапед разве что в хеллоувердах реально пользовать. При этом обернуть этот лисапет так чтобы его квадратневые колеса не стучали гораздо сложнее чем сделать толковый аналог с тем же функционалом с нуля. Добавлено через 17 минут Добавлено через 1 минуту Добавлено через 4 минуты Добавлено через 1 минуту
0
|
||||||||
|
|
|||||||
| 13.08.2017, 14:35 | |||||||
|
А ваши COM обьекты вносят только неоправданную сложность. Добавлено через 3 минуты Добавлено через 2 минуты
0
|
|||||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||
| 13.08.2017, 14:50 | ||||||
|
Добавлено через 1 минуту Добавлено через 3 минуты
0
|
||||||
|
|
||
| 13.08.2017, 15:04 | ||
|
0
|
||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||||
| 13.08.2017, 15:20 | |||||||
|
Добавлено через 1 минуту Добавлено через 15 секунд Добавлено через 4 минуты Добавлено через 1 минуту Добавлено через 4 минуты
0
|
|||||||
|
|
|||
| 13.08.2017, 15:24 | |||
|
Энергия - её инструмент для обработки вещества данных.
0
|
|||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||
| 13.08.2017, 16:51 | |||||
|
Добавлено через 3 минуты Добавлено через 3 минуты Следствие из ответа: 20% разрабов которые простоту осилили получают 80% з/п в индустрии, остальные 80% разрабов 20% з/п. А те кто з/п вообще не получают пишут всякие акелпады и т.п и заливают их на файлопомойки типа гитхаба. Отсюда и баги. Добавлено через 1 минуту А вообще ООП это такой фоку-покус который позволяет делать очень сложные дела очень простыми методами. Именно за счет того что каждый метод имеет свою четко ограниченную зону ответственности а сами методы четко сгруппированы и разложены по полочкам за кого именно они отвечают. Добавлено через 16 минут Добавлено через 57 минут
0
|
|||||
|
|
||||
| 13.08.2017, 17:09 | ||||
|
Добавлено через 1 минуту
0
|
||||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||
| 13.08.2017, 17:14 | |||||
|
Добавлено через 15 секунд Добавлено через 1 минуту Добавлено через 1 минуту
0
|
|||||
|
Модератор
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
|
||
| 13.08.2017, 21:04 | ||
|
0
|
||
|
Заблокирован
|
|
| 13.08.2017, 21:18 | |
|
0
|
|
|
Модератор
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
|
|
| 13.08.2017, 23:33 | |
|
0
|
|
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||
| 14.08.2017, 03:14 | ||
|
0
|
||
|
Модератор
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
|
|||
| 14.08.2017, 04:18 | |||
|
Фактически Вы утверждаете, что использование любого пользовательского типа данных - это ООП.
0
|
|||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||
| 15.08.2017, 07:31 | |||||
|
При этом техническая реализация обмена сообщениями может быть разная. Как и через очередь сообщений так и через вызов метода. Фактически вызов функции обрабатывающей структуру или обращение к полю структуры это передача сообщения. Ну а к примеру снаряд летящий по танку тоже можно рассматривать как сообщение вычесть определенное значение из XP. При этом с задержкой исполнения (когда долетит), необязательностью доставки (только если попадет) и случайной вариативностью значения (может срикошетить а может и критануть). При этом в процессе доставки сообщение обменивается сообщениями с ландшафтом и всеми объектами на нем (определение коллизий по траектории полета и т.п.) Добавлено через 13 часов 10 минут Добавлено через 11 часов 16 минут Добавлено через 2 часа 15 минут У банды четырех та же задача будет выражена кодом в несколько десятков раз меньшим по объему и по всей видимости с гораздо меньшим количеством архитектурных заморочек и как следствие практически без багов. А у тех кто действительно въехал в суть ООП, а тем более КОП, кода будет вообще децел, но при этом будет фреймверк-конструктор сущностей предметной области, решение конкретной задачи при помощи которого будет осуществляться по принципу создал объекты, настроил, добавил в модель и забыл. А этот этап сборки фактически уже не программирование а задание данных, который может и соответственно должен делаться не кодом а грызуном в редакторе объектов.
0
|
|||||
|
|
|||||||||||||||||||||||||||||
| 03.09.2017, 20:03 | |||||||||||||||||||||||||||||
|
Например определяем типы:
А если не использовать наследование:
Добавлено через 7 минут Если без наследования, то тип одного обьекта собран в ОДНОМ месте.
0
|
|||||||||||||||||||||||||||||
|
Модератор
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
|
|
| 04.09.2017, 12:09 | |
|
Бертран Мейер:
ОО-системы даже в большей степени, чем традиционные системы, за исключением, быть может, Lisp, имеют тенденцию создания большого числа объектов, иногда со сложными взаимозависимостями. Политика, возлагающая на разработчиков ответственность за управление памятью, вредит и эффективности процесса разработки, и безопасности полученной системы. Трудно утилизировать память, занятую более не нужными объектами, усложняются программы, все это требует времени разработчиков, увеличивается риск некорректной обработки областей памяти. В хорошей ОО-среде управление памятью будет автоматическим, под контролем сборщика мусора (garbage collector) - компонента системы периода выполнения (runtime system). (Бертран Мейер считается ведущим экспертом по ООП)
0
|
|
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
||||||
| 04.09.2017, 13:57 | ||||||
|
Добавлено через 15 минут Добавлено через 21 минуту
0
|
||||||
|
|
|||
| 04.09.2017, 14:24 | |||
|
И да, - я против ЛЮБОГО наследования, и ЛЮБОЙ композиции типов.
0
|
|||
|
2083 / 1576 / 169
Регистрация: 14.12.2014
Сообщений: 13,614
|
|||||||||
| 04.09.2017, 14:30 | |||||||||
|
А наследование выглядит вот так:
Добавлено через 2 минуты
0
|
|||||||||
| 04.09.2017, 14:30 | |
|
Стоит ли учить ООП в одно время с Яп Как использовать ООП в WinAvr Js class как правильно использовать ООП Когда следует использовать ООП в РНР? WITH AS стоит ли использовать Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|
Более приземисто - Эстафету хвоста в .cdl (деревья эстафеты в сад).
Hrethgir 24.07.2026
В будущем, после написания блока инверсии обхода дерева (эстафеты хвоста), я планирую вернуться к нашему прошлому разговору о том, обладают ли знания целеполаганием. Тогда я пришел к выводу, что. . .
|