LINUX.ORG.RU
ФорумTalks

Почему боятся ООП?

 


0

6

Заметил, что некоторые разрабы стесняются (триггерятся/истерят/брезгуют/отстраняются/впадают_в_кому от) ООП. Почему? Вот, один говорит «у нас тут не наследование, а …», так и хочется добавить «розовые пони». Т.е. если ты можешь реализовывать интерфейсы, у тебя уже нет отношения is-a? Может быть, какие-то древние ЯП не поддерживали чисто виртуальные интерфейсы, и нужен был непременно базовый класс, но как минимум уже C++ сломал эту традицию.

★★★★★

Ответ на: комментарий от Eulenspiegel

ну тут дядь примечателен ( на ряду с другими хауту) как в начале 70ых впрягли радиолюбителей на пользу родине через товары почтой и «самозарождение» r&d у тех любителей в гаражах на их коленках

ваще противопоставлять подсистему(рынок как место поиска решений) другой подсистеме(инфраструктура как площадка для «детей» ищущих решения) да ещё форсить что «кожа» (оборона это граница по возможности эндо от экзо) во главе всего это 100500

qulinxao3
()
Последнее исправление: qulinxao3 (всего исправлений: 2)
Ответ на: комментарий от lovesan

У него была цель реализовать CLOS

Ну тебе-то, конечно, виднее, чего хотел Рич Хикки, чем ему самому. Видимо, магия борщелиспа позволяет слышать голоса в голове, которые никогда не врут.

Вот сам подумай — нахер ему запиливать свою самобытную объектную систему, если у него прямо под рукой уже есть бесплатная жабная? С нулём усилий по реализации. Вот с чисто практической точки зрения — нахера? Чтобы что?

CLOS - как и весь Common Lisp - исключительно ориентированная на практику вещь

Его служба и опасна, и трудна, ага. Хотя на первый взгляд как будто не видна.

Впрочем, и на второй тоже. И на третий. И это не только CLOS касается, а и всего CL в целом %)

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 3)
Ответ на: комментарий от foror

8000 USD за компьютер по сегодняшним деньгам это бедный студент? Взял топое железо по тому времени.

Взял что смог взять, хотя бы в кредит, «не в казино, а в карты» (с). «I bought myself an AT-386 compatible machine (well.. I didn't have enough money, so I'm still paying on it, but it seems I'll get enough money for Linux to finally pay off the last rates)..»(С) И у чего было MMU. У него был не «топовый» на 1991 x86, топовым x86 в 1991-м (c 1989го) был вовсе даже 486, до первопня было еще два года. А прям топовое и тогда, и ранее было совсем не x86. И даже Motorola 68020 топовой «за свои деньги» не была, эрзацем возможностей которой для Линуса и был 386, только она-то была еще более дешевой).

slackwarrior ★★★★★
()
Последнее исправление: slackwarrior (всего исправлений: 1)
Ответ на: комментарий от qulinxao3

если индивид не компренде в понимание чё от него хотят дергает «предка»

О как. Оказывается, весь этот ваш ООП — это мистические практики и общение с духами предков.

Nervous ★★★★★
()
Ответ на: комментарий от Nervous

В основе жэ идея «переиспользования». Степанов потом еще обстебал типичные реализации, пояснив по хардкору что переиспользование через ООП — это дуинг ит вронг.

slackwarrior ★★★★★
()
Ответ на: комментарий от s-warus

ООП используют не для того чтобы усложнить, а для того чтобы упростить програмирование.

То же самое можно сказать про любой другой инструмент. С оговоркой: с этой целью его используют те, у кого мозги есть. У кого нет – используют потому что модно. И рассуждают не о степени полезности инструмента для конкретной задачи, а опять же о моде.

pr849
()
Последнее исправление: pr849 (всего исправлений: 2)
Ответ на: комментарий от Nervous

Ну тебе-то, конечно, виднее, чего хотел Рич Хикки

Он хотел CL на жабке + чтобы свой(почесать ЧСВ, NIH итп).

Вот сам подумай — нахер ему запиливать свою самобытную объектную систему, если у него прямо под рукой уже есть бесплатная жабная? С нулём усилий по реализации. Вот с чисто практической точки зрения — нахера? Чтобы что?

Потому что жабское говно это говно, а не ООП. Уж по сравнению с CLOS это точно. Он правда, CLOS не осилил.

Его служба и опасна, и трудна, ага. Хотя на первый взгляд как будто не видна.

Тем кому видно только лендинги и дейтинги на PHP, Clojure и прочем Python - да, не видно.

lovesan ★★
()
Ответ на: комментарий от Zhbert

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

pr849
()
Ответ на: комментарий от pr849

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

Откуда вы такие лезете? Сможешь.

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 1)
Ответ на: комментарий от foror

мы банально живём в мире объектов/сущностей со своими свойствами и функциями

