Обновить
0
Dmitriy Brolnickij@brolnickij

просто чел

Отправить сообщение

И все еще решаю в более открытом варианте.

с нетерпением жду(ем), Денис, еще раз спс за труды :0

Но это не имело задокументированности нигде, вот эту проблему мы и решали.

согласен, когда-то давным-давно, когда я еще был зеленым, тоже столкнулся с такой же проблемой, когда ничего и нигде не было описано и все писали код "как знали, как умели, как чувствовали", и по итогу наш фронт превратилось в такую мусорку и свалку, похлеще всяких там замусоренных shared/

по итогу мы тож в какой-то момент пришли к схеме "Docs as Code", т.е. стараться документировать используемые библиотеки, документировать подходы в написании тестов, как работать с ветками / коммитами и т.п., в долгую этот подход очень хорошо играет (естественно при наличии ко всему этому код-ревью), прямо как и тесты

благо в век ИИ-агентов все это дело стало чуть попроще поддерживать

Ах да, всё время забываю, что на вашем фреймворке писать переиспользуемый код - это боль и страдания.

тут должна была быть реклама $mol

Вот сколько ни спрашиваю "зачем вы вообще пишете непереиспользуемый код?" - никто не может ничего вразуметельного ответить.

в каждом из модулей мы используем FSD 2.1, с page-first подходом, т.е. внутри модуля мы выносим на нижележащие слои только действительно то, что переиспользуется

а так, полностью согласен, нет никакого смысла дробить код на множество частей ради выдуманной "переиспользуемости", всегда нужно искать баланс, но и писать систему с кучей дублирования - тоже не вариант

мы же делим кодовую базу по предметным областям из-за очень толстого домена и к "переиспользуемости" это прямого отношения не имеет

большое спасибо, очень интересный подход, к тому же наконец-то узнал что такое "фрактальная архитектура"

было бы интересно поподробнее узнать о вашем подходе и механизмах работы с межмодульной / субмодульной коммуникацией, интересно узнать как вы вообще изолируете модули от "внешней среды"

---

мы на довольно большом проекте, в свое время, тоже пришли к чему-то подобному, просто добавив несколько архитектурных приемов поверх FSD, не переизобретая архитектуру с самого нуля

наши приложения имеет три глобальных слоя, с однонаправленными зависимостями, которые придерживаются принципа Relaxed Layered System
- app/ (Инфраструктурный слой)
- modules/ (Бизнес слой)
- shared/ (Переиспользуемый код)

направление зависимостей глобальных слоев
направление зависимостей глобальных слоев

каждая директория в modules/ разделена по принципу "изолированных предметных областей" + (привет DDD и его Strategic DDD), в каждом из которых живет FSD (из которого был исключен слой app/)

каждый модуль содержит в себе FSD (без слоя app/)
каждый модуль содержит в себе FSD (без слоя app/)

еще увидел, что вы остались на File-based Routing, что имеет ряд своих преимущество, но т.к. мы пошли по пути изолированных предметных областей и страницы у нас живут прямо в модулях, мы целиком и полностью перешли на ручное управление роутингом через router.options.ts

механизм работы роутинга
механизм работы роутинга

крч у нас получились аля микрофронтенды, запихнутые в модульный монолит, +- тож самое что и у вас

"возьми почитал" мобильный Сафари 17.2. Интересно, на какие страны вы делаете приложения - в Америке валом старых айфонов, в России - тем более, в Азии 17 еще не видели.

вряд ли сейчас, кто-либо, для больших продакшенов пишет на нативном css без использования транспиляторов

lightningcss

в тг канале NLP Core Team, с челами которые непосредственно занимаются разработкой / обучением моделек в Сбере, в посте от 31 августа говорится о переведенном ими датасете HumanEval

https://t.me/nlpcoreteam/53

на Земле хакал крупнейшие компании мира, на небесах будет хакать самого Господа Бога

F

метод flatMap нужен для того, чтобы последовательно не вызывать flat и map, а просто вызвать flapMap.

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность