
Котяй Негодяй
28.12.2016
07:23:48
Тайпчекинг, как и тесты, — на прекоммит.

Alexander
28.12.2016
07:25:14

Aleksey
28.12.2016
07:29:37

Google

Aleksey
28.12.2016
07:30:03
Важно чтобы они были :)

Alexander
28.12.2016
07:30:52

Aleksey
28.12.2016
07:31:07
(^ Это шутка, не стоит на это отвечать)
Еще про flow. У меня есть динамический и в то же время асинхронный DI. Так вот flow позволяет описать все это дело и пролинковать как надо.

Nikita
28.12.2016
07:38:42
Имхо смысл статической типизации в том что она есть в рантайме, если ее там нет то пользы от нее только автодополнение

Vladimir
28.12.2016
07:44:20

Котяй Негодяй
28.12.2016
07:45:19

Nikita
28.12.2016
07:45:26
А что без di без ts не существует ?

Котяй Негодяй
28.12.2016
07:45:59
Статика может рассчитываться при написании кода. В рантайм уже не попадёт ошибка.

Vladimir
28.12.2016
07:46:17

Alexander
28.12.2016
07:46:55

Vladimir
28.12.2016
07:47:00
Можно хоть по имени DI делать, но это ж попахивает

Google

Alexander
28.12.2016
07:47:15
Она же чекается при билде

Котяй Негодяй
28.12.2016
07:47:32

Alexander
28.12.2016
07:48:05
Ну т.е. если даже взять большие языки типа c++. Мб я туплю, конечно, поправьте если так

Nikita
28.12.2016
07:48:09

Дмитрий
28.12.2016
07:48:38
Вот без интерфейсов фигово, кстати
Единственное, что я бы точно взял из ts/flow)

Nikita
28.12.2016
07:52:37
Почему защитники статический типизации хотят натянуть ООП а именно ООП наследование и интерфейсы на язык с прототипным наследование ? имхо в js и так хорошо, вот только ввели сахар на наследовании через класс и людей как переклинило

Alexander
28.12.2016
07:53:29
Дал бог класс, даст и интерфейс
Но вообще тебя с ножом у горла их не заставляют использовать )

Nikita
28.12.2016
07:54:41
Из того что мне не нравится в js это детские болячки на сравнение и приведении типов при этом

localvoid
28.12.2016
07:54:59
Почему говнокодеры так любят извращаться с прототипным наследованием, а потом плачут о том что у них всё тормозит?

Nikita
28.12.2016
07:55:22

Alexander
28.12.2016
07:56:14
Смысл в том, что когда у тебя есть классы и типы с интерфейсами становится гораздо проще жить

Nikita
28.12.2016
07:56:43

Alexander
28.12.2016
07:56:50

localvoid
28.12.2016
08:06:03

Mark
28.12.2016
08:33:43
Есть кто-то, кто шарит ассемблр?

Артур
28.12.2016
08:35:56
В личку скину сейчас чат
Ребята, привет. RactJS спецы миддл нужны.
Спрашиваю заранее за месяц.
Потому как через месяц нужно будет вписаться в разработку с миддлом, который сейчас основу делает.
В CRM клиента переходим с чистого js на React.
Обязательна коммуникабельность, т.к. позже, вероятно привлечем еще пару миддлов.
Синьоры тоже пойдут, но сравнивать не с чем, поэтому определить крут или нет не смогу, следовательно, буду выбирать ооочень осторожно. И возможно даже не выберу. Понимаю, что глупо звучит, но переплачивать за то, что человек просто назвался синьором, я не готов
Джуниоры не нужны, тормозить работу будут.
В личку кидайте: цену часа, самую крутую (по вашему мнению вашу работу), можно рассказать про тех часть и там кодом похвастаться (если впаблик продакшне не посмотреть)

Nikolay
28.12.2016
08:37:10

Google

Nikolay
28.12.2016
08:37:44
Ну типа compose например как будет выглядеть во флоу-нотации

Дмитрий
28.12.2016
08:38:11
Точнее можно, но немного с костылями
Потому что compose ещё на один уровень выше чем просто функция высшего порядка (если упрощённо), там нужен variadic kinds
Потому что в compose неограниченное количество принимаемых функций. А просто описать, что функция возвращает возвращаемый тип передаваемой функции (дженерик) можно

Nikolay
28.12.2016
08:42:03
Ну, уже хорошо :)

Дмитрий
28.12.2016
08:42:41
Ну такое кажется только хаскель из известных языков и умеет
Так что это вообще нормально)

