Смешались в кучу кони, люди.
Monolith
Microservices/SOA.
это одна ось
Layered.
отдельная
Module-based.
ещё одна отдельная
REST
а это методология взаимодействия, вообще говоря не навязывает то как вам писать код внутри.
А вообще говоря ,архитектура, не смотря на то что это очень солидное слово которое увеличивает чсв минимум в 3 раза, Крайне неинформативное, совершенно контр интуитивно назвать набор ограничений на способы решения задач называть архитектурой.
Потому что возможен вариант чекания твоего литкода, и «ах ты зраднык»
Для чего существует любой бизнес?
Для чего существует любое государство и регуляторы?
весьма спорное заявление. ваш код делает очень дофига вещей, «с точки зрения класса»
А где SRP?
Как напишешь так и будет сортировать.
При помощи тайпклассика Ordered.
а это надо? Это совершенно контр-интуитивно. как, собственно и весь сишный код.
Зря юзают, это ружье чехова, которое рано или поздно выстрелит в кого-нибуть?
По хорошему оно уходит в трамполайнинг, и там хоть бесконечные циклы можно рисовать без риска отжора ни хипа, ни стека.
А ещё лучше не выпрыгивать вовсе, как и не использовать голые циклы. Есть комбинаторы, примитивы рекурсии и рекурсивные схемы, производительности этих вещей вполне хватает чтобы писать не «затобыстро» приложения.
Не имеет никакого значения сколько там логики на джампах будет в опкодах, пока гарантии выдаваемые ЯП и компилятором выполняются. В «а как оно там в опкодах будет» смысла совсем немного.
array.collectFirst(_ == 0)
кхем,
в большинстве современных (не функциональных) языков
завели всякие iterate until, collect и так далее. эти операторы в юзер коде как и сами циклы — не нужны, а скорее вредны как источник излишней сложности и багов.
как раз таки нет, на диче стек со сложной предметкой найти людей сложнее чем на распиаренный стек с банальной предметкой.
У них двох різний біль.
Обычно, один и тот, же. Мои родственики которые очень далеки от программирования жалуются ровно на те вещи которые мне видны с беглого взляда, правда не знают как их правильно назвать и описать. Обычно это ограничивается «а как это сделать» и «почему оно так плохо работает». Оценка не субьективная — а весьма обьективная.
А можно ли делать одни провайдеры зависимыми от других?
она не заставляет людей пользоваться этим продуктом.
Заставляет, медленно и планомерно, примерно так как гугл заставляет пользоватся андроидом и его экосистемой на мобилках. Как эппл таки заставляет пользоватся своими тулзами.
Почему правительство и другие организации все время лезут к этим компаниям
Делают свою работу, защищают вас, хомячков от черезмерно жадных лап черезмерно жадных капиталистов.
Ваш чудесный DI фреймворк как-то управляет ресурсами или просто подставляет аргументы в конструкторы?
Все же это не настолько глоабльная штука, как скажем, микросервисы vs монолит. У вас с одним сервисом может идти общение по рестам, а с другим по соупу — без рестов, командочками туда-сюда. Вообще говоря, все разговоры за «архитектуру» переливание из пустого в порожнее, сжатых строгих определений нет(разве что в стандартах от наса или ISO, которыми никто не пользуется), одни только нестрогие стены текста.