Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вопрос по модульной организации (https://javascript.ru/forum/misc/73888-vopros-po-modulnojj-organizacii.html)

fedushok 26.05.2018 09:10

Вопрос по модульной организации
 
Я не знаток JavaScript, но насколько я знаю в JavaScript нет специально предусмотренного механизма организации модулей. Есть различные варианты, и я прошу помочь мне определиться в моём случае.
Хотелось бы получить следующее. Есть несколько html страниц: a, b, c. Для обеспечения их функционала используются модули A,B,C,X,W,V. Модули X,W,V являются модулями общего назначения. Каждый модуль A,B,C предназначен для соответствующей страницы a, b, c. То есть для функционирования страницы b нужны модули B,X,W,V, для страницы c нужны модули C,X,W,V, аналогично для a. Модули A,B,C решают задачи однотипного характера, поэтому из них можно выделить одну общую для всех (A,B,C) модулей часть. И поместить эту общую часть в модуль Z, которая является группой базовых классов. Таким образом, модули A,B,C будут содержать в себе классы, наследуемые из классов в модуле Z. В конечном счете, все модули должны быть обработаны оптимизаторами JavaScript кода.
Как реализовано сейчас. Нет никакого разделения на Z и A,B,C. Есть один модуль (скажем Y), который объединяет содержимое Z,A,B,C, и который используется для всех страниц a, b c. Получается, что модуль Y для каждой задачи «таскает» за собой лишний код прочих страниц. Модули Y,X,W,V является закрытыми и взаимодействуют друг с другом посредством сообщений.

fedushok 26.05.2018 10:28

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

fedushok 27.05.2018 14:34

Возможно я неясно объяснил... Самое главное что меня интересует - это как из модулей выделить A,B,C общую часть Z. Как сделать так, чтобы A,B,C были продолжением Z, но в разных файлах?

destus 27.05.2018 15:06

fedushok,
Вебпак передавал привет, а имеено SplitChunksPlugin https://webpack.js.org/plugins/split-chunks-plugin/

fedushok 27.05.2018 17:36

Сначала нужно научиться самому, а уже потом передоверять машине. Если разделение модуля может сделать программа, значит вручную это тем более можно сделать. Как?


Часовой пояс GMT +3, время: 10:30.