@JSlang

Страница 1685 из 2237
A
16.02.2018
21:36:31
асинхронный != многопоточный
Это верно) Тогда тебе придётся объянить мне что значит "изначально вся работа ведется в асинхронном режиме" =)

Сергей
16.02.2018
21:36:49
car = await Car.create(green, red, blue)

Daniel
16.02.2018
21:36:50
И какое поведение, если я инстанциирую класс без await

Сергей
16.02.2018
21:36:50
всё

Google
Daniel
16.02.2018
21:37:06
Я получу промис, который вернёт объект

Daniel
16.02.2018
21:37:24
Это очень несладкий сахар

Больше проблем создаст

Сергей
16.02.2018
21:37:44
об этом уже много людей написали

класс сам по себе не может быть асинхронным

async class Foo {}

ну и что

ты пишешь, что станет только конструктор асинхронным

а гораздо логичнее, чтобы все методы

Дмитрий
16.02.2018
21:38:41
И какое поведение, если я инстанциирую класс без await
дык используется ключевое слово такое же как и в функциях async class <--> async func если ты создаешь обычный класс - там нет никаких промисов, а если ты работаешь с асинхронным классом то все также как и с async func должен понимать с чем работаешь)

Google
Сергей
16.02.2018
21:40:29
но класс как идея не может быть асинхронным

у тебя по идее должен быть асинхронный конструктор

class Foo { async constructor() { } }

а не класс

Daniel
16.02.2018
21:41:21
даже асинхронный конструктор такая себе идея

Сергей
16.02.2018
21:41:36
ну это уже логичнее, хоть немного

асинхронный класс это как асинхронная переменная

async let foo = ...

Daniel
16.02.2018
21:42:46
Вообще сама идея создаёт промежуточное состояние у объекта, что очень и очень странно

Заносишь асинхронщину внутрь, когда она должна быть снаружи

Объект либо есть, либо нет

Factory функцию сделай

И все

Дмитрий
16.02.2018
21:43:20
дык а машину пока на заводе собирают она есть или ее нет?

Daniel
16.02.2018
21:43:47
Идеально

Класс машины описывает готовую машину, если подумать

Дмитрий
16.02.2018
21:44:23
я говорю про саму концепцию а это уже разные подходы и спорить что лучше классы или фабрика - иная совсем тема

Сергей
16.02.2018
21:44:48
так именно

сама концепция

Google
Сергей
16.02.2018
21:45:01
класс это абстрактная фигня для описания сущности

как ты его конструируешь это другой вопрос

Дмитрий
16.02.2018
21:45:15
окей а что тогда по-втоему конструктор?

Daniel
16.02.2018
21:45:18
На этапе сборки машина ещё не машина

Дмитрий
16.02.2018
21:45:22
разве не фабрика?

Сергей
16.02.2018
21:45:22
создание сущности

любой

начальное состояние

init

разве не фабрика?
нет конечно

Дмитрий
16.02.2018
21:46:11
те в конструкторе машина не конструируется - окей...

Сергей
16.02.2018
21:46:26
нет

Сергей
16.02.2018
21:46:39
ты задаешь начальные значения

а с наследованием как объяснишь?

class Truck extends Car {}

какое здесь может быть промежуточное состояние между super и возвратом?

что там?

A
16.02.2018
21:47:37
Мой вопрос по поводу того что JS будет вынимать из event loop в webapi при достижении await остаётся открытым =)

Сергей
16.02.2018
21:47:40
недогрузовик или недомашина

Daniel
16.02.2018
21:48:26
Google
Daniel
16.02.2018
21:48:36
Тут скорее если проводить аналогии

То наличие асинка это доставка материалов параллельная и с неизвестным сроком

А сборка это один тик

В конструкторе

На конвейере

Сергей
16.02.2018
21:49:32
хорошо описал, согласен

Daniel
16.02.2018
21:49:34
Такое объяснение логичнее

Регулировка поставки материалов по логике не должна лежать в месте, где управляется конвейер

Ты конвейеру кормишь готовые детали

Создавая объект

Admin
ERROR: S client not available

Daniel
16.02.2018
21:50:44
А сами детали фетчишь асинк функцией, но не в конструкторе

Дмитрий
16.02.2018
21:54:27
ну в целом да так сейчас и делаю хотя это уже немного разные вещи и подходы к тому, что такое конструктор и зачем он нужен... свое видение я уже изложил для меня все-таки конструктор - это полноценный создатель а не я ему это создай, принеси я лишь указываю параметры и дальше хочу, чтобы он сам по ним все сделал, а я пойду подожду и займусь другими делами мне такой подход клиента ближе

Daniel
16.02.2018
21:56:22
Я считаю, что даже если и назвать это сахаром, то оно вредит пониманию происходящего, ты все в одно смешиваешь

Мне даже в голову не приходило, вот реально сколько сейчас пытаюсь вспомнить

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

Google
Дмитрий
16.02.2018
22:00:43
просто например если я работаю с модулями import Car() и вот не хочу я лишних действий потом, а лишь хочу указать нужные мне параметры, а все логика, чтобы была в модули и класс а я просто делаю new_car = await Car(red,model1);

ну вот я и хочу создать объект, но без лишних проблем

просто указать в конструкторе что я хочу и получить это

Дмитрий
16.02.2018
22:03:35
почему? я привел пример как это сделать окей пусть возможно async conctructor лучше (хотя это нужно еще думать) я писал больше async class для понимания самой идеи и чтобы люди сразу понимали что работают с уже отличным от привычного класса - в этом была суть

Daniel
16.02.2018
22:04:22
Ну тут есть ещё такая штука

Что классы не нужны))

Дмитрий
16.02.2018
22:04:58
ну да я уже понял что тут классы не все любят

Сергей
16.02.2018
22:05:20
А другого способа создать обьект у тебя нет

Дмитрий
16.02.2018
22:06:19
поэтому я и говорю, что лучше использовать async в классе, чтобы не было путаницы, что создается именно асинхронный объект

Сергей
16.02.2018
22:06:51
Нет

Лучше не делать так совсем

Эта функциональность просто не нужна

А тебе надо лучше изучить паттерны

Дмитрий
16.02.2018
22:07:22
ага классы тоже не нужны я понял

Сергей
16.02.2018
22:07:37
Смени имя

Дмитрий
16.02.2018
22:09:20
ладно посмотрим) классы говорили тоже не нужны, но они есть) не нравятся/не нужны - не используйте) хотя видно сторонников моей идеи тут нет?

Сергей
16.02.2018
22:09:49
И не будет

Страница 1685 из 2237