169 похожих чатов

Добрый день. Подскажите пожалуйста, правильно ли импортить весь "SharedModule", в

котором 15 ненужных модулей для модуля "HistoryModule", если из "SharedModule" нужно всего 5?

21 ответов

9 просмотров
Александр-Лактионов Автор вопроса

Нужно ли тянуть все общие модули проекта, например 30 штук из Shared, если в действительности нужно пару модулей?

неправильно, нужно шаред модуль делить на маленькие подмодули

xxtux Shvets
неправильно, нужно шаред модуль делить на маленьки...

Зачем? Есть же тришейкинг, деление на субмодули только структурированность повысит

Александр-Лактионов Автор вопроса
xxtux Shvets
неправильно, нужно шаред модуль делить на маленьки...

например, из Shared сделать "SharedTableModule" ,"SharedTuiModule" и тд?

Александр-Лактионов Автор вопроса
Глеб Рябцев
Зачем? Есть же тришейкинг, деление на субмодули то...

А если приложение большое, с эстетической точки зрения не очень будет смотреться SharedModule. где 50-100 других модулей

советую подход SCAM - один компонент = один модуль. Тогда каждый модуль будет изолировать зависимости и функционал одного компонента, и webpack'у будет проще делать tree-shaking и разделять проект на файлы.

Maksim
советую подход SCAM - один компонент = один модуль...

Тут shared модули экспортирует, так что scam не подходит Хз, всегда без shared работал и норм было, просто не заглядывал, что там ide наимпортила

Maksim
советую подход SCAM - один компонент = один модуль...

Это хорошая штука до первого кольца зависимостей

Глеб Рябцев
Зачем? Есть же тришейкинг, деление на субмодули то...

удобнее управлять зависимостями. с шаредом потом не поймешь че где и как аккуратно заменить

Maksim
советую подход SCAM - один компонент = один модуль...

Плодить модуль на каждый компонент - раздувать бандл сайз без причины

Raman Yazvinski
А как с ним получить циркулярку?

Если компонент = модуль, то рано или поздно в большом проекте получится: CompA imports CompB CompB imports CompC ....N imports M.... CompC imports CompA

Raman Yazvinski
CompC imports CompA кааак, они же атомарны

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

Никита Лебедев
Если они все нижайшего уровня, когда каждый из них...

Ааа, кажется понял, о чем вы Типа scam только для ui-core, а для страниц/форм обычные модули с кучей компонентов У меня такое деление

Raman Yazvinski
Ааа, кажется понял, о чем вы Типа scam только для ...

Ну в целом да, обёртки над 3rd party или простейшие формочки ввода - это все прекрасно работает на scam и действительно удобно, спорить тут сложно. Но первая же сложная модель которая циклична в своей сути (дерево например) вызвало цикл зависимостей, который кроме как мержом в один модуль не удалось разрешить

модули которые вызывают цикличные зависимости можно динамично импортировать и собирать с помощью createNgModuleRef

Maksim
модули которые вызывают цикличные зависимости можн...

Да, но это ломает tree-shacking и является сокрытием ошибок модульности приложения. Каждый такой кейс хорошо бы разбирать отдельно и решать на месте. Вероятность того, что модули вызвавшие цикл должны быть декомпозированы и реорганизованы по опыту всегда высока.

Никита Лебедев
Ну в целом да, обёртки над 3rd party или простейши...

Хз, никогда не получалось на такое наткнуться Дерево по идее через ng-content + contentChildren спокойно резолвится, я сто лет назад лазил в его реализацию и не вспомню уже

Raman Yazvinski
Хз, никогда не получалось на такое наткнуться Дере...

Если есть модель в духе такой, то тут лучше решение как иметь компонент <class-a-editor> и <class-b-editor> в одном модуле я не нашел к сожалению, возможно я что-то упускаю конечно. ClassA { prop1: string; prop2: ClassB; } ClassB: { prop1: number; prop2: ClassA; }

Похожие вопросы

Обсуждают сегодня

читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
Всем привет, после Си стоит учить плюсы или лучше на раст перейти?
Linus
8
или вы считаете муит дает знание?
супер_лох_3000 альфа версия
12
значить например он учился в СДУ то получается он особенный?)
Asets Serikov
11
Карта сайта