Сохранен 83
https://2ch.su/b/res/330284803.html
К сожалению, значительная часть сохранённых до 2024 г. изображений и видео была потеряна (подробности случившегося). Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Объектно Ориентированное Грограммирование Что можешь сказать про него, анон? Планирую всерьёз занят

 Аноним 01/03/26 Вск 08:40:26 #1 №330284803 
ogog1738957237211755572.jpg
Объектно Ориентированное Грограммирование

Что можешь сказать про него, анон?
Планирую всерьёз заняться изучением с 15.05.2026.
Аноним 01/03/26 Вск 08:48:39 #2 №330284926 
>>330284803 (OP)
Никем не понятая концепция.
Аноним 01/03/26 Вск 08:54:05 #3 №330285014 
>>330284803 (OP)
Пиздато в теории, на практике хуярь лишь бы работало, потом если ч0 костыль подставим
Аноним 01/03/26 Вск 09:01:23 #4 №330285138 
Начни лучше с понедельника.
Аноним 01/03/26 Вск 09:09:13 #5 №330285269 
>>330284803 (OP)
>Объектно Ориентированное Грограммирование
>
>Что можешь сказать про него, анон?
Наследование противоречит инкапсуляции, ООП мертво by design.
Аноним 01/03/26 Вск 09:14:27 #6 №330285368 
>>330285269
Например? Ты же сам выбираешь, что наследуется, а что нет.
Аноним 01/03/26 Вск 09:17:30 #7 №330285437 
>>330284803 (OP)
Хочу сказать что это для рабов.
sage[mailto:sage] Аноним 01/03/26 Вск 09:22:22 #8 №330285537 
>>330285269
>инкапсуляции
Выдумали еще в Си-говне
Доделали еще в Делфи с процедурами

Само же ООП-говно протиречит в том что данные вместе с кодом. В реальности например берем любую форму учета, мы бланк формируем заполняем в него операцию, после преобразуем данные с него в базу(журнал-ордера, главную книгу) и работает с данными. А не запрашиваем каждый раз первичный документ.
Ну и сама калопсуляция по сути хуйня в реальности тоже не существует в итоге чтобы бочка наследуемая от бокс не двигалась ей добавляют 60тонн весса, вместо создать текстурку с колизей и мэшами.
>>330285368
>наследуется
Ток данные надо наследовать а не стрктуру, а не после тягать по 5 гигов кода для передвижения кошки с 40 ногами(сороконожки)
Аноним 01/03/26 Вск 09:25:14 #9 №330285598 
>>330285368
>Ты же сам выбираешь, что наследуется, а что нет.
Ебать, спасибо, нахуй, что разрешил.
А если я решу что ничего не должно наследоваться - это останется ООП?
И если никакого принудительного наследования нет - зачем возводить его в лозунг?
sage[mailto:sage] Аноним 01/03/26 Вск 09:26:03 #10 №330285627 
>>330285269
>ООП мертво by design.
Мертво благодаря математике скорее.
Если ты можешь предсказать результат 2+2 то сразу пишешь 4, а не можешь то сосешь хуй с костылями.
Типо посылаешь в черную коробку(ПВЗ) запрос а нету ли там твоих трусов, а тебе не извесно обработали ли запрос, нашли ли трусы твои или отдали твоему соседу случайно. Но тут уже затык в том, а откуда мы знаем что ящик(ПВЗ) может чет сделать?
Аноним 01/03/26 Вск 09:26:21 #11 №330285630 
>>330285537
Сороконожки ИРЛ не наследуются от кошек. Зачем ты их наследуешь в коде?
sage[mailto:sage] Аноним 01/03/26 Вск 09:27:08 #12 №330285645 
>>330285630
Наследует от ДНК(перфоленты)
Аноним 01/03/26 Вск 09:28:43 #13 №330285676 
>>330285598
Как ты сделаешь принудительным наследование, если только ты знаешь семантику своих классов? И это не лозунг, а определение. Если ты отказешься от наследования, ты будешь писать не в ООП-парадигме.
Аноним 01/03/26 Вск 09:29:23 #14 №330285691 
>>330285645
Какая еще перфолента? Шизик что ли?
Аноним 01/03/26 Вск 09:30:40 #15 №330285722 
>>330284803 (OP)
Сложно, интересно. Люблю бессмысленные абстракции над абстракциями.

