1)
Цитата:
|
и толку от этого неймспейса, если он по сути становится новой глобальной областью видимости?
|
Он нестановится новой глобальной областью видимости! Если админ подключит к сайту быдло плагин у которого имя переменной совпадает с твоей, то твой код останется работать. Потому что твоя переменная в своём неймспейсе. и вторая причина Ты можешь раскидать код по неймспейсам код, и тем самым упростить работу с ним.
2)
3.1.4 Информационный эксперт (Information Expert)- GRASP
6)
Цитата:
|
почему мне не достаточно знать, где что инициализируется, почему мне нужно засунуть это в одно место?
|
допустим функционал каждого модуля инициализируется в $("document").ready(function(){
инициализация компонента.
});
где гарантия того что все твои ready будут вызываться в нужно тебе порядке ? Лично для меня, невовремя включающиеся модули превратились в реальный геморой.
поэтому в модуле initJs который загружается последним. Есть код
$("document").ready(function(){
wr.icon.init(); //инициализация 1го модуля
wr.arranger.init();//инициализация 2го модуля
wr.history.init(); //инициализация 3го модуля
wr.inteface.init(); //инициализация 4го модуля
});
соответственно в каждом модуле есть свой метод init.
initJs - стал централизованным местом управления инициализацией приложения. Те модули которые в инициализации в определённом порядке не нуждаются, я неотслеживаю. Впрочем есть и противоположенный подход можно перечислить необходимые модули, прямо