Конспект со встречи «Фронтенд-фелоус»

12 ноября прошла в Уфе прошла встреча «Фронтенд-фелоус». Я законспектировал и подытожил доклады, без примеров и кода.

«Гриды — панацея или нет?» Олег Мохов

Минусы флексбокса:

  • вертикально-расположенные флекс-элементы не связаны;
  • порядок элементов требует договоренностей.

Но гриды — не универсальное решение, и не везде они нужны. Это инструмент, который следует использовать:

  • когда есть именно сетка (а не только колонки), и строки в ней взаимосвязаны;
  • когда сетка может меняться под действием контента;
  • когда в сетке есть блоки шириной в несколько ячеек;
  • в админках и там, где не важна кроссбраузерность.

Гриды не работают нигде. Всё скрыто за флагами в браузерах.

Адаптивная вёрстка на гридах — плохая идея, трудно уследить за всеми состояниями. Для адаптива лучше подойдёт флексбокс.

«Компоненты высшего порядка» Александр Айбулатов

Функция высшего порядка возвращает функцию как результат. Компоненты высшего порядка работают по тем же принципам: принимают компонент как аргумент, возвращают компонент с более широкой функциональностью.

Компоненты высшего порядка помогают:

  • хранить схожее поведение разных компонентов;
  • соединять состояние приложения с компонентами;
  • преобразовывать свойства компонентов.

Библиотека Рекомпоз автоматизирует рутину, прячет сложную дичь внутрь себя, позволяя сосредоточиться на архитектуре.

При использовании компонентов высшего порядка бизнес-логику и общее поведение разных компонентов — выносим в них. Остальные компоненты оставляем глупыми и без состояний.

«Короче_» Сергей Жигалов

Мы чаще читаем код, чем пишем. Поэтому он должен быть понятным и несложным. Чем меньше сложность, тем меньше ошибок в коде. Лодаш помогает сделать код проще.

Взять чужой код в свой проект — сделать его своим кодом. Его придётся читать, чинить — с ним придётся жить. За чужой код никто не отвечает, а за Лодаш отвечают разработчики. Эта библиотека протестирована и проверена.

Лодаш помогает писать код короче, в функциональном стиле. Позволяет избавиться от костылей и хелперов, методы в ней называются по-человечески. Когда читаешь, понятно, что происходит.

В джаваскрипте много тонкостей с типами данных. Чтобы проверить свойство объекта внутри другого объекта, надо сделать кучу проверок. С Лодашем можно не задумываться об этом, библиотека прикроет.

Минус — разработчики библиотеки любят ломать обратную совместимость. Могут выпилить пару методов, изменить поведение. Обновлять мажорные версии в продуктовом проекте больно.

После доклада попробовал использовать Лодаш вместо своих решений. Понравилось — экономит время, упрощает код. Круть, короче_

Ссылки и почитать