Все парадигмы хороши в меру, не стоит ударяться в крайности.
sage[mailto:sage] Аноним 01/03/26 Вск 09:31:14 #16 №330285734 
>>330285630
И вообще ООП-дрысня с времен визуального похрюмирования где условная телефонистка провода между слотами втыкала чтобы соединить и чет посчитать. Мол, ого это надо учиться в 10 лет чтобы кодить на Си-говне, можно же всю задачу разбить на 200 подзадач и дать индусам кодить свое говно с petyh->>kukareku(f abc)
Аноним 01/03/26 Вск 09:34:10 #17 №330285798 
>>330285734
НАСТОЯЩИЙ ПРОГРАММИСТ конечно же может двадцать мегабайт идеально оптимизированного лапшекода в голове держать. Ему никакие абстракции не нужны, они только производительность снижают.
sage[mailto:sage] Аноним 01/03/26 Вск 09:35:23 #18 №330285824 
>>330285676
SVO
Я еду на машине
OVS
Машина везет меня

Так-что ты серешь, потому-что в реальности нет никаких объектов если материю не считать за мэш-хуйню. И существует еще пространство.

По этому ты можешь кодить что каждый объект с лайфтайм 0 идет в мусорку. А можешь чтобы каждый объект сам себя в мусорку кидал в случаю чего.
Но тут уже затык в проце, он императивен и ваще многопоток не особо любит, и лезть каждый объект чтобы посмотреть чо ему самому делать поеботой попахивает.
Пишут функции, а потом их обобщают выносят за скобки, ты же предлагаешь делать все наоборот, предсказать что будет делать программа лет так через 4
sage[mailto:sage] Аноним 01/03/26 Вск 09:36:22 #19 №330285844 
>>330285798
>абстракции
Аьстракции до предпроцессора даже не доживают. Ты путаешь все.
Аноним 01/03/26 Вск 09:47:25 #20 №330286077 
>>330285824
>SVO
>Я еду на машине
>OVS
>Машина везет меня
При чем тут наследование? С композицией не перепутал?
>Так-что ты серешь, потому-что в реальности нет никаких объектов если материю не считать за мэш-хуйню. И существует еще пространство.
В реальности вообще не существует ничего, что можно назвать словами. Но у людей мозг устроен так, что он автоматически выделяет абстракции. Когда ты смотришь на птиц, ты сразу выделяешь абстракцию "птица", затем можешь выделить разные виды птиц, а среди них каждую конкретную птицу.
>По этому ты можешь кодить что каждый объект с лайфтайм 0 идет в мусорку. А можешь чтобы каждый объект сам себя в мусорку кидал в случаю чего.
По ООП второй подход однозначно правильный.
>Но тут уже затык в проце, он императивен и ваще многопоток не особо любит, и лезть каждый объект чтобы посмотреть чо ему самому делать поеботой попахивает.
Для подобных оптимизаций в ООП есть свои подходы, которые не рушат ООП. Это все описано в книжках по ООП.
sage[mailto:sage] Аноним 01/03/26 Вск 09:49:22 #21 №330286121 
>>330286077
>При чем тут наследование? С композицией не перепутал?
Можешь наследовать от волосатого мотороллера, а можешь изучать химерологию и сращивать человека с машиной чтобы у тебя не отвалился говнокод когда ты хайдишь человека и двигаешь машинку.
>Для подобных оптимизаций в ООП есть свои подходы, которые не рушат ООП. Это все описано в книжках по ООП.
Нахуй надо
Аноним 01/03/26 Вск 09:49:58 #22 №330286139 
>>330285844
Какая мне разница? Я пишу на высокоуровневом языке по его правилам. Что там конпиляторы делают меня ебать не должно.
sage[mailto:sage] Аноним 01/03/26 Вск 09:52:27 #23 №330286183 
>>330285269
почитай про type erasure
Аноним 01/03/26 Вск 09:52:48 #24 №330286196 
>>330286121
>Можешь наследовать от волосатого мотороллера, а можешь изучать химерологию и сращивать человека с машиной чтобы у тебя не отвалился говнокод когда ты хайдишь человека и двигаешь машинку.
Это зависит от специфики твоей доменной области. Никто кроме тебя семантики твоих классов не знает, и стурктуру наследования выбираешь только ты из своих целей.
>Нахуй надо
Для расширяемости и снижению когнитивной нагрузки.
Аноним 01/03/26 Вск 09:53:10 #25 №330286203 
>>330284803 (OP)
Лютая годнота, 10/10.
Аноним 01/03/26 Вск 09:53:20 #26 №330286207 
>>330286183
Это ж чисто жавовые проблемы для обратной совместимости.
Аноним 01/03/26 Вск 09:54:48 #27 №330286238 
>>330286207
А, нихуя оказывается.
Аноним 01/03/26 Вск 09:54:53 #28 №330286239 
image
>>330284803 (OP)
Абстракции из разряда игры в войнушку в детстве:
- Я тебя застрелил!
- Нет я тебя застрелил, у меня патроны бронебойные тебя поразили ещё за стеной!
Аноним 01/03/26 Вск 09:55:09 #29 №330286243 
ООП это программирование для тех кто гуманитарий головного мозга и такие вещи как функции ставят его в тупик.
И не надо рассказывать про то что А ВОТ В РЕАЛЬНОЙ ЖИЗНИ ВООБЩЕТА ЕСТЬ ОБЪЕКТЫ И КЛАССЫ ОБЪЕКТОВ ЭТО ЛОГИЧНО.
Начнем с того что нихуя это не так и элементарные частицы такие как протоны, электроны это не объекты в привычном понимании, а волны которые описываются функцией. То есть ООП принципиально противоречит физике реальных процессов, особенно на квантовом уровне.
Единственная задача ООП это ускорить верстку всякого говна и дать менеджеру понять че там под капотом без ебли мозга матаном, ведь менеджер матан не знает.
Аноним 01/03/26 Вск 09:56:10 #30 №330286262 
>>330286243
Ты когда колбасу в магазине покупаешь, тоже пользуешься описательной системой ядерной физики?
sage[mailto:sage] Аноним 01/03/26 Вск 09:58:03 #31 №330286305 
>>330286196
>Это зависит от специфики твоей доменной области. Никто кроме тебя семантики твоих классов не знает, и стурктуру наследования выбираешь только ты из своих целей.
Тобишь лишь бы название ООПэ хуйни было?
>>330286262
Да, твоя душа это потоки энергий. И ты вызываешь абстракции и статические функции(без выделения дополнительной памяти) чтобы двигать тело и достать с кошелька 401 рубль за колбасу.
sage[mailto:sage] Аноним 01/03/26 Вск 09:59:12 #32 №330286335 
худшийязык.png
>>330286207
он позволяет избегать явно наследования для реализации интерфейса, и возможность при этом работать с разнвми объектами по значению, а не хранить указатели в конейнерах.

