Size: a a a

JavaScript.Ninja

2020 June 10

MM

Mikita Melnikau in JavaScript.Ninja
спасибо! я просто хочу отрефакторить небольшой кусок, но не знал с чего начать
источник

r

readme.md in JavaScript.Ninja
источник

r

readme.md in JavaScript.Ninja
Не в курсе что это за трешняк в линке?
источник

MM

Mikita Melnikau in JavaScript.Ninja
Цэ запорижжа
источник

uT

unLom Trois in JavaScript.Ninja
readme.md
Не в курсе что это за трешняк в линке?
кириллица там
источник

uT

unLom Trois in JavaScript.Ninja
Как у этого сайта
источник

uT

unLom Trois in JavaScript.Ninja
источник

uT

unLom Trois in JavaScript.Ninja
readme.md
Зачем punyкодить .com - одному богу вопрос
источник

MM

Mikita Melnikau in JavaScript.Ninja
@Baxxterkhv всё таки не понимаю. Вот я гуглю-читаю. Вторую ссылку взял: https://alligator.io/js/class-composition/

Дошёл почти до конца и там такой же фарш с миксинами в конце: const Behaviors = compose(MixinA, MixinB, MixinC)(Base). У меня в этом проекте 1 в 1 все модули попрописаны так...
источник

MM

Mikita Melnikau in JavaScript.Ninja
то есть типа
const MixinA = superclass => class extends superclass {};
const MixinB = superclass => class extends superclass {};
const MixinC = superclass => class extends superclass {};
const MixinD = superclass => class extends superclass {};

class Base {}
class Child extends MixinD(MixinC(MixinB(MixinA(Base)))) {}
источник

MM

Mikita Melnikau in JavaScript.Ninja
и потом никаких приватных методов, никаких this если не в конструкторе
источник

AS

Alex Stepchenkov in JavaScript.Ninja
В вашей же ссылке на stackoverflow в первом же ответе есть рабочее решение
источник

D

Dimitrii in JavaScript.Ninja
Mikita Melnikau
ну типа насколько я помню это классическое множественное наследование в ES6. это решение приняли когда писали проект году в 2017. и там через модуль суперкласс собирается таким вот образом
Попробуй почитать Erik Eliot, по-моему, Functional Programming. У него пол книги на медиуме выложено.
В одной из глав, статей он рассказывает о композиции обьектов миксинамм, как он к этому пришел и свои лучшие практики (спойлер: не надо делать глубокую композицию миксинами, она подобна длинной цепочке наследования родитель->потомок->потомок->потомок и такая же хрупкая)
Возможно узнав этот подход вы постигните Дзен и глаза перестанут кровоточить от миксинов в JS. Возможно, это даст новый способ мыслить о композиции обьектов, и станет легче ориентироваться в коде на миксинах.
Успехов! :-)
источник

MM

Mikita Melnikau in JavaScript.Ninja
@d1mitrii вот я тоже так головой понимаю, что композиция, это "грубо говоря" некоторый функционал связанный между собой логикой, но не связанный друг с другом. А если нужно всё перевязать - миксин нужно экстендить в класс и уже там делать логику. Но тут какбы получается что есть несколько классов с общей логикой, они объединяются в миксин, а потом результирующий класс полностью без логики экспортируется. И я не могу придумать как это зарефакторить кроме как отнести взаимодействующие методы в дочерний класс
источник

m

m^^combat in JavaScript.Ninja
Кто мне обьяснит, они совсем поехали?
источник

m

m^^combat in JavaScript.Ninja
RoamResearch
источник

m

m^^combat in JavaScript.Ninja
использовал как альтернатива ноушену, серовато но в целом удобно
источник

m

m^^combat in JavaScript.Ninja
и теперь предлагают 165енотов в год oO
источник

v

vasilich in JavaScript.Ninja
Ценность вундервафлей для заметок сильно переоценена)
источник

m

m^^combat in JavaScript.Ninja
хотя вроде как это только если больше одной дб создаешь, старую можно продолжать использовать
источник