@JSlang

Страница 1688 из 2237
Дмитрий
17.02.2018
08:56:59
но все-таки я хочу от создания машины получить машину, а не чертеж

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

разве что вы его опять же не хотите откуда-то загрузить...

ну и тут опять вопрос внутренней и внешней загрузки

Google
Дмитрий
17.02.2018
08:59:15
те самостоятельность против встроенности

Дмитрий
17.02.2018
09:02:14
ну выше уже было много вариантов просто async/await я считаю более удобным если ты про разные способы создания без await - другие подходы

Andrey
17.02.2018
09:02:49
const a = new A()

Какого типа переменная а?

Дмитрий
17.02.2018
09:08:33
хм торможу - не уверен точно, но промис выглядит вроде логичным в данном случае раз мы начали создание объекта, но не дождались пока он выполнится - значит имеем пока только обещание

Дмитрий
17.02.2018
09:10:17
что именно жесть - поясни

Andrey
17.02.2018
09:10:27
То, что непонятно что происходит в коде.

Konstantin
17.02.2018
09:11:28
https://pp.userapi.com/c7004/v7004004/4902d/6XMW754BBgw.jpg

Andrey
17.02.2018
09:14:58
что именно жесть - поясни
Просто смотри. Вводить сахар ценой запутывания программиста - это очень плохая идея.

Google
Andrey
17.02.2018
09:16:17
Код должен быть простым как дверь и не вызывать вопросов "что здесь происходит?" на уровне языка.

Дмитрий
17.02.2018
09:17:20
а что сложного выше? ты сделал заказ машины - решил не ждать и получил обещание, что она будет сделана подождал получил готовую машину

Roman
17.02.2018
09:17:43
Опять ооп свое тут обсуждают ?

Andrey
17.02.2018
09:18:45
Это важно. Относительно этого ты действуешь дальше.

Дмитрий
17.02.2018
09:19:11
Какого типа переменная а?
ну изначально подразумевается обещание, которое возвращает тебе объект же

Andrey
17.02.2018
09:20:05
ну изначально подразумевается обещание, которое возвращает тебе объект же
Ты предлагаешь изменить семантику new, чтобы было проще ошибаться, ради сомнительного сахара, верно?

Дмитрий
17.02.2018
09:21:47
я предлагаю добавить новую семантику async class - да некоторые говорят что логичнее использовать async в конструкторе, хотя я лично все же как раз за наглядность, чтобы сразу было видно, что это асинхронный класс, который возвращает обещание объекта

Andrey
17.02.2018
09:23:22
Ок. Я понял. Ты хочешь усложнить язык ради сомнительных практик. Печально.

Надеюсь, что такого не будет.

Иначе придётся добавлять новое свойство в линтер.

Дмитрий
17.02.2018
09:25:30
усложнить? как по мне так упростить потому что обещания уже пришли в язык, асинхронные функции тоже почему не сделать тогда асинхронное создание объектов? это как раз таки более удобно для работы с ними

Andrey
17.02.2018
09:27:36
усложнить? как по мне так упростить потому что обещания уже пришли в язык, асинхронные функции тоже почему не сделать тогда асинхронное создание объектов? это как раз таки более удобно для работы с ними
Камон. Не надо сравнивать new и асинхронный функции. В случае функций семантика никак не меняется и есть реальная необходимость: уменьшение бойлерплейта. А в случае new ты предлагаешь менять семантику, чтобы было проще писать цикломатично сложный код.

Дмитрий
17.02.2018
09:28:19
еще раз я ничего не меняю в старой семантике я лишь добавляю новую

Andrey
17.02.2018
09:28:35
еще раз я ничего не меняю в старой семантике я лишь добавляю новую
У тебя new начинает возвращать промис. Ты чего?

Точно не меняешь?

Дмитрий
17.02.2018
09:29:09
да но возвращает то он для async class что вроде как бы логично?

для обычных классов все по-старому

Google
Andrey
17.02.2018
09:30:56
Что в переменной а?

Верно, что будет число?

Dika
17.02.2018
09:31:59
Andrey
17.02.2018
09:32:08
Ммм

Двусловные операторы. Ня!

Но мне интересно что Дмитрий скажет.

Дмитрий
17.02.2018
09:34:26
Верно, что будет число?
хм не совсем понимаю вопроса... ну я даже на всякий случай проверил - ну да вернулось число или о чем речь?

Andrey
17.02.2018
09:35:05
Т.е. начинается полнейший хаос.

