
Дмитрий
27.12.2016
19:10:46
А что с ts щас не так?
Нужно ждать, пока новые фичи js заимплементят нормально. Типичной ситуацией является, когда проект собирается через TS -> ES6 -> babel -> ES5
Фактически у меня ts просто под капотом, так как всё типизируется с помощью ts-server и types/typings

Евгений
27.12.2016
19:11:33

Дмитрий
27.12.2016
19:11:33
Как как то проще жить))

Google

Илья
27.12.2016
19:13:47

Adel
27.12.2016
19:22:29


Дмитрий
27.12.2016
19:27:16
ts-server обобщает и типизирует js код в проекте
Добавили в ts mapped types? В проекте появились обобщения типов раньше, чем я залез в changelog typescript)

Adel
27.12.2016
19:34:16
Палка давно есть, если ты про неё

Дмитрий
27.12.2016
19:35:05
Что за палка?))
mapped types это mapped types

Adel
27.12.2016
19:37:48
String | number

Google

Adel
27.12.2016
19:38:15
А ты видимо про другое, щас гляну
Не, такое мы не использовали ещё

Дмитрий
27.12.2016
19:39:43
mapped types это { [ number ] : boolean }, обобщение короче

Adel
27.12.2016
19:39:46
Жесть какая, наверное писать удобно читать не очень

Дмитрий
27.12.2016
19:40:13
Да ну)

Adel
27.12.2016
19:40:39
Тебя сколько человек на проекте?))

Дмитрий
27.12.2016
19:41:15

Adel
27.12.2016
19:41:39
))

Aleh
27.12.2016
19:41:50

Дмитрий
27.12.2016
19:42:09
Ну я типа пример написал

Aleh
27.12.2016
19:42:23

Adel
27.12.2016
19:43:09
Хотя смотря что ты имел в виду))

Aleh
27.12.2016
19:44:07
Да, но мы же высокомерные ублюдки)
если везде вместо имен предметной области пихать название ОО-патернов или там монад или фп-паттернов. Или вот вместо имен типов из предметной области пихать имена фич системы типов, то будет так себе)

Adel
27.12.2016
19:44:23
Или часть его ключей

Aleh
27.12.2016
19:44:47
или обертка над типом этого поля

Adel
27.12.2016
19:44:59
Ненене
Да?

Google

Дмитрий
27.12.2016
19:45:10
Что значит нет ?

Adel
27.12.2016
19:45:13
Я не понял значит

Aleh
27.12.2016
19:45:36
type Mock<T> = { [K in keyof T]: MockFunc<T[K]> }
и например const dogMock: Mock<Dog>

Adel
27.12.2016
19:46:24
Это какой-то финт структурной типизации, получается?

Aleh
27.12.2016
19:46:26
у метода bark кроме вызова добавятся всякие штуки из sinon(это псевдокод, так что не ругайте)

Vladimir
27.12.2016
19:46:43
котейки
раз вы тут про типы загнались
расскажите мне как написать сигнатуру пайпа на флоу и тс
https://twitter.com/iamstarkov/status/809894523488890880

Aleh
27.12.2016
19:47:38
ну, проблема в неопределенном числе аргументов

Vladimir
27.12.2016
19:48:09
почему?

Aleh
27.12.2016
19:48:28
почему?
https://github.com/Microsoft/TypeScript/issues/5453

Vladimir
27.12.2016
19:49:45
какой красивый карри
function curry(f, ...a) {
return (...b) => f(...a, ...b);
}

Дмитрий
27.12.2016
19:50:38

Vladimir
27.12.2016
19:50:56
в обоих нельзя?

Denis
27.12.2016
19:53:00

Google

Дмитрий
27.12.2016
19:53:59
https://github.com/facebook/flow/issues/1251

Vladimir
27.12.2016
20:02:04

Aleksey
28.12.2016
07:02:28
Ребят, кто здесь угорает по flow?

Alexander
28.12.2016
07:03:24
откуда такая любофф к flow / ts?

Aleksey
28.12.2016
07:03:51
Мне нужно задекларировать тип объекта, да так, чтобы свойства были не всегда обязательными. Такое возможно?

Andrew
28.12.2016
07:04:34
да. Через символ foobar?: string

Alexander
28.12.2016
07:04:56

Aleksey
28.12.2016
07:05:12

Admin
ERROR: S client not available

Aleksey
28.12.2016
07:07:44

Andrew
28.12.2016
07:08:39
Друзья, что вы используете в своих проектах typescript или flow? И используете ли? То почему?
Не использую – 62
??????? 65%
TypeScript – 19
?? 20%
Flow – 15
?? 16%
? 96 people voted so far.

Alexander
28.12.2016
07:11:36

Aleksey
28.12.2016
07:12:00

Alexander
28.12.2016
07:12:19
и она в том числе...

Aleksey
28.12.2016
07:12:44
Не, ну странный вопрос. Если ты не видишь необходимости значит он тебе не нужен.

Alexander
28.12.2016
07:12:51
Пытаюсь понять что я получу внедрив его в проект, и чего не получу. Что получу не внедрив и тд

Aleksey
28.12.2016
07:13:19
У нас свободная страна, никто не принуждает. Каким редактором пользуешься?
Проще поддерживать код, быстрее пишешь код. Автодополнение, меньше ошибок, логика прозрачна потому что знаешь что ожидать.

Alexander
28.12.2016
07:13:51

Google

Aleksey
28.12.2016
07:14:57
У меня есть SDK которое я не вижу, я знаю что наружу торчат методы, я пишу свою обертку над SDK в котором описываю что методы получают и что возвращают. Flow – это некая защита от ошибок + документация + дополнение.
В общем, делает твой код более строгим и прозрачным для остальных ребят. Комментарии в коде вообще не пишу, они не нужны когда появляется flow.

Ilya
28.12.2016
07:16:08
Обычно флоу или тайпскрипт юзают когда не знают кто дальше будет этим пользоваться.

Alexander
28.12.2016
07:17:06

Aleksey
28.12.2016
07:17:16
У меня достаточно нетривиальная задача, и после внедрения flow мне стало легче решать архитектурные задачи (вот даже так...).

Ilya
28.12.2016
07:17:59

Alexander
28.12.2016
07:18:00

Aleksey
28.12.2016
07:18:13
Но это самый простой пример. Сам flow это простая штука, но когда ты ее используешь везде – жить становится легче.

Vladimir
28.12.2016
07:19:57

Aleksey
28.12.2016
07:20:12

Alexander
28.12.2016
07:20:14

Vladimir
28.12.2016
07:20:50

Aleksey
28.12.2016
07:21:05
То есть ты не видишь для себя причин внедрения, ок. Возможно для тебя весомым плюсом будет автодополнение.

Котяй Негодяй
28.12.2016
07:21:24

Aleksey
28.12.2016
07:21:27
Тесты могут проходить по коду, но по логике они могут ломаться :)

Котяй Негодяй
28.12.2016
07:22:04
Суть в том, что много ошибок будет предотвращено ещё до запуска кода или тестов.

Alexander
28.12.2016
07:23:03
Сразу в редакторе и будет )
Опечатался в свойстве — подсветилось

Котяй Негодяй
28.12.2016
07:23:21
+