Александр Колс

Александр Колс

Темы
Неделя
Jun 1, 2020 → Jun 5, 2020

Архив недели @eddartdort

Понедельник


Всем привет, меня зовут Саша) Работаю над проектом quarkly.io - инструмент для интерактивной разработки react-приложений. На этой неделе будем говорить про фронтенд, стейт менеджмент, кодогенерацию, сборщики и немного про бекенд на nodejs.

Сразу хочу сказать, я очень люблю опенсорс, сам люблю что-то изобретать но больше я люблю читать чужой код Если вы хотите рассказать про свои наработки - велкам

Задумывались когда-нибудь, зачем всем свой собственный ui-kit? В каждом новом проекте свои собственные карусели, формы итд. - а разница в основном в css Интересный подход для создания переиспользуемого ui-kit’a github.com/zendeskgarden/…

В проекте мы используем как css-модули, так и CSS-in-JS SC, Emotion - проблемы с производительностью? есть интересная альтернатива: github.com/lttb/reshadow

Вторник


Всем привет) сегодня поговорим про state management. Я расскажу про свой опыт использования нескольких решений и поделюсь возможной альтернативой. Если что-то упущу или вы просто захотите поделиться - пишите)

Итак :) Redux - на моем опыте он показал себя негативно. Для того чтобы реализовывать достаточно большие проекты пришлось расширить стек до: redux+saga+lodash.fp+re-reselect. Код получается сложным, а решения есть и проще.

Mobx - первая альтернатива приходящая на ум. Все из коробки (почти все). Простой, но очень гибкий api. Порог вхождения очень низкий (по крайней мере для типичных задач). Кому-то кажется сложным под капотом. Даже если так, что лучше: сложный код или сложная библиотека?

Еще одна интересная альтернатива - github.com/artalar/reatom Недавно в Ростове был проведен доклад youtu.be/b14YQNswsTk

Последний пост на сегодня про стейт-менеджеры 🙂 github.com/zerobias/effec… обещал рассказать, но я знаю у кого получится лучше) youtube.com/watch?v=fdjc5Z…

Подытоживая тему сегодняшних постов, хотелось бы сказать, что не стоит жертвовать бизнес задачами ради разработки на более популярной концепции. В нашем проекте мы используем mobx и как результат получили большой прирост к производительности как команды, так и самого приложения.

Выбирайте инструмент под задачи) а завтра поговорим на более интересную и менее холиварную тему)

Среда


Всем привет) Сегодня поговорим про работу с AST и кодогенерацию. Это моя самая любимая тема и это как раз то, с чего появилась идея quarkly.io. Я поделюсь с вами интересными докладами, статьями и покажу несколько интересных проектов, где эти знания применяются.

Сразу отмечу, что тема значительно шире, чем я успею раскрыть. Мы поговорим про такие решения: кодмоды, babel / eslint и плагины, шаблонизаторы и диалекты языка.

Начать стоит с доклада и заодно ознакомиться с одним из прикладных применений — codemodes. youtu.be/-YZt2DW75h8

Сегодня babel используется практически каждым js разработчиком. Понять как он работает совсем не сложно - хороший доклад на тему: youtu.be/UeVq_U5obnE Официальная документация (перевод на русский): github.com/jamiebuilds/ba…

Понимание как работает AST поможет вам разрабатывать свои собственные eslint-плагины. Оф. дока: eslint.org/docs/developer… Неплохая статья: medium.com/@bjrnt/creatin…

При разработке своих кодмодов, плагинов и конвертеров мы используем astexplorer.net Инструмент позволяет интерактивно просматривать AST-дерево. Предусмотрена поддержка многих языков и диалектов, а также все популярные парсеры.

Четверг


В завершение темы про AST хочу рассказать про проект github.com/mdx-js/mdx Mdx - специальный синтаксис, в котором можно совмещать jsx и md. Интересен не только с технической, но и с практической точки зрения. Довольно удобно писать: блоги, книги и документацию.

Большинство разработчиков каждый день используют сборщики. Webpack, rollup или любой другой, но мало кто знает, как они работают. Отличный материал для изучения: github.com/makewebme/buil… Вы узнаете, как написать собственный сборщик, который будет проще чем типичный webpack-конфиг.

Пятница


Сегодня немного поговорим про backend на javascript. Как вам deno? node -> [no] <-> [de] -> deno Появляются вакансии, поддержка ide Доклад от создателя: youtube.com/watch?v=HjdJzN…

Ссылки