• Правильно ли делать такой запрос в Mobx?

    Alexandroppolus
    @Alexandroppolus
    кодир
    Да, вполне нормальная практика. Только я бы убрал все проверки в getData:
    useEffect(() => {
           store.mystore.getData();
    }, [store]);
    Ответ написан
    Комментировать
  • Нормально ли это, что в режиме Strict-mode в React-приложении делается 2 запроса?

    black1277
    @black1277
    Вольный стрелок
    Реакт придерживается концепции "чистых" функций. Т.е. таких функций, которые всегда дают одинаковый, предсказуемый результат при одинаковых входных параметрах. В режиме разработки, с включенным strict-mode реакт помогает выявить непредвиденные эффекты и состояния, возникающие в результате нарушения концепции, вызывая дважды все функции, которые он считает "чистыми". Как это работает?
    Предположим, вы написали функцию, которая по сигналу "свет" - включает свет. Но если свет уже включен - функция его выключает. Вы довольны и счастливы - послали сигнал "свет" - свет включился, послали еще один сигнал "свет" - выключился. Но в режиме strict-mode - вы обнаружите, что свет не включается, потому что реакт шлет второй сигнал "свет", который выключает после первого сигнала! И опять, возникает вопрос - да зачем это нужно? А затем, что вы не можете предсказать результат действия сигнала "свет", не зная текущего состояния! Возникнет острая необходимость - включить свет, а вы не знаете - включен он сейчас или нет... Пошлете сигнал "свет", когда он включен - получите выключение.
    Примерно такие варианты поведения выявляет strict-mode.
    Ответ написан
    Комментировать
  • Как добавлять видео со своего видео-хостинга на страницу ВКонтакте?

    iiiBird
    @iiiBird
    Пока ты спишь - твой конкурент совершенствуется
    нет. так работают только одобренные самим вк видеохостинги. и нет. вряд ли вк одобрит твой личный видеохостинг.
    Ответ написан
    Комментировать
  • Как добавлять видео со своего видео-хостинга на страницу ВКонтакте?

    @Drno
    так же может только ютуб
    втавьте видео - посмотрим чего не хватает для превью
    А зачем Вам ВК? там же пустота... и нет никого
    Ответ написан
    Комментировать
  • Возможно ли аудио-связь peer-to-peer через браузер?

    gbg
    @gbg
    Любые ответы на любые вопросы
    WebRTC, но все равно нужен STUN - сервер для того, чтобы проделать дырки в NAT
    Ответ написан
    Комментировать
  • Возможно ли аудио-связь peer-to-peer через браузер?

    @okolosov
    Да, WebRTC, мы на ней делали удаленный доступ через браузер, там есть возможность созваниваться голосом прямо в процессе подключения. Можете посмотреть демо если интересно
    Ответ написан
    5 комментариев
  • Корректна ли будет такая организация Docker-контейнеров?

    ky0
    @ky0 Куратор тега Nginx
    Миллиардер, филантроп, патологический лгун
    СУБД в продакшене лучше не в докер. Ну или хотя бы реплику настройте с автофейловером.
    Ответ написан
    3 комментария
  • Корректна ли будет такая организация Docker-контейнеров?

    ddv88
    @ddv88
    Binance Futures
    PostgreSQL (10.10.10.1:5432)
    Node.js Application (10.10.10.1:3000)
    Next.js (+ Next-Auth) (10.10.10.1:8080)
    Nginx (10.10.10.1:80, 10.10.10.1:443)


    В целом ход мысли правильный.
    Все на одном адресе, если это один хост.

    Docker'ом не сильно знаком

    Так изучай. Документация УЛЬТРА подробнейшая с примерами.

    https://docs.docker.com/get-started
    https://docs.docker.com/compose
    https://hub.docker.com/search?type=image
    Ответ написан
    1 комментарий
  • Какой инструмент горячей перезагрузки компонентов лучше всего подходит для стека React + Redux и React + Mobx?

    vabka
    @vabka
    Токсичный шарпист
    Как наиболее популярный - webpack, но я видел, что многие хвалят vite за простоту и скорость, по сравнению с webpack (сам только планирую его где-нибудь применить)
    Ответ написан
    Комментировать
  • Как разработать iOS-приложение для iPhone в среде Linux?

    vabka
    @vabka
    Токсичный шарпист
    1. Как разработать приложение только для личного использования, для своих целей? В Store грузить не хочу, т.к. приложение очень специфичное

    А его и не пустят)
    Получаешь аккаунт разработчика (?), и устанавливаешь приложение как тестовое себе на устройство.
    Даже в testflight в таком случае грузить не надо.
    https://codewithchris.com/deploy-your-app-on-an-iphone/

    2. Реально ли разработать в среде Linux? У меня Ubuntu

    Разрабатывать мб можно, например на чём-нибудь кроссплатформенном типа react native или flutter, но для сборки пакета всё равно понадобится xcode.

    3. Возможно ли портировать обычное "React Web" приложение в iOS с помощью специальных инструментов?

    Да, если найдёте и сможете настроить те самые "специальные инструменты". Для этого, например, есть Cordova
    Ответ написан
    1 комментарий
  • Как преодолевается потеря мотивации в ИТ?

    @res2001
    Developer, ex-admin
    Отдых, спорт, общение. В общем все стандартно - переключайтесь на другие занятия, которые приносят положительные эмоции. Со временем выгорание проходит и снова хочется куда-нибудь углубиться :-)
    Ответ написан
    Комментировать
  • Как преодолевается потеря мотивации в ИТ?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Я просто взрослый, поэтому делаю то, что нужно делать, независимо от того, хочется ли мне этого.
    Ответ написан
    5 комментариев
  • Какую современную систему стейт-менеджмента лучше выбрать для React-проекта с "нуля"?

    Alexandroppolus
    @Alexandroppolus
    кодир
    Проголосую за MobX. Из того, что пробовал, это самая удобная штука. Код получается простой, без всяких ФП-шных мозговывертов
    Ответ написан
    Комментировать
  • Какую современную систему стейт-менеджмента лучше выбрать для React-проекта с "нуля"?

    @andrew_progs
    Тоже голосую за mobx - очень быстрый старт на начальном уровне и большие возможности если копнуть поглубже. Подходит как для мелких, так и для крупных проектов, можно сделать как один глобальный стейт, так и несколько небольших с или без взаимодействия между собой. Код получается таким как вы сделаете, mobx почти не накладывает свои ограничения как в случае с библиотеками, реализующими flux. Плюс оптимизация можно сказать из коробки. Очень советую, во всех своих проектах использую только mobx и не собираюсь ближайшее время никуда переходить. Правда пользовался до этого только Redux и Apollo
    Ответ написан
    Комментировать
  • Какую современную систему стейт-менеджмента лучше выбрать для React-проекта с "нуля"?

    Все сильно зависит от специфики вашего проекта, но по своему опыту могу сказать, что ФП хранилища в проекте с бизнес-логикой - зачастую хуже, чем ООП варианты.
    В своих проектах обычно использую стек из Mobx + tsyringe(DI). С недавних пор добавил в эту схему React-Query. Иногда бывает полезно использовать MST, если ваша бизнес логика требует каких-то сложных моделей данных с собственной логикой, а так же сложной связи между ними. В частности, MST дает немного больше возможностей для проектирования моделей данных, нежели обычные классы с Mobx.
    Поясню за ответственности:
    1. Mobx - отвечает именно за бизнес-логику frontend приложения. Не надо туда пихать геттеры данных с бэкенда, которые нужно просто визуализировать, для это есть React-Query. Поскольку Mobx базируется в первую очередь на классах, для работы с ним мы можем применять ООП и соответствующие паттерны, выстраивая интересно логику из хранилищ и сервисов прямо на frontend. Для лучшего понимания как это правильно варить, рекомендую глянуть на backend.
    2. React-Query - у них на сайте прекрасно описано, зачем они нужны, и этот инструмент в любом случае призван дополнять типичные хранилища состояний, будь то хоть Mobx, хоть Redux, хоть еще что-либо, рекомендую почитать. Отличный инструмент для работы с состоянием приложение в случае тех данных, которые просто нужно взять с бэка и отобразить.
    3. Tsyringe - для меня проверенный и неплохой инструмент для работы с DI на фронте. Это гораздо лучше, чем пробрасывать хранилища внутрь других хранилищ через конструкторы или через глобальные переменные. Аналогично с подключением в эту схему сервисов. Сразу скажу, что есть риск запутаться в конфигурациях сборщика, если используете CRA, ибо и Mobx, и Tsyringe используют в своей основе декораторы, а babel их переваривает с переменным успехом, но если разобраться, настроить можно)

    Опять таки, адепты Redux и ФП могут сказать, что я просто не умею готовить Redux. Действительно, не умею. Несколько раз пытался трогать Redux, но он не нравился ни до того, как узнал про Mobx, ни после. Верю, что разрабатывать на нем можно. Но и ухо можно чесать левой рукой через затылок. Чтобы Redux был производительным и эффективным, нужно понимать как устроены данные и как работает его реактивность. Он может неплохо подойти для менеджмента состояния каких-то простых моделей данных, например, форм. Но зачем нам центральное хранилище для форм?
    Mobx в этом плане сильно проще и при хорошей архитектуре проекта и самого приложения, джуниоры редко могут там что-то вытворить своеобразное, да и производительность там поломать куда сложнее. В общем, Mobx банально удобнее и проще, но при этом не только не ограничивает разработчиков в возможности создавать сложные и элегантные решения, а только помогает в этом.

    Вот такие мысли, надеюсь поможет)
    Ответ написан
    Комментировать
  • Как быть, если приходишь в проект, а там - всё печально?

    alexgp13
    @alexgp13
    Руководитель ИТ-проектов
    Для бизнеса в проектах важны две вещи - экономическая эффективность и решение в кратчайшие сроки конкретной проблемы (что, в общем то, тоже дает экономический эффект). Далеко не всегда нужно делать долго, но правильно, когда костыль дает нужный результат сейчас и не влияет на стабильность общей системы.

    Если хочется писать идеальный код - нужно идти в opensource, где не платят деньги и можно работать в свое удовольствие, но с точки зрения бизнеса сотрудник, вылизывающий до идеала решение, стоит слишком дорого. Итог - идеальных проектов просто не существует.
    Ответ написан
    Комментировать
  • Как быть, если приходишь в проект, а там - всё печально?

    tundramani
    @tundramani
    пока работай где печально
    ищи работу где весело
    Ответ написан
    Комментировать
  • Как быть, если приходишь в проект, а там - всё печально?

    nava2002
    @nava2002
    Инженер
    ДЕНЬГИ !
    Могу копать. Могу НЕ копать.

    Хочет человек "какать стоя" - пусть платит.
    За ваши деньги любой каприз.
    Как правило так выглядят дохлые проекты.
    Я свое мнение - сказал. Надо оно им, Не надо, это меня не касается .
    МНЕ - маленькие деньги СЕЙЧАС.
    ВАМ - бешеная прибыль ПОСЛЕ успеха ВАШЕГО проекта.
    Ответ написан
    2 комментария
  • Как git-репозиторий сбросить до N-го коммита?

    toxa82
    @toxa82
    Нет, нужно сбросить локальный через git reset --hard hash_commit, и потом запушить это в bare git push -f. Но не рекомендуется править коммиты которые были отправлены в ориджин. Остальным людям которые работают с вами придётся делать git fetch && git reset --hard origin/branch_name и если кто-то не сделает этого то при пуше он вернёт те коммиты которые вы удалили, но локально они у него остались.
    Ответ написан
    4 комментария