>для обратной совместимости
скорее для полной расширяемости. одна из идей в том, чтобы новая реализация интерфейса для нового типа достигалась путем одного только добавления соотвествующей функции в глобальном пространстве (имеется ввиду вне всяких классов). очень классный паттерн, очень упрощает разработку, я прям реально кайфую с него.

есть кстати очень кассный доклад кажется парента про это. он там очень подробно разъясняет за него.
sage[mailto:sage] Аноним 01/03/26 Вск 10:03:16 #33 №330286436 
>>330286335
>>330286207
напиздел, его иглбергер читал)
https://www.youtube.com/watch?v=qn6OqefuH08&t=1209s&pp=ygUTdHlwZSBlcmFzdXJlIHBhcmV0bg%3D%3D

вот еще статья на хабре почти хорошая (только там плохо объяснено зачем оно надо и почему просто внешняя перегрузка не то, что нам надо)
https://habr.com/ru/articles/706450/
Аноним 01/03/26 Вск 10:03:47 #34 №330286453 
>>330286262
Ну тогда сразу нужно говорить об принципиальной ограниченности ООП что есть некие границы применимости. Я же вижу прогеров которые говорят что ООП вообще это база, лучше этого ничего не придумали, а потом эта хуйня разбивается о простенькую квантовую механику столетней давности и о принцип неопределенности и корпускулярно волновой дуализм про который вообще в школе рассказывают.
sage[mailto:sage] Аноним 01/03/26 Вск 10:04:51 #35 №330286476 
многострашныхслов.png
>>330286453
Аноним 01/03/26 Вск 10:08:10 #36 №330286553 
>>330286335
А мне строгость языка важнее свободы, иначе бы на js писал.
Аноним 01/03/26 Вск 10:10:46 #37 №330286605 
>>330286183
Почитаю, но по-моему это как замечено чисто жаба/си детали реализации, не имеющие к обобщённому ООП отношения.
Аноним 01/03/26 Вск 10:11:22 #38 №330286622 
>>330285627
>х трусов, а тебе не извесно обработали ли запрос, нашли ли трусы твои или отдали твоему сосед
Мощно навернул
Аноним 01/03/26 Вск 10:12:48 #39 №330286651 
>>330285537
>Само же ООП-говно протиречит в том что данные вместе с кодом. В реальности
А вот в реальности-то, конечно, берём любые данные и пихаем в любой код - и он их принимает, ну надо же.
Аноним 01/03/26 Вск 10:13:44 #40 №330286680 
>>330286453
Волны в общем тоже неплохо на ООП ложатся. На него плохо ложится то, у чего нет аналогов в реальном мире. Поэтому в энтерпрайзе дохуллион притянутых за уши классов с окончаниями на -er.
sage[mailto:sage] Аноним 01/03/26 Вск 10:16:57 #41 №330286762 
>>330286651
>принимает, ну надо же.
Точно?Ну ок, умножил ты собаку на яблоки. Дальше что?
sage[mailto:sage] Аноним 01/03/26 Вск 10:17:37 #42 №330286784 
>>330286605
лично я считаю что это самый главный результат ооп) все таки как деталь свой реализации, он использует наследования, виртуальные функции и прочую оопешную радость. в плюсах еще шаблоны подключаются и вообще песня. но здесь они используются в нужном месте и очень обдумано.
короче мощь этой штуки надо прочувствовать)
Аноним 01/03/26 Вск 10:22:34 #43 №330286890 
>>330286762
Вот ты и скажи, дальше что. Может всё-таки идея хранить данные вместе с кодом не лишена смысла?
Аноним 01/03/26 Вск 10:23:24 #44 №330286909 
господи вот бы найти работу на с++
Аноним 01/03/26 Вск 10:23:40 #45 №330286918 
>>330286784
Имеешь ввиду что это можно использовать вместо наследования? Ну да, идея классная, хотя я просто реализую интерфейс и в рот его ебать.
sage[mailto:sage] Аноним 01/03/26 Вск 10:31:35 #46 №330287127 
>>330284803 (OP)
ооп рак индустрии и нинужин
хуета призванная делать хуяк-хуяк и в продакшин заполоняя рынок дерьмом
sage[mailto:sage] Аноним 01/03/26 Вск 10:33:17 #47 №330287162 
>>330286918
знаешь эту историю про австралийский авиа-симулятор?)
sage[mailto:sage] Аноним 01/03/26 Вск 10:34:05 #48 №330287184 
>>330286918
>Имеешь ввиду что это можно использовать вместо наследования?
нужно)
но для этого, конечно, нужна высокая квалификация
Аноним 01/03/26 Вск 10:34:39 #49 №330287199 
>>330287162
Нет
Аноним 01/03/26 Вск 10:36:13 #50 №330287239 
>>330287127
Золотце, ты?
sage[mailto:sage] Аноним 01/03/26 Вск 10:43:49 #51 №330287436 
>>330287199
ходила такая байка в нулевые в плюсовых кругах)

