Lev
Проще говоря, делаю ActivrRecord простой
Oleg
Я начинаю догадываться
👨🏼‍💻
Да есть такое уже, лишние массивы коллекций все имён классов
так бы сказал промолвил возможно сразу аминь
Oleg
Но зачем тебе в данном случае массив всех имен классов?
Oleg
function (csl) {return new cls()}
👨🏼‍💻
function (csl) {return new cls()}
чем это будет отличатся от просто вызова new cls()?
Lev
Ну это в другом случае где это надо, а сейчас лучше без них
Oleg
Oleg
Но да, логически это странно всё
Дима
А, это не он,Ж чорт)
Дима
Я начинаю догадываться
Что он хочет то? 🤔
👨🏼‍💻
Возвратом ссылки на экземпляр?
ты вовзращаешь новый экзепляр того, что передаёшь аргументом. по сути делаешь хай ордер фанкшн. она не ссылку вернет тебе, а новый экземпляр.
Oleg
Я думаю автору вопроса надо точно понять что он хочет, точно описать что он хочет, а вот тогда мы уже точно поймем что нужно
Дима
Ну я так подохреваю он просто пришёл из других языков и хочет тут такое же увидеть
Дима
Но что — вопрос открытый)
👨🏼‍💻
Я не понимаю, что он вообще хочет
Дима
ActiveRecord например как бы не требует статиков 🤔
👨🏼‍💻
Ссылку в памяти
а ссылка в памяти не будет, если это будет так: function(cls) { const newClass = new cls(); retunr newClass; }
Дима
)))
Oleg
Но самое главное что это всё безсмысленно конечно
Дима
Аминь)
Lev
class Base { static public function init() { return new self(); } private function __construct() { } } class Second extends Base { } $second=Second.init(); // Создает новый обект 'Second' а не 'Base' Пример на php , для понимания вопроса
Oleg
А, вот оно что, пхп
Lev
Сейчас глянем на вашу реакцию)
GG
Сейчас глянем на вашу реакцию)
это может быть больно для пхпшников)
👨🏼‍💻
какой такой self() ?
Konstantin
по логике, вернёт экземпляр
Smooth Operator
Lev
Вот на js мне и надо аналог self
Anonymous
this?)
Oleg
Тяжело быть пхпшником
Konstantin
Нет
self points to the class in which it is written.
Lev
this?)
Возможно
Konstantin
So, if your getInstance method is in a class name MyClass, the following line : self::$_instance = new self(); Will do the same as : self::$_instance = new MyClass();
Konstantin
причём тут жс
Konstantin
если он про пхп
Oleg
причём тут жс
Шикарный вопрос
Konstantin
чел спросил что делает self() - я ответил :)
Konstantin
а в жс по-костыльному, да... там ООП нет от слова совсем
Дима
Становиться рабом такого подхода
Какого подхода, лол?)) Тебе всё равно придётся это сделать, просто сейчас ты ещё наворачиваешь костылей вокруг этого
Konstantin
есть наследование по прототипу, но то такое...
Дима
Явное лучше неявного
Konstantin
в пхп тоже говно)
Konstantin
как и весь пхп в общем то
Дима
Ну а жс норм язык сейчас
Konstantin
хз
Konstantin
относительно норм, если ты какой-нибудь typescript используешь
Konstantin
и то на более низком уровне вся писанина превращается в костыли
Lev
Тут js не для веба делается
Дима
Про какой низкий уровень ты говоришь?
Konstantin
про чистый жс
Дима
Возможно имеется низкий уровень написания кода, это многое объясняет
Дима
А какой сейчас, грязный?
Vyacheslav
про чистый жс
А ты на каком пишешь?
Konstantin
typescript
Дима
flow является валидным js, не вижу проблем
Konstantin
когда проект собираешь, он транслируется в голый жс и там рукалицо
Vyacheslav
es2017 норм и без TS
Дима
Это проблема тайпскрипта который компилируется в мессиво
Konstantin
ес2017 не везде идёт
Konstantin
а всякие бабели это тоже костыли
Дима
Смешно
Konstantin
:)
Vyacheslav
Это не проблема языка, это проблема веба
Дима
Костыли — это когда ты ограничиваешь себя отказываясь от инструментов позволяющими писать меньше, получая больше
Vyacheslav
Которую babel как раз решает
Дима
Тут js не для веба делается
Без разницы для чего
Oleg
Релятивистский костыль - костыль, который выглядит как костыль, но не для всех наблюдателей