Связи между проектами всегда в актуальном состоянии без лишних тех.задач или процессов.
Одним коммитом можно внести изменения во все проекты и поревьювить разом.
Проекты зависят по коду. Не нужно выпускать пакеты, держать пакетный менеджер.
Нельзя сказать, что для обслуживания монорепы совсем не нужен туллинг. Конечно, нужен. Вот хотя бы разграничить доступ и владение проектами, организовать селективную сборку. Проблемы, которые не пришлось бы решать не будь монорепы.
Для больших компаний, где счёт идёт на тысячи разработчиков/проектов, монорепы выгоднее: дешевле обслуживать, быстрее внедряются общие изменения.
Вообще-то у console.log есть и преимущества перед debugger:
Остаётся история вызовов. Я вижу, как менялось состояние. С дебаггером приходится вспоминать, что было, в каком порядке и сколько раз.
Не останавливает выполнение кода на каждом вызове, а просто пишет на экран. Для ряда кейсов так банально быстрее получается.
Как следствие из п.2 не портит тайминги. Например, с дебаггером может случиться нежелательный тайм-аут, reject промиса, потому что код остановился, а часики-то тикают :-)
А ещё есть ситуации, когда дебаггер невозможно включить. Например, в вебвью сторонних приложений или на удалённом iOS устройстве. Тогда и, прошу прощения, alert может пригодиться. :-D
Все познается в сравнении.
Уже много лет покупаю технику на Яндекс Маркете. Без страха беру по минимальной цене.
Гугл по запросу "iphone xr 128gb" выдает галерею товаров, среди которых не мало предложений за 30-38 тыс. руб. Ведут они на сайты, торгующие подделками, выдавая за оригинал.
Поэтому не могу сказать, что Яндекс думает только о прибыли в ущерб счастью пользователей.
Обращайте внимание тех, с кем вы работаете, на то, как важно писать код, который легко поддерживать, на то, как важны хорошие комментарии.
На самом деле, у хороших программистов не возникает нужды в документировании кода. Это — пустая трата времени, того времени, которое лучше было бы потратить на программирование и на проведение совещаний.
Имхо, если проект еще не ушел в тяжелое легаси, лучше разрюхать react new context api и react hooks, а не городить очередной костыль для redux.
А еще рекомендую использовать typescript.
vintage прав. Если бы это было не так, вы бы наблюдали побочные эффекты, такие как: потеря фокуса, положения курсора ввода, сброс выделения контента, положения прокрутки внутри элементов и т.п.
Поясню свой пример. Вы хотите, чтобы X использовал либо A, либо B. А я предлагаю инверсию зависимостей: A и B конфигурируют X. По сути получаете тот же результат: подключаете скрипт X и либо A, либо B.
См. скриншот в статье. Простые, средние, тяжелые: 227, 488, 290.
А можно просто использовать $mol
Плюсы монорепы:
Связи между проектами всегда в актуальном состоянии без лишних тех.задач или процессов.
Одним коммитом можно внести изменения во все проекты и поревьювить разом.
Проекты зависят по коду. Не нужно выпускать пакеты, держать пакетный менеджер.
Нельзя сказать, что для обслуживания монорепы совсем не нужен туллинг. Конечно, нужен. Вот хотя бы разграничить доступ и владение проектами, организовать селективную сборку. Проблемы, которые не пришлось бы решать не будь монорепы.
Для больших компаний, где счёт идёт на тысячи разработчиков/проектов, монорепы выгоднее: дешевле обслуживать, быстрее внедряются общие изменения.
Не меньше 15 лет уже.
Привет из 2023! :-) Как идут дела? Как пережили все кризисы?
https://cloud.yandex.ru/docs/serverless-containers/
Не смотрели на Yandex Serverless Containers? Возможно, ваши сервисы получится даже бесплатно захостить.
Вообще-то у console.log есть и преимущества перед debugger:
Остаётся история вызовов. Я вижу, как менялось состояние. С дебаггером приходится вспоминать, что было, в каком порядке и сколько раз.
Не останавливает выполнение кода на каждом вызове, а просто пишет на экран. Для ряда кейсов так банально быстрее получается.
Как следствие из п.2 не портит тайминги. Например, с дебаггером может случиться нежелательный тайм-аут, reject промиса, потому что код остановился, а часики-то тикают :-)
А ещё есть ситуации, когда дебаггер невозможно включить. Например, в вебвью сторонних приложений или на удалённом iOS устройстве. Тогда и, прошу прощения, alert может пригодиться. :-D
(комментарий удален)
Коллизий боитесь? Можно пихать в WeakMap вместо реквеста, либо в реквест по ключу Symbol.
Вы прям специально зарегались на Хабре через 30 мин после публикации, чтобы написать этот коммент?
Конечно, ведь вы ангажированный пользователь ;-)
Яндекс уже сделал
https://yandex.ru/web-maps/covid19
Все познается в сравнении.
Уже много лет покупаю технику на Яндекс Маркете. Без страха беру по минимальной цене.
Гугл по запросу "iphone xr 128gb" выдает галерею товаров, среди которых не мало предложений за 30-38 тыс. руб. Ведут они на сайты, торгующие подделками, выдавая за оригинал.
Поэтому не могу сказать, что Яндекс думает только о прибыли в ущерб счастью пользователей.
Имхо, если проект еще не ушел в тяжелое легаси, лучше разрюхать react new context api и react hooks, а не городить очередной костыль для redux.
А еще рекомендую использовать typescript.
Но и вы не правы — перерисовывать все Реакт тоже не будет, иначе это приведет к побочным эффектам, о которых я писал.
Реакт просто сравнит старое и новое виртуальное дерево и применит изменения к DOM-дереву.