🔥

Тред (Дэн Абрамов)

Привет! Меня зовут @dan_abramov. Я веду @jsunderhood на этой неделе.

Люди часто думают, что меня зовут Денис. Но я Даниил. Денис — это совсем не я.

Я активно участвую в жизни англоязычного React сообщества. В русскоязычной части индустрии я почти никого не знаю, так что будем знакомы!

На этой неделе я готовлюсь к выступлению на React Europe. Буду рассказывать, как React позволяет писать приложения, не нажимая F5.

До React я какое-то время жил с Backbone/jQuery. До этого делал нативное приложение для iPad на Xamarin iOS. До этого писал под Windows.

В детстве я мечтал собрать радио. Я нарисовал схему и купил детали в «Чип и Дип». Даже паяльник и канифоль купил. Но руки не дошли.

Я пока план тем не составлял, но сегодня пойду стричься и составлю. О чем вы хотите поговорить?

В более практичных вопросах здесь очень хорошая подборка: github.com/enaqx/awesome-… @anton_davydov

I say with confidence as a former UIKit author: React's model for the UI layer is vastly better than UIKit's. React Native is a huge deal.
Но пока он не растворился, даже авторы UIKit из iOS считают, что это не пустой хайп: twitter.com/andy_matuschak… @astralian

Есть и более экспериментально-интересные вещи, типа Cycle.js. Но React лидирует в категории «прагматичная инновация». @astralian

Поэтому даже когда я пишу тесты, я пишу их не для компонентов, а для того, что ими управляет. @roman01la

Если надо тестировать компонент, для меня это знак, что из него надо что-то вынести. @roman01la

Новички часто не понимают, чем силен React. Он силен констрейнтами, которые он налагает. Похожая сила есть в ФП. @astralian

Например у тебя может быть объект MaskedInputValue, который имеет acceptChar(char, position) и onChange. @roman01la

Ты можешь в нем описать логику, как маска себя ведет, а компонентом тупо рендерить текущее значение. Тогда логику легко тестить @roman01la

React wouldn't be React without: (1) render() is idempotent, (2) setState is the only way to re-render, (3) components all the way down.
Я немножко про это твитил здесь: twitter.com/dan_abramov/st… @astralian