
Max
30.11.2017
14:05:22

Алексей
30.11.2017
14:05:35

Nikita
30.11.2017
14:05:36

Max
30.11.2017
14:05:40
чтобы не писать каждый раз сериализацию и десериализацию

Google

Сергей
30.11.2017
14:05:49

Nikita
30.11.2017
14:05:49
промис ничего не гарантирует

Сергей
30.11.2017
14:05:58

Алексей
30.11.2017
14:06:06
Промис обещает вернуть результат. Но он не гарантирует тип результата.

Aleh
30.11.2017
14:06:07
классы есть в рантайме

Nikita
30.11.2017
14:06:24

Max
30.11.2017
14:06:29
да, есть в рантайме

Сергей
30.11.2017
14:06:31

Алексей
30.11.2017
14:06:31
и null или undefined - это тоже результат

Сергей
30.11.2017
14:06:43
погугли

Google

Алексей
30.11.2017
14:06:50

Nikita
30.11.2017
14:06:52

Сергей
30.11.2017
14:06:55

Nikita
30.11.2017
14:06:59
ты к монадкам скатиться хочешь чтоль?)

Сергей
30.11.2017
14:07:03
блядь пиздец
это и есть монада

Aleh
30.11.2017
14:07:09
да, есть в рантайме
можно узнать у объекта какого он класса, для этого случая можно опустить передачу класса

Сергей
30.11.2017
14:07:15
пиздец у вас код в лапше я чувствую

Aleh
30.11.2017
14:07:38

Алексей
30.11.2017
14:08:00
а Promise<void> тебя не смущает?

Сергей
30.11.2017
14:08:01
потому что тут явно говорится, что мы ожидаем конца

Aleh
30.11.2017
14:08:23

andretshurotshka?❄️кде
30.11.2017
14:08:24

Morsik
30.11.2017
14:08:26
я б вообще использовал Optional<Optional<User> >

Александр
30.11.2017
14:08:42

Сергей
30.11.2017
14:08:43

andretshurotshka?❄️кде
30.11.2017
14:08:45
???User!!!

Morsik
30.11.2017
14:08:46
да

Google

Nikita
30.11.2017
14:08:47

Сергей
30.11.2017
14:08:51

Aleh
30.11.2017
14:08:58

Morsik
30.11.2017
14:09:01
то мб можно

Nikita
30.11.2017
14:09:09

Сергей
30.11.2017
14:09:12

Алексей
30.11.2017
14:09:14

Nikita
30.11.2017
14:09:18
flatMap == map == then в js

Сергей
30.11.2017
14:09:33
конечно ничем)
можно и null вернуть

Max
30.11.2017
14:09:45
? так в том и суть десириализации, что даже если будет у меня ошибка
мне придет объект типа StartData просто все его поля будут undefined

Сергей
30.11.2017
14:09:46
а хули нам
вообще пусть функция возвращает все время разные типы
в рандомном порядке
а мы напишем A | B | null норм же

Aleh
30.11.2017
14:10:18

Алексей
30.11.2017
14:10:29

Aleh
30.11.2017
14:10:33
ну окей, делите десериализацию на создание целевого объекта и его гидрацию

Google

Александр
30.11.2017
14:10:35

Сергей
30.11.2017
14:10:39
хули нет
функция называется getUser а возвращает Car да норм

Max
30.11.2017
14:10:47
и?
но то есть мне на null ничего не надо проверять.. вроде как) ну это ладно

Morsik
30.11.2017
14:10:52

Сергей
30.11.2017
14:10:54

Алексей
30.11.2017
14:11:00
и вообще во всяких там этих джавах null - это значение любого объектного типа

Aleh
30.11.2017
14:11:03

Nikita
30.11.2017
14:11:07
как такие типолюбы вообще на TS сидят?)

Max
30.11.2017
14:11:16
я что-то не очень

Admin
ERROR: S client not available

Aleh
30.11.2017
14:11:21
многие еще в россии живут

Nikita
30.11.2017
14:11:30
норм)

Алексей
30.11.2017
14:11:51

Сергей
30.11.2017
14:11:58
я серьезно

Max
30.11.2017
14:12:16

Сергей
30.11.2017
14:12:51
пописал несколько лет на плюсах
и прихожу в тс вижу блядь Promise<Option<Type | null>> и думаю что жсники совсем ебанулись

Max
30.11.2017
14:13:26

Google

andretshurotshka?❄️кде
30.11.2017
14:13:56
прихожу в плюсы вижу std::conditional<std::conditional<Something, etc...>>>>>>> думаю что ебанулись

Алексей
30.11.2017
14:14:04
Promise обещает вернуть результат. Результатом может быть 0, null, undefined, всё что угодно. Так что твои возмущения насчёт противоречия концепции промисов уже неверны изначально. А теперь ты расскажешь мне чем так принципиально Optional<User> отличается от User|null

Сергей
30.11.2017
14:14:19
ты видимо воспринимаешь промис как Task из шарпов
только вот забавно

Александр
30.11.2017
14:16:02

Сергей
30.11.2017
14:16:16
не находишь что две проверки это немного ебануто?

andretshurotshka?❄️кде
30.11.2017
14:17:00

Сергей
30.11.2017
14:17:19

Алексей
30.11.2017
14:17:32

andretshurotshka?❄️кде
30.11.2017
14:17:33
Еще хуже

Сергей
30.11.2017
14:17:40

Александр
30.11.2017
14:17:47
это что и как должно работать? Выглядит как говнокод

Сергей
30.11.2017
14:17:49
как мне понять где null это нормально, а где нет?

andretshurotshka?❄️кде
30.11.2017
14:18:21
Как null может быть нормальным?)

Сергей
30.11.2017
14:18:23
как это понять человеку, который не проектировал?

Алексей
30.11.2017
14:18:58
как хотите так и понимайте

Сергей
30.11.2017
14:19:11
за getUser(): Promise<User | null> нужно отрубать руки на кодревью