Не живешь ты в мире объектов. Ты живешь в лучшем случае в мире «концептов объектов», т.е. «классов объектов», т.е. фреймов и категорий. У которых еще и количество фич разное, в зависимости от уровня абстракции (ты это и «самоосознающий(предположительно :)) индивид» и кусок (предположительно:) мяса, т.е. говорящая куча протеинов... И ансамбль «атомов», в основном пустой! И конгломерат «кварков» внутри этих «атомов». При этом за всеми этими концептами никаких объектов тоже нет - только ссылки на другие концепты. Слова ссылаются не на объекты, а только на другие слова. В этом большая проблема, но не только ООП :) А ООП во многих случаях избыточен, либо недостаточен, либо... в случае подсистем и компонентов — не обязателен.

slackwarrior ★★★★★
()
Ответ на: комментарий от slackwarrior

Бедные студенты на что-нибудь типа 8 битного синкляра облизывались. А тут чувак берёт комп за 8к USD.

У него был не «топовый» на 1991 x86, топовым x86 в 1991-м (c 1989го) был вовсе даже 486

Только-только появился. Вполне топовый камень на то время i386.

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 1)
Ответ на: комментарий от foror

Только-только появился. Вполне топовый камень на то время i386.

Это уже твои виляния. В 1991-м году, когда Линус покупал, залезая в долги, устаревший i386 это уже два года как. Называть его «топовым» — это как говорить «халва-халва», а во рту слаще не станет. Или «халява-халява», когда кредит еще отдавать и отдавать, за уже устаревшее железо.

slackwarrior ★★★★★
()
Ответ на: комментарий от lovesan

Он хотел CL на жабке

Голоса в голове продолжают вещание? %)

Он сам, на чистейшем английском языке не один раз говорил, почему он решил написать свой язык — потому что существующие его по тем или иным причинам не устраивали. И кресты, и жаба, и даже борщелисп с его расчудесным CLOS.

Да, он на всём этом писал, причём профессионально, за деньги. Не дотнетовелосипеды какие-то с неясными перспективами.

CLOS не осилил

Не осилил есть говно — слабак и неудачник. Понемаю %)

Nervous ★★★★★
()
Последнее исправление: Nervous (всего исправлений: 1)
Ответ на: комментарий от seiken

Ты правда думаешь, что на чем писать определяют менеджеры?

В целом да.

anc ★★★★★
()

Заметил, что некоторые разрабы стесняются…

Это те же самые люди, которые при слове «майонез» делают такое лицо, будто им чистого говна предложили, а потом делают себе салатик, заправив его маслом, яичным желтком и горчицей.

FishHook
()
Ответ на: комментарий от slackwarrior

Виляешь здесь только ты. Бедные студенты [s]на такси в булочную не ездят[/s] не покупают топовый (да, пусть хоть предтоповый, если уж так к словам цепляешься) комп и кучу перефирии к нему за 8к USD на сегодняшние деньги. А берут бу ноут с авиты за 300 USD. Я так в студенческие годы и поступал, у меня даже полоса через экран шла, но я был невпупенно счастлив. А тут чувак одну из крутейших 32 битных машинок (на то время) себе взял просто так.

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 3)
Ответ на: комментарий от foror

Поэтому и возникает вопрос: x86 вполне норм было в то время или Линус был туповат и разбрасывался деньгами?

foror ★★★★★
()
Ответ на: комментарий от foror

Ну естественно, вполне норм, для его целей-то. У него было совсем игрушечное ядро, и нейросетки он не собирался тренировать.

seiken ★★★★★
() автор топика
Ответ на: комментарий от seiken

Линус работал в универе, пока сам учился. Этого хватило чтобы взять кредит на комп. Университетский комп - если там вообще был подходящий - он не смог бы занимать надолго, и ночевать в универе как-то не комильфо.

seiken ★★★★★
() автор топика
Ответ на: комментарий от seiken

нейросетки он не собирался тренировать

Ты угораешь? Тот же Кармак в тоже время на другом континенте тайком из офиса утаскивал себе 386-е машинки, потому что денег на них не было, когда они первые хиты пилили.

foror ★★★★★
()
Ответ на: комментарий от foror

себе взял просто так.

Не просто так, а в кредит.

seiken ★★★★★
() автор топика
Ответ на: комментарий от foror

А берут бу ноут с авиты за 300 USD. Я так в студенческие годы и поступал

Случается такое, что у разных людей студенческие годы на разные годы попадают. В мои студенчиские годы, так же как и в студенческие годы Линуса авито ещё в проекте не было. И ноуты тогда стоили не то что дофига, а просто убер дофига денег.

anc ★★★★★
()
Ответ на: комментарий от seiken

Ну т.е. в офисе они были, а собственный себе купить Кармак просто жмотился.

Предположим у вас в офисе есть н-цать рэковых серверов в стойке, вы себе домой один такой не покупаете потому что просто жмотитесь?

