Size: a a a

AngularPiter - русскоговорящее сообщество

2019 September 04

АС

Александр Семенов in AngularPiter - русскоговорящее сообщество
Аleksandr Korotaev
Вообще монорепы это зло
После долгой работы с nrwl уже начинаю приходить к такому же выводу)
источник

АО

Алексей Охрименко in AngularPiter - русскоговорящее сообщество
Мне кажется проблема в том что монорепы окупаются для кодовой базы > 1M или еще больше
источник

АK

Аleksandr Korotaev in AngularPiter - русскоговорящее сообщество
бедные ваши IDE)
источник

АС

Александр Семенов in AngularPiter - русскоговорящее сообщество
Алексей Охрименко
Мне кажется проблема в том что монорепы окупаются для кодовой базы > 1M или еще больше
Я в рамках одного приложения иногда выносил объемные модули в либы не публичные nrwl для удобства
источник

RS

REKTard Solyanov in AngularPiter - русскоговорящее сообщество
Александр Семенов
Собственно на оф сайте ангуляра в разделе ресурсов, ссылка на nx была с 4 версии если не ошибаюсь))))
Возможно и написано. Я открыл две наиболее свежие книги по ангуляру и там про это не было ни слова.
источник

RS

REKTard Solyanov in AngularPiter - русскоговорящее сообщество
Хотя вроде как коллектив авторов там довольно серьезный.
источник

R

Rustam in AngularPiter - русскоговорящее сообщество
хехе, книги
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
Алексей Охрименко
Мне кажется проблема в том что монорепы окупаются для кодовой базы > 1M или еще больше
Как мне кажется проблемы с монорепозиториями из-за неправильного подхода к разработке. В любом случае, есть множество проблем как для монорепозитория и полирепозитория.

К тому же тут стоит учитывать, что большие проекты все же имеют немного другие особенности разработки, нежели маленькие. Какие-то маленькие вещи они, конечно, могут доставлять практически мгновенно (дни-недели). Но что-то более крупное обычно укладывается в огромную инженерную работу, которая начинается с самого основного — проектирования.

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

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

Теперь вернемся к реализации. Для решения вопросов версионности, единственный способ его решить — фиксация контрактов для взаимодействия между модулями и автоматический рефакторинг. А значит, опять таки, необходим серьезный инженерный подход. Должен ли использоваться подход только для монорепозиториев? Я думаю, что без разницы.

Для проблем с дымлением IDE от больших кодовых баз, это все решается с помощью SaaS, которые выполняют все операции на серверах. А на руках у разработчика есть только небольшой тонкий клиент с маленьким количеством кода. Нужен ли монорепозиторий, чтобы прибегнуть к такому же? Не особо.

Тогда в чем же преимущество, если все равнозначно? Здесь как раз и вступает в силу мощь монорепы. Она дает на более поздних этапах независимо от всех остальных возможность вносить новые изменения, которые исправляют неправильное поведение функционала или добавляют незначительные фичи.

Надо ли использовать монореп? Если команда разношерстная и нет подкованных инженеров, то однозначно нет.
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
Сорян за много текста)
источник

АО

Алексей Охрименко in AngularPiter - русскоговорящее сообщество
Вертихвост キバ
Как мне кажется проблемы с монорепозиториями из-за неправильного подхода к разработке. В любом случае, есть множество проблем как для монорепозитория и полирепозитория.

К тому же тут стоит учитывать, что большие проекты все же имеют немного другие особенности разработки, нежели маленькие. Какие-то маленькие вещи они, конечно, могут доставлять практически мгновенно (дни-недели). Но что-то более крупное обычно укладывается в огромную инженерную работу, которая начинается с самого основного — проектирования.

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

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

Теперь вернемся к реализации. Для решения вопросов версионности, единственный способ его решить — фиксация контрактов для взаимодействия между модулями и автоматический рефакторинг. А значит, опять таки, необходим серьезный инженерный подход. Должен ли использоваться подход только для монорепозиториев? Я думаю, что без разницы.

Для проблем с дымлением IDE от больших кодовых баз, это все решается с помощью SaaS, которые выполняют все операции на серверах. А на руках у разработчика есть только небольшой тонкий клиент с маленьким количеством кода. Нужен ли монорепозиторий, чтобы прибегнуть к такому же? Не особо.

Тогда в чем же преимущество, если все равнозначно? Здесь как раз и вступает в силу мощь монорепы. Она дает на более поздних этапах независимо от всех остальных возможность вносить новые изменения, которые исправляют неправильное поведение функционала или добавляют незначительные фичи.

Надо ли использовать монореп? Если команда разношерстная и нет подкованных инженеров, то однозначно нет.
Фиксация контракта не работает для больших проектов из за Закона Хайрама http://www.hyrumslaw.com
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
Алексей Охрименко
Фиксация контракта не работает для больших проектов из за Закона Хайрама http://www.hyrumslaw.com
Для того, чтобы работала, необходимо много проектировать, чтобы исключить все возможные ошибки и свести их вероятность к минимуму
источник

АО

Алексей Охрименко in AngularPiter - русскоговорящее сообщество
Вертихвост キバ
Для того, чтобы работала, необходимо много проектировать, чтобы исключить все возможные ошибки и свести их вероятность к минимуму
With a sufficient number of users of an API,
it does not matter what you promise in the contract:
all observable behaviors of your system
will be depended on by somebody.

Тут проблема не в проектировании
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
Алексей Охрименко
With a sufficient number of users of an API,
it does not matter what you promise in the contract:
all observable behaviors of your system
will be depended on by somebody.

Тут проблема не в проектировании
Мы ведь говорим про то, как ведут разработку в Google, Microsoft?
источник

АО

Алексей Охрименко in AngularPiter - русскоговорящее сообщество
Вертихвост キバ
Мы ведь говорим про то, как ведут разработку в Google, Microsoft?
Не важно. Закон приминим ко всем крупным проектам, с большим кол-вом консьюмеров API
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
К слову, знаешь почему Apple начала сильно факапиться?
источник

Вキ

Вертихвост キバ in AngularPiter - русскоговорящее сообщество
Или почему мы не видим серьезных изменениях в ОС на протяжении всего года?
источник

GK

Georgii Klubnikov in AngularPiter - русскоговорящее сообщество
Алексей Охрименко
Не важно. Закон приминим ко всем крупным проектам, с большим кол-вом консьюмеров API
А какже подстановка и обратная совместимость? Тоже неработают? Где медиана когда закон хайрама начинает работать?
источник

АО

Алексей Охрименко in AngularPiter - русскоговорящее сообщество
Вертихвост キバ
Или почему мы не видим серьезных изменениях в ОС на протяжении всего года?
Неа, шарь знание 🙂
источник

АО

Алексей Охрименко in AngularPiter - русскоговорящее сообщество
Georgii Klubnikov
А какже подстановка и обратная совместимость? Тоже неработают? Где медиана когда закон хайрама начинает работать?
Ты весь текст прочитал по ссылке? 🙂
источник

АО

Алексей Охрименко in AngularPiter - русскоговорящее сообщество
Конкретного графика увы нет. Но могу подвердить что он работает.
источник