
Victor
18.05.2018
13:21:57
нет, не обычное
твой базовый класс каким-то образом знает про статический метод его предка

Abu
18.05.2018
13:22:10

Victor
18.05.2018
13:22:11
это дикое нарушение SOLID, как я уже писал выше

Сергей
18.05.2018
13:23:21
я писал на ооп долго, изучал концепции, смотрел большие проекты, где есть наследование больше чем на 6 уровней
и всё было читабельно, статических методов было минимальное количество
страдать как раз приходилось очень очень мало
но у тебя здесь реальная боль
—
когда я пришел в жс, то понял, что в ооп стиле писать категорически не стоит

Google

Victor
18.05.2018
13:23:35
Принцип инверсии зависимостей (англ. dependency inversion principle, DIP) — важный принцип объектно-ориентированного программирования, используемый для уменьшения зацепления в компьютерных программах. Входит в пятёрку принципов SOLID.
Формулировка:
Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба типа модулей должны зависеть от абстракций.
Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций.

soontothemoon
18.05.2018
13:23:51

Victor
18.05.2018
13:24:02
вчитайся и подумай, какого хера SuperModel вызывает fields и modelName

Сергей
18.05.2018
13:24:06
забудь о наследовании впринципе
и изучи сначала жс хорошенько

soontothemoon
18.05.2018
13:24:58

Victor
18.05.2018
13:25:16

Сергей
18.05.2018
13:25:23

Charles
18.05.2018
13:25:40
ребят, в objection можно как-то нормально инсертить дочернюю модель кроме как напрямую но не через upsertGraph?

soontothemoon
18.05.2018
13:26:22

Сергей
18.05.2018
13:26:34
что в жс нет классов

Google

Сергей
18.05.2018
13:26:47
как работает вызов функций на объектах
и так далее

soontothemoon
18.05.2018
13:26:56

Сергей
18.05.2018
13:26:58
бля

soontothemoon
18.05.2018
13:27:49

Victor
18.05.2018
13:27:57

Дмитрий
18.05.2018
13:28:07
лол :)

Сергей
18.05.2018
13:28:12

Victor
18.05.2018
13:28:21
Чувак, ну не позорься
Ты выдаешь синтаксический сахар за классы

Cenator
18.05.2018
13:28:29
foo()

Сергей
18.05.2018
13:28:32
иди изучай жс

Victor
18.05.2018
13:28:51
ключевое слово class добавили для тех, кто не понимал прототипного наследования
под капотом там все то же самое

Сергей
18.05.2018
13:29:07
foo()
пока не завезли приватные проперти
классы отличаются только эксепшеном при вызове
если ты не можешь написать то же самое на прототипах и функциях, ты не знаешь жс от слова вообще

soontothemoon
18.05.2018
13:30:14

Nikolay
18.05.2018
13:30:19
думаю, в этом случае нужно за отправную точку брать определение класса

Google

Сергей
18.05.2018
13:30:24

Nikolay
18.05.2018
13:30:27
а потом говорить, есть оно или нет

Сергей
18.05.2018
13:30:37

Cenator
18.05.2018
13:30:39
при транспайле они в те же джс функции преобразуются
транспайл != правильная реализация
в v8, классы имеют другую реализацию
транспайл это попытка реализовать работу конечного кода максимально близко к стандарту
потому что у них более важная роль
они сейчас выглядят как сахар. Но под капотом имеют другую реализацию, соответственно другие оптимизации

Сергей
18.05.2018
13:30:51
я это писал, я знаю

Nikolay
18.05.2018
13:31:13
определение ^
не секрет, что определений можно набрать разных, потому и ответов может быть много

Сергей
18.05.2018
13:31:15

soontothemoon
18.05.2018
13:31:25

Сергей
18.05.2018
13:31:38

Nikolay
18.05.2018
13:31:48

Сергей
18.05.2018
13:31:54
ок
класс

Ivan
18.05.2018
13:32:19
ахахахах

Сергей
18.05.2018
13:32:26
но совсем не то, что в С++, C#, PHP, JAVA

Google

Victor
18.05.2018
13:32:34
это классы в жс
JavaScript classes, introduced in ECMAScript 2015, are primarily syntactical sugar over JavaScript's existing prototype-based inheritance. The class syntax DOES NOT introduce a new object-oriented inheritance model to JavaScript.

Сергей
18.05.2018
13:32:37

Ivan
18.05.2018
13:32:48
это классы в жс
первое же предложение: Классы в JavaScript были введены в ECMAScript 2015 и представляют собой синтаксический сахар над существующим в JavaScript механизмом прототипного наследования

Сергей
18.05.2018
13:32:56
https://javascript.info/class

Nikolay
18.05.2018
13:32:59
что вы мне пытаетесь доказать?

Victor
18.05.2018
13:33:01
Внимание вопрос: как вы понимаете фразу "DOES NOT introduce a new object-oriented inheritance model to JavaScript"

Сергей
18.05.2018
13:33:20
@transparent_dew в js нет обычных классов
классы в жс (прототипное наследование) работает медленно
наследование больше 3-4 будет тормозить

Victor
18.05.2018
13:34:14
походу им нужно для доказательства выдрать кусок из v8 где идет разбор класса
иначе не прошибешь

Nikolay
18.05.2018
13:34:31

Дмитрий
18.05.2018
13:34:36

Сергей
18.05.2018
13:34:40

soontothemoon
18.05.2018
13:34:45
потому что ты понятия не имеешь как они работают
тебе откуда знать, скажи что ты еще не используешь все прелести языка, а пишешь по привычке как в 2010.
Мало работал с прототипами и не видел смысла в испольщовании тут, ведь разрабы не говорят что классы не о чем, не используйте их, смысл их добавления если с протатипами лучше?

Сергей
18.05.2018
13:34:50

Nikolay
18.05.2018
13:34:53
ок

Сергей
18.05.2018
13:34:58

Victor
18.05.2018
13:35:11

Google

Charles
18.05.2018
13:35:22
???
мде

Сергей
18.05.2018
13:35:24

Victor
18.05.2018
13:35:45

soontothemoon
18.05.2018
13:36:40

Сергей
18.05.2018
13:36:45

Victor
18.05.2018
13:37:01
джуны унижают стариков, которые пишут как в 2010-м
и по хардкору поясняют старым за классы, которые есть

soontothemoon
18.05.2018
13:37:14

Сергей
18.05.2018
13:37:23

soontothemoon
18.05.2018
13:37:47

Mikhail
18.05.2018
13:37:55
ахахахах

Charles
18.05.2018
13:37:55
я вот лично не понимаю какого простите хуя декораторы работают только на классы.

Сергей
18.05.2018
13:37:58
довыебывался

Roman
18.05.2018
13:38:02
В жс говно ооп, уже 2000 раз все доказали

Mikhail
18.05.2018
13:38:09
шутки про мамку подъехали

Charles
18.05.2018
13:38:16