австралийские военные поручили программистам создать высокоточный авиа-симулятор для обучения пилотов. чтобы там с пво, которое по ним стрелять может. короче прям вот полный симулятор военного пилота.
программисты были большими поклонниками ооп, сделали качественную, хорошо продуманную иерархию наследования. они уложились в сроки с небольшим запасом и от нечего делать в них сыграло национальное чувство: "как так, мы же австралийцы, а ни одного кенгуру на всей карте местности нет!". до сдачи оставалось не так много времени, поэтому на скорую руку class Kangaroo был публично отнаследован от какого-то супер базового класса. затестить не успели, но доп класс ничего не должен был сломать, так и отдали военным.

какого же было удивление первых пилотов, когда после взлета кенгуру рассредоточились по местности и начали херачить по ним из стингеров...
Аноним 01/03/26 Вск 10:48:03 #52 №330287533 
>>330287436
как стать гордым плюсовиком?
мимо жабапидор
sage[mailto:sage] Аноним 01/03/26 Вск 10:49:48 #53 №330287579 
худшийязык.png
>>330287533
sage[mailto:sage] Аноним 01/03/26 Вск 10:51:18 #54 №330287620 
>>330287579
ну кстати тут сыглы, лаконичный си в тысячу раз лучше
Аноним 01/03/26 Вск 10:55:46 #55 №330287736 
>>330287579
Кукарекание неосилятора
Аноним 01/03/26 Вск 10:58:38 #56 №330287802 
>>330287436
Звучит как байка для малосведущих в разработке =(
sage[mailto:sage] Аноним 01/03/26 Вск 10:58:45 #57 №330287803 
горшок.png
>>330287736
да тихо тихо, я сам за плюсы всей душой. просто картинка смешная.

я кстати смотрел этот ролик, там довольно смешная аргументация в духе "очень длиные названия static_cast, reinterpret_cast, ..." и "тупые неймспейсы, очень длинно получается a::b::c::fuck::you::.."
Аноним 01/03/26 Вск 11:01:19 #58 №330287877 
>>330285798
>НАСТОЯЩИЙ ПРОГРАММИСТ конечно же может двадцать мегабайт идеально оптимизированного лапшекода в голове держать. Ему никакие абстракции не нужны, они только производительность снижают.

Погромист не сможет.
А любая нейросетка легко.
И ей не нужны эти объекты и абстракции.
Нейросетка хоть с 5000 "go to" код напишет и не запутается что где и куда.
И ей не нужен твой сраный рефакторинг - если что то изменится - проще еще раз сгенерировать новый код - это же занимает несколько секунд/минут.
Аноним 01/03/26 Вск 11:01:35 #59 №330287886 
>>330286680
Ты не можешь описать электрон объектом в ООП. Потому что электрон не детерминирован в пространстве и времени, у него нет конкретных координат.
Более того электрон может одновременно находиться в разных состояниях. Это буквально противоречит ООП.
sage[mailto:sage] Аноним 01/03/26 Вск 11:03:18 #60 №330287933 
а зачем держать в голове лапшекод? kiss
Аноним 01/03/26 Вск 11:04:32 #61 №330287968 
>>330287886
Но может описать модель электрона
Аноним 01/03/26 Вск 11:05:07 #62 №330287988 
>>330287877
теперь код не представляет ценности - теперь ценность это хорошее и полное техзадание

а у большинства вместо техзадания - говно на салфетке, текстовый файлик и E-mail от заказчика со словами "быстро и красиво запилите мне"
Аноним 01/03/26 Вск 11:05:48 #63 №330288009 
>>330284803 (OP)
Норм, если про SOLID не забывать. C# последней версии довольно удобен. Можно в интерфейсах прямо дефолтную имплементацию прописывать, навешиваешь интерфейсы на класс и допиливаешь по мелочи.
Аноним 01/03/26 Вск 11:08:49 #64 №330288105 
>>330287968
Ну давай попробуй. Какие свойства есть у электрона, перечисли?
Аноним 01/03/26 Вск 11:10:37 #65 №330288148 
1000052946.jpg
>>330284803 (OP)
Хорошая вещь, годная. Занимайся.
Аноним 01/03/26 Вск 11:11:58 #66 №330288187 
>>330288105
Положение и заряд, ну или масса.
Аноним 01/03/26 Вск 11:13:46 #67 №330288254 
>>330288187
Мы вам перезвоним
Спин забыл
Аноним 01/03/26 Вск 11:14:55 #68 №330288280 
>>330288187
А импульс есть?
Ну когда он летит куда-то?
Аноним 01/03/26 Вск 11:17:35 #69 №330288356 
>>330284803 (OP)
c# заебись, там правда давно ООП никто не пользуется
Аноним 01/03/26 Вск 12:00:09 #70 №330289601 
>>330286183
Почитал твоей мамке за щеку, проверяй.
Аноним 01/03/26 Вск 12:10:41 #71 №330289957 
>>330288356
А чем там пользуются? Пиздой твоей мамаши-шлюхи?
Аноним 01/03/26 Вск 12:19:20 #72 №330290219 
>>330285537
>Само же ООП-говно протиречит в том что данные вместе с кодом. В реальности например берем любую форму учета, мы бланк формируем заполняем в него операцию, после преобразуем данные с него в базу(журнал-ордера, главную книгу) и работает с данными. А не запрашиваем каждый раз первичный документ.

Данные у тебя лежат в ДТО классах, а бизнес логика в сервисах.

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

Смешал теплое с мягким. Инкапсуляция про объединение свойств и функций в объект, а наследование про расширение функционала без изменений для существующего объекта. Алсо давным давно придуманы интерфейсы, которые решают описанную тобой проблему. + ты можешь переопределять свойства в наследуемых объектах, поэтому если тебе нужно докидывать 60тонн весса - это значит, что ты хуево расширяемый класс написал.
Аноним 01/03/26 Вск 12:29:18 #73 №330290546 
>>330284926
Самое говно в том, что оно неправильно понято в Java, и теперь эти ебаные Java программисты со своим Spring Framework отравляют своей хуитой индустрию. Ехал блядь сервис из 3 строчек через 5 слоев пустых абстракций. Надеюсь, ИИ заебется ковыряться в этих нагромождениях и поделит долбоебов на ноль.
Аноним 01/03/26 Вск 12:34:17 #74 №330290712 
>>330284803 (OP)
создаёт больше проблем чем решает. Когда дело касаетс проблем наследования то начинаются неоднозначные решения
sage[mailto:sage] Аноним 01/03/26 Вск 13:22:05 #75 №330292156 
>>330290219
>60тонн весса - это значит, что ты хуево расширяемый класс написал.
Да? А я тумал ООПэ хуйня как в реале и а оказалось надо тики сервера жрать чтобы летающую корову в небе прихуярить?
Аноним 01/03/26 Вск 13:22:51 #76 №330292173 
>>330284803 (OP)
Как писать по ООП на голенке?
Аноним 01/03/26 Вск 13:23:58 #77 №330292212 
>>330292173
Описываешь состояние, навешиваешь на это состояние поведение. В чем у тебя вопрос?
sage[mailto:sage] Аноним 01/03/26 Вск 13:24:21 #78 №330292225 
>>330292173
вот так пись-пись-пись
Аноним 01/03/26 Вск 13:35:27 #79 №330292578 
>>330292212
Ну как это примерно выглядит? У меня щас есть веб-сервер, где в ручках описана логика, и в ней же вызываются функции из синглтонов (например круды из бд), типа такого:

func randomHandler(somevars any...) error {
huynya := db.GetHuynya()

processed := huynya +=1

writer.Response(processed)
return nil
}

Ручки в main подключаются
Достаточно ооп-шно?
Аноним 01/03/26 Вск 14:04:07 #80 №330293496 
Выбираю ооп для малых проектов - удобно, структурировано, понятно!

Для больших ни в коем случае, это же пиздец, через год откроешь свой большой проект и ещё год будешь разбираться как всё работает, ну его нахуй

Лучше процедурное программирование
Аноним 01/03/26 Вск 14:20:48 #81 №330294085 
>>330292578
>в ручках
Хррртьфу в ебало.

>типа такого
У тебя здесь нет состояния.

>Ручки в main
Хррртьфу в ебало еще раз.

>Достаточно ооп-шно?
Ну, ООПшным у тебя может быть сервис для работы с базой данных, например. Я хз че ты хочешь в принципе.
Аноним 01/03/26 Вск 14:24:52 #82 №330294211 
>>330287988
Терпи, хуесос
Аноним 01/03/26 Вск 14:32:46 #83 №330294409 
>>330287988
>теперь код не представляет ценности
Код, который пишут модели, не представлял ценности и раньше. Рефакторю после каждой таски, сколько бы кейсов я ни пытался засунуть в AGENTS.md
comments powered by Disqus