Дмитрий
17.02.2018
09:36:43
не понима вопроса, если ты создаешь объект от асинхронного класса - он должен возвращать объект это логично если ты используешь его в каких-то других случаях так и результат будет иной это логично

Andrey
17.02.2018
09:38:05
Как думаешь, почему with никто не использует?

Почему его через линтеры выпиливают?

Дмитрий
17.02.2018
09:38:31
так и в чем путаница то? что тебя путает в том чтобы использовать от async class Car car = await new Car(); в какой момент времени ты путаешься?

Dika
17.02.2018
09:38:39
Почему его через линтеры выпиливают?
Его можно через 'use strict' выпилить

Дмитрий
17.02.2018
09:40:05
и почему ты его не написал? забыл? ну так ты его можешь и в асинхронной функции забыть тогда

ujeenator
17.02.2018
09:40:39
не понима вопроса, если ты создаешь объект от асинхронного класса - он должен возвращать объект это логично если ты используешь его в каких-то других случаях так и результат будет иной это логично
Как определить пол котенка? Очень просто! Берёте котенка, ставите на пол и слегка шлепаете по попе, если побежал, то это кот, а если побежала — кошка

Google
Andrey
17.02.2018
09:41:07
Потом await напишу. В другом месте.

Дмитрий
17.02.2018
09:42:32
и в чем тогда проблема не совсем понимаю?

Andrey
17.02.2018
09:42:40
Ты не понимаешь что происходит на уровне языка.

Дмитрий
17.02.2018
09:46:35
все равно не понимаю, что непонятного тут происходит... ты изначально должен был видеть интерфейс асинхроннного класса, а значит знаешь, что он вернет обещание, если ты решил отложить - ну так ты сам должен понимать, что ты делаешь а если потом забыл, что у тебя не созданный класс... ну так с тем же успехом можно сказать, что ты можешь и про что угодно забыть

Дмитрий
17.02.2018
09:48:35
так а что мешает тебе сейчас забыть про обещание?

Admin
ERROR: S client not available

Andrey
17.02.2018
09:48:46
Еее, в новой версии js вы сможете не понимать свой код в 2 раза больше.

так а что мешает тебе сейчас забыть про обещание?
Ну, предположим, что человек помнит в течении одной минуты.

Дмитрий
17.02.2018
09:50:09
я говорю не про время или типа просто общения по-твоему забываются дольше, чем общеания созданные асинхронным классом дык а если обещания можно сейчас создать функцией уже

и ты про них забудешь

может тут вопрос память а не языка тогда

Дмитрий
17.02.2018
09:50:43
все равно не понимаю, что непонятного тут происходит... ты изначально должен был видеть интерфейс асинхроннного класса, а значит знаешь, что он вернет обещание, если ты решил отложить - ну так ты сам должен понимать, что ты делаешь а если потом забыл, что у тебя не созданный класс... ну так с тем же успехом можно сказать, что ты можешь и про что угодно забыть
Я не понимаю почему ты вообще изначально решил что конструктор класса должен возвращать что-то другое вместо самого класса? Ты понимаешь что класс, промис на запрос ресурсов и особенно результат выполнения запроса — это вообще кардинально разные вещи служащие разным целям и они вообще не взаимозаменяемы?

Дмитрий
17.02.2018
09:53:25
окей опять мы приходим к семантике, как я понимаю... ну что ж окей newAsync тогда как вариант

Google
Andrey
17.02.2018
09:54:14
Это стоит того?

Давай по другому. Ты у себя в коде так писал?

js это прекрасный язык с той точки зрения, что ты можешь накрутить все что угодно.

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

Алёна
17.02.2018
09:57:09
Можно ещё пропозал создать для включения в стандарт.

Дмитрий
17.02.2018
09:57:17
я уже писал для чего - для более простой работы с асинхронными объектами и их создании

Andrey
17.02.2018
09:58:20
я уже писал для чего - для более простой работы с асинхронными объектами и их создании
Да без проблем. Я написал что сделать надо. Ты же уже готов эту фичу использовать.

Дмитрий
17.02.2018
09:59:54
ну в теории наверно можно сделать это костылем конечно, но не знаю насколько костыль будет в таком случае большим...

Andrey
17.02.2018
10:01:30
Размером с типичный бабель-плагин
И делается это, кстати, очень быстро. Там очевидные преобразования.

Дмитрий
17.02.2018
10:01:58
ну для самого класса может быть, но речь еще про наследование

Дмитрий
17.02.2018
10:04:13
что нужно для расширение самого класса? class.prototype там у нас какой?

Дмитрий
17.02.2018
10:06:24
так ну в теории можно расширить пожалуй через само наследование

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