Eugene
28.12.2016
11:43:38
Подскажите плз, у меня компоненты разбиты по папкам, в которых лежат файлы index.jsx, стили.
Вопрос заключается в том, чтобы импортить их без указывания в пути "index.jsx".
import List from './components/List' вместо import List from './components/List/index.jsx'
Я где-то читал, что это можно настроить в webpack, мб кто-то сталкивался?

code4aman
28.12.2016
11:44:38
Resolve alias
Посоветуйте дейтпикер, желательно без моментджс

Dmitry
28.12.2016
11:46:47
https://github.com/airbnb/react-dates , но с моментом

Aleh
28.12.2016
11:49:27
А интерфейсы не нужны, да

Savo
28.12.2016
11:51:18
Подскажите самую удобный и простой способ валидации форм на реакте?

Vladimir
28.12.2016
11:54:18

Aleh
28.12.2016
11:54:47
Пока в ts нет номинальных типов, нет никакого смысла использовать интерфейсы. Да ещё это в js зарезервированное слово

Vitaly
28.12.2016
11:57:30

Google

Vladimir
28.12.2016
11:58:59

Aleh
28.12.2016
11:59:51
Зачем в этой связке интерфейсы? Есть типы, более продуманная в ts и flow конструкцич

Vladimir
28.12.2016
12:00:19
Блядь. Ну как так-то

Aleh
28.12.2016
12:00:49
У тебя получится)

Vladimir
28.12.2016
12:00:52
Ты вообще понимаешь, для чего делабт интерфейсы? Какие нахер типы

Aleh
28.12.2016
12:01:38

Vladimir
28.12.2016
12:02:06
Давай по-другому. Ты когда-то писал код и архитектуру на чем-то кроме js?

Admin
ERROR: S client not available

Aleh
28.12.2016
12:03:19
const c = new C (mockWithBMethod);
c.doSmth ();
expect (mockWithBMethod.b ).to.have.been.calledWith (contract)

Vladimir
28.12.2016
12:04:05
Так, хорошо. Для чего в джавке интерфейсы?

Aleh
28.12.2016
12:04:07
Ну с хаскелем немного балкюсь

Vladimir
28.12.2016
12:07:22
Так, замечательно.
Что не так в случае, если мы используем тот же подход для того, чтобы абстрагироваться от объекта, который к нам пришел?

Aleh
28.12.2016
12:08:05
И не заигрывает со спекой es

Eugene
28.12.2016
12:09:38

Dreamerinnoise
28.12.2016
12:11:02

Aleh
28.12.2016
12:11:19

Google

Aleh
28.12.2016
12:11:33
Введут в js interface и быть беде

Vladimir
28.12.2016
12:11:40

Aleh
28.12.2016
12:11:57

JiSeven
28.12.2016
12:12:17
А как можно протестить this.someMethod = _.debounce(this.someMethod, 300) в Jest? Чет не пойму

Dreamerinnoise
28.12.2016
12:12:22

Aleh
28.12.2016
12:13:34

Artem
28.12.2016
12:13:58

Aleh
28.12.2016
12:14:39

Vladimir
28.12.2016
12:15:58
Я вот сейчас не полностью уверен, но давай так:
Есть интерфейс a, в нем три метода. Есть тип б, в нем те же три метода.
Экстендим интерфейс а:
Пути:
1) дописываем метод в интерфейс, получаем кучу ошибок ввиду того, что везде, где он имплементируется, не реализован новый метод.
2) создаем новый интерфейс, который экстендит уже существующий, используем его там, где надо.
Твои пути решения проблемы с type?

Aleh
28.12.2016
12:16:39
Type B = A & Smth

Vladimir
28.12.2016
12:18:10
Не кажется ли второй вариант пидорством ?:)

Aleh
28.12.2016
12:18:44
implements тоже не обязательная штука
Если соблюдается контракт+интерфейс, то берем

Vladimir
28.12.2016
12:19:09
Не обязательная, но код не только ты смотиришь

MVP
28.12.2016
12:19:09
поясните базовую вещь - если тут пишут - https://github.com/uberVU/react-guide/blob/master/props-vs-state.md что PROP компонет сам себе менять не может

Aleh
28.12.2016
12:19:12
Что такое второе я не понял
Find usages

Vladimir
28.12.2016
12:19:27
Объект твоего типа

MVP
28.12.2016
12:19:28
то почему мы с редуксом делаем mapStateToProps