Использовали ли preact-compat для подключения библиотек, написаных под react (зависящих от него)?
Если да, были ли конфликты пространств имен (например глобального JSX), а если нет, то как обходились? Без готовых react-библиотек?
И как делаете unit-тестирование компонентов? Enzyme же не работает с preact. Может пробовали preact-compat-enzyme?
Чтобы линтер ругался в случае, который описал knotri в первом комментарии. Когда в JSDoc указан тип, например — это избыточно и может породжать ошибки в дальнейшем.
Пользуетесь линтингом JSDoc комментариев? Конкретно интересуют правила, которые позволяют избегать дублирования конструкций языка: типов, модификаторов доступа и т.д.
В школы Яндекса идут в том числе люди с опытом работы: систематизировать знания, изучить смежные области, другие инструменты. Школа это также возможность показать себя на длинной дистанции для трудоустройства в Яндекс.
create-react-app предоставляет необходимый минимум для работоспособного приложения. Этого минимума достаточно для решения текущей задачи пользователя — вывести фильтруемую и сортируемую таблицу. Остальное, например, роутинг (react-router), централизованное хранение данных (redux), библиотеку с набором готовых компонент интерфейса — подключается по мере развития приложения и/или роста знаний разработчика.
Это отличный стартовый шаблон для изучения React или начала разработки нового приложения.
Как оно в действительности писать на Javascript в 2016 году.
Хэй, мне нужно создать страницу, которая показывает последнюю активность пользователей, так что мне надо получать данные с REST-сервиса и отображать в некой сортируемой и фильтруемой таблице, и обновлять её, если что-нибудь поменялось на сервере. Я думаю использовать jQuery для получения и отображения данных.
— Конечно, ты можешь по прежнему использовать jQuery. Но если ты планируешь сделать что-нибудь более сложное на фронтенде ты, вероятно, должен попробовать React. Это даст большие преимущества в дальнейшем.
— Звучит круто. Как мне лучше начать разработку с React?
— Самый простой путь: запустить npm install create-react-app -g в своем терминале и можешь начинать проект сразу после этого.
— Круто, ты так говоришь, будто не нужно никаких дополнительных настроек?
— Нет.
— Мне нужно установить специальные IDE, такие как Visual Studio, Android Studio, или XCode?
— Нет, просто создай свое приложение командой create-react-app my-cool-app и ты готов к пути.
— А что насчет дополнительных зависимостей? Может мне нужно установить Java на мою машину? Может мне также нужны Maven, Gradle, CocoaPods, или может быть мне нужно скачать дополнительно 20-гигабайтный SDK?
— Нет, просто выполни cd в папку со своим проектом и запусти npm start. Это всё.
— Мне нужно собирать своё приложение и ждать долгой пересборки после каждого изменения?
— Нет. Если ты сделаешь изменения, страница автоматически обновится. Если ты изменишь CSS — это будет живая перезагрузка, без обновления страницы.
— Звучит очень полезно! Я думаю так я смогу немного увеличить скорость процесса разработки. Но подожди, что делать, если мне когда-нибудь понадобится развернуть production версию моего сайта? Потому-что никто в действительности не развертывает неминифицированные версии index.html, app.css, main.js в production, правильно?
— Да, ты прав. Если тебе нужно развернуть production сборку своего сайта просто запусти npm run build и всё что тебе нужно бедут в папке /build. Миниицированное, оптимизированное и готовое к развертыванию.
Рассматривали ли TypeScript в качестве основного языка? Насколько я знаю он используется в HH. Или даже Flow? И если да, почему остановились на ES2015?
Если ограничится только таким функционалом, как todo list — то использование React/Redux — это overkill. Однако, на таких небольших примерах показывается архитектура масштабируемых и поддерживаемых приложений.
Использовали ли
preact-compat
для подключения библиотек, написаных подreact
(зависящих от него)?Если да, были ли конфликты пространств имен (например глобального JSX), а если нет, то как обходились? Без готовых
react
-библиотек?И как делаете unit-тестирование компонентов? Enzyme же не работает с
preact
. Может пробовалиpreact-compat-enzyme
?Чтобы линтер ругался в случае, который описал knotri в первом комментарии. Когда в JSDoc указан тип, например — это избыточно и может породжать ошибки в дальнейшем.
Пользуетесь линтингом JSDoc комментариев? Конкретно интересуют правила, которые позволяют избегать дублирования конструкций языка: типов, модификаторов доступа и т.д.
В школы Яндекса идут в том числе люди с опытом работы: систематизировать знания, изучить смежные области, другие инструменты. Школа это также возможность показать себя на длинной дистанции для трудоустройства в Яндекс.
create-react-app
предоставляет необходимый минимум для работоспособного приложения. Этого минимума достаточно для решения текущей задачи пользователя — вывести фильтруемую и сортируемую таблицу. Остальное, например, роутинг (react-router
), централизованное хранение данных (redux
), библиотеку с набором готовых компонент интерфейса — подключается по мере развития приложения и/или роста знаний разработчика.Это отличный стартовый шаблон для изучения React или начала разработки нового приложения.
Посмотрите https://github.com/facebookincubator/create-react-app
Также есть простой способ сделать из вашего приложения Progressive Web App, с возможностью установки в смартфон, для работы без подключения к интернету https://github.com/jeffposnick/create-react-pwa/compare/starting-point...pwa
Как оно в действительности писать на Javascript в 2016 году.
— Конечно, ты можешь по прежнему использовать jQuery. Но если ты планируешь сделать что-нибудь более сложное на фронтенде ты, вероятно, должен попробовать React. Это даст большие преимущества в дальнейшем.
— Звучит круто. Как мне лучше начать разработку с React?
— Самый простой путь: запустить
npm install create-react-app -g
в своем терминале и можешь начинать проект сразу после этого.— Круто, ты так говоришь, будто не нужно никаких дополнительных настроек?
— Нет.
— Мне нужно установить специальные IDE, такие как Visual Studio, Android Studio, или XCode?
— Нет, просто создай свое приложение командой
create-react-app my-cool-app
и ты готов к пути.— А что насчет дополнительных зависимостей? Может мне нужно установить Java на мою машину? Может мне также нужны Maven, Gradle, CocoaPods, или может быть мне нужно скачать дополнительно 20-гигабайтный SDK?
— Нет, просто выполни
cd
в папку со своим проектом и запустиnpm start
. Это всё.— Мне нужно собирать своё приложение и ждать долгой пересборки после каждого изменения?
— Нет. Если ты сделаешь изменения, страница автоматически обновится. Если ты изменишь CSS — это будет живая перезагрузка, без обновления страницы.
— Звучит очень полезно! Я думаю так я смогу немного увеличить скорость процесса разработки. Но подожди, что делать, если мне когда-нибудь понадобится развернуть production версию моего сайта? Потому-что никто в действительности не развертывает неминифицированные версии index.html, app.css, main.js в production, правильно?
— Да, ты прав. Если тебе нужно развернуть production сборку своего сайта просто запусти
npm run build
и всё что тебе нужно бедут в папке/build
. Миниицированное, оптимизированное и готовое к развертыванию.— Спасибо приятель, очень полезно.
https://medium.com/@kitze/how-it-actually-feels-to-write-javascript-in-2016-46b5dda17bb5#.wvne8zb17
А HH.ru я перепутал с tutu.ru :) напридумывали созвучных названий