metaclass: (Default)
[personal profile] metaclass
http://jakobz.livejournal.com/249050.html

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

А то напихают sleep(1000) в качестве средства синхронизации, а потом запускается это все на каком-нибудь убер-быстром или убер-медленном железе и оно все дохнет в необъяснимых мучениях.

Впрочем, по ссылке "говнокод" - это код без ООП и паттернов, а они откровенно нахер не нужны в большинстве случаев.

Date: 2015-03-11 04:45 pm (UTC)
From: [identity profile] binf.livejournal.com
Да, именно к "динамическому полиморфизму". Точнее, к мультиметодам лиспа и виртуальным функциям. Это и есть "формат" сообщений в контексте понятия "подход".
"Библиотеки и оверлеи", реализующие в процедурных языках ООП - это что-то вроде гейского изврата на подобие Angular js? нафиг нафиг. Если ЯП не поддерживает протоколов/интерфейсов/Duck typing, то разумно было бы вообще забыть об ООП.
"перегрузка функций по сигнатурам" - это не ООП, и это грабли

Date: 2015-03-11 04:56 pm (UTC)
From: [identity profile] cross-join.livejournal.com
Эмоциональные оценки типа "грабли" или "изврат" не несут никакой информации.
Показать же, что вышеперечисленное является особенностью ООП вам не удалось.
Динамический полиморфизм (данных, как свойств) можно изобразить и на SQL.
В каких еще подходах существует наследование (или обобщение) реализации?
В каких подходах в процессе выполнения программы существуют защищенные области памяти, называемые объектами, управлять которыми можно посылкой сообщений?

Date: 2015-03-11 06:26 pm (UTC)
From: [identity profile] binf.livejournal.com
Ну а что бы вы хотели, чтобы я стал здесь внезапно копипастить про ужосы ангуляра? Вряд ли это хорошая идея в формате дискуссии. В данном жж нельзя постить ссылки, но в гуглах этого есть много, и любой желающий может подробно прочесть об издержках внедрения java-style ООП в JS. Не согласны? мне остаётся лишь смириться и как то жыть дальше. Я завёл об этом речь потому, что кроме JS, ни одного примера искусственного внедрения ООП туда, где его нет, мне в голову не приходит. Можете примеры привести чего-то ещё?

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

ненене, это особенность именно внедрения ООП в JS. Само по себе ООП может быть весьма полезным. Например, когда в кложе что-то примитивное прикидывается протоколом. Или утиная типизация. Или то, как работают интерфейсы в TypeScript. Много примеров на самом деле

== Динамический полиморфизм (данных, как свойств) можно изобразить и на SQL.

можно на чём угодно. но результат не всегда заслуживает приложенных усилий тащемто

Наследование - никто, согласен. Но это спорная концепция.

== В каких подходах в процессе выполнения программы существуют защищенные области памяти

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

Date: 2015-03-11 08:01 pm (UTC)
From: [identity profile] maxdz.livejournal.com
>можно на чём угодно. но результат не всегда заслуживает приложенных усилий тащемто
>Наследование - никто, согласен. Но это спорная концепция.

Вижу, ты сам понимаешь, что полиморфизм/виртуальные функции это зло, да и наследование, по большому счёту, зло тоже.

А делаешь вид, что нуб - нехорошо...

Date: 2015-03-12 06:46 am (UTC)
From: [identity profile] binf.livejournal.com
Ты потерял пойнт. Постарайся понять диалог в целом, не только отдельные фразы.

Date: 2015-03-12 01:11 pm (UTC)
From: [identity profile] maxdz.livejournal.com
Я попробовал выцепить суть из каши в твоей голове. Извини, если плохо получилось...

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 6th, 2025 08:29 pm
Powered by Dreamwidth Studios