• Как реализовать карту?

    Решал некоторое время назад похожую задачу и использовал вот такую библиотеку https://www.react-simple-maps.io/
    Там и карта простая, и маркеры можно кастомные выводить, и географию до границ США ограничить
    Ответ написан
    2 комментария
  • Цель Redux \ Flux архитектуры?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    Чтобы разделить бизнес-логику и представление.
    Для маленьких приложений типа учебного списка дел выгода от библиотеки управления состоянием может быть не очевидна, но по мере роста количества сущностей, которыми надо управлять и которые могут влиять на самые разные части UI вместе и по отдельности, нужда в каком-то упорядоченном решении возрастает.
    В redux и правда многовато заморочек, как по мне:)
    Ответ написан
    Комментировать
  • Какие преимущества/недостатки есть у HOC (Higher-order Components)?

    maxfarseer
    @maxfarseer
    https://maxpfrontend.ru, обучаю реакту и компании
    Добрый вечер.
    Обычно HOC делаются так, что "очередность" не важна.
    Обратиться из одного HOC к другому ... укажите задачу конкретную, мне кажется тут есть более простой способ.

    Преимущества (разберем это видео[EN]):
    мы описали "функциональность" и добавили ее с легкостью двум нашим компонентам. Следовательно, как минимум два отличных преимущества получили:
    + нет дублирования кода
    + простота в добавлении "функционала"

    Другой хороший пример - "Навигационная ссылка"[RU] (подраздел так и называется - Навигационная ссылка), опять же - мы дали функционал необходимый компоненту. Если этот функционал пригодится где-то еще - мы сможем это устроить.

    Почему порядок, скорее всего не важен - потому что обычно props передаются в стиле "бери все свойства" (...this.props), где ... - spread operator.

    Подытожим:
    используя HOC вы "не изменяете" компонент, который он получает, но добавляете при этом функциональность. Разве уже не круто?)
    Ответ написан
    2 комментария
  • Как правильно сделать фильтрацию списка в Redux?

    Храните тип фильтра в store а не в state. Затем фильтруйте из общего массива по этому фильтру во время mapStateToProps (изменение фильтра - это экшн). При этом не плохо бы использовать reselect.

    function mapStateToProps(state) {
      const filter = state.something.filter
      const items = state.other.items
      return {
        items: filterItems(items, filter)
      } 
    }
    connect(mapStateToProps)(...)
    Ответ написан
    4 комментария
  • Как определить свой уровень программирования?

    index0h
    @index0h
    PHP, Golang. https://github.com/index0h
    Эти уровни - абстракция, причем зависящая от компании. Пройдите несколько собеседований и спросите, что думает о вас интервьюер.

    Юниор чаще всего - это программист с в основном теоретическими знаниями, либо наоборот только практическими знаниями. Он умеет решать более-менее стандартные задачи. Юниора обязательно надо учить. При получении нового задания он "создает" свое решение.

    Мидл - знания уже подкреплены опытом, может (в отличии от юниора) предсказывать последствия тех, или иных решений. Может решать задачи по проектированию модуля, или его части. Получив новое задание - может скомпоновать из уже существующих решений свое и реализовать его.

    Синьйор - понимает не только то зачем использовать ту, или иную технологию, а еще и как она работает, например почему при HL форин ключи сожрут io hdd. Может спроектировать и вести средний по размерам проект. Получив новое задание он уже знает как его решить кучей способов, выбор заключается только в правильности интеграции решения.

    -----------------

    Многое зависит от интервьюера.
    У меня был случай, собеседование на php senior developer: поговорили про HL оптимизации, архитектурные предложения для решения неких задач, способы оптимизации и т.д., а потом:
    - перейдем к практике: что произойдет в таком коде:
    $a = 5 + '5abc' + 'abc5';
    - произойдет следующее: я посмотрю blame скрипта и поговорю с автором этой строчки, что бы узнать, что такого хренового в жизни может произойти, что бы он позволил себе это написать.
    - ну, тут вопрос на приведение типов
    - 10, но вы в своей практике с подобным сталкивались?
    - нет
    - вот и я не сталкивался...
    Ответ написан
    1 комментарий