anc ★★★★★
()
Ответ на: комментарий от anc

Я напоминаю, что мы начали с Торвальдса. Он кодерил днями и ночами. В таком контексте - да, купил бы себе пару серверов домой.

seiken ★★★★★
() автор топика
Ответ на: комментарий от beastie

А теперь глянь на языки созданные недавно

Чтоб проблеваться с этих «ЯП», поржать с хипстоты, потужно демонстрирующих эффект Даннинга-Крюгера, и пойти дальше делом заниматься на зрелых дедовых ЯП-ах с ООП.

slew
()
Ответ на: комментарий от seiken

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

Чтобы подключиться к университетскому компу из дома, хватило бы б/у терминала, максимум – списанной 8-битной машинки с CP/M

Но хотелось повозиться с 386, а не только подключаться по ночам к университетской ЭВМ.

vM ★★
()
Ответ на: комментарий от slew

делом заниматься на зрелых дедовых ЯП-ах с ООП.

на зрелом дедовом ООП-ФОРТРАНе с перезрелым ООП-Планкалкюлем?

vM ★★
()
Ответ на: комментарий от seiken

Даннинг-Крюгер рекурсивен

Даннинг-Крюгер продуктивно применим и к Даннингу и к Крюгеру и к Даннинг-Крюгеру - вот такая загогулина

qulinxao3
()

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

Хотя ООП-бояре сейчас скажут что я не прав и надо все делать только через классы и все такое.

Kolins ★★★★
()
Ответ на: комментарий от lenin386

потому что её нет - поэтому избиваю свою жену без последствий негативных

qulinxao3
()
Ответ на: комментарий от Kolins

И не надо, говорю как опытный жаба-кодер который не прочь пописать автоматизацию на bash. ООП это про хитросделанное повторное использование кода, абстракции накручивают только чтоб повторно использовать логику против объектов разных типов.

Aber ★★★★★
()
Ответ на: комментарий от slew

зрелых дедовых ЯП-ах с ООП

Ты ведь про Smalltalk, да? Единственный Ъ-ОПП язык, ЕМНИП. А C++/Java/etc. – это только жалкая карикатура на ОПП.

beastie ★★★★★
()
Последнее исправление: beastie (всего исправлений: 1)
Ответ на: комментарий от Aber

повторное использование кода, абстракции накручивают

Вопрос. Вот есть какая-нибудь сишная библиотека, типа sqlite или sdl2. Там особо хитрых абстракций никаких вроде бы нет - только дескрипторы на вполне себе конкретные структуры. А повторного использования там - тысячи.

При этом, если берёшь просто программу с иерархией абстрактных классов, то вытащить из неё определённый модуль обычно не так просто - вся программа потянется, а за ней ещё ворох xml-файлов, где связи между объектами прописаны. И это если повезёт. Если не повезёт, то связи между объектами куда-нибудь в базу данных уйдут и пойди разбери как тут повторно использовать.

Kogrom
()
Ответ на: комментарий от Kolins

Хотя ООП-бояре сейчас скажут что я не прав и надо все делать только через классы и все такое.

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

foror ★★★★★
()
Последнее исправление: foror (всего исправлений: 2)
Ответ на: комментарий от seiken

Да, не вопрос, просто я подметил, что не был Линус бедным студентом. В то время купить такую машинку это как сейчас себе «бедный» студент бы эпик с 64 ядрами и 2 ТБ оперативки домой приобрёл, чтобы нейронки обучать.

foror ★★★★★
()
Ответ на: комментарий от slackwarrior

Неуместное сравнение. В мире жООП, норма писать <Pointer>.move(x, y), хотя указатель сам себя не передвинет. Мы живем в мире объектов и субъектов, а если уже пофилософствовать, то мир сугубо субъективен с одним наблюдателем…

rtxtxtrx
()
Ответ на: комментарий от Kogrom

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

ООП это не про вытаскивать и где-то использовать отдельный компонент, тут набор функций библиотеки как раз лучше справится. Тебе хочется модулизацию.
ООП это про ферймворки и их использование, пресловутый Inversion of control, а там как раз требуется отделение абстракций от реализации и позднее связывание.

Там особо хитрых абстракций никаких вроде бы нет - только дескрипторы на вполне себе конкретные структуры.

Наверное в этом суть.

Aber ★★★★★
()
Ответ на: комментарий от vM

Удаленное подключение - это только для лаб в юзерспейсе, ядро отлаживать, тем более инициализацию - это сплошные ресеты. Колхозить там всякие реле и проч. не вариант (во-первых, надо знать, как, во-вторых могли и не разрешить). Остаётся только личный комп.

seiken ★★★★★
() автор топика
Ответ на: комментарий от foror

У Линуса ядро было игрушечное вначале. Так же и с нейронками. Чтобы модель на почтовые индексы натренировать, достаточно очень хилого компа, даже без GPU.

seiken ★★★★★
() автор топика
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)