Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Импорт глобальных в модуль (https://javascript.ru/forum/misc/44812-import-globalnykh-v-modul.html)

Ateiri 03.02.2014 10:26

Импорт глобальных в модуль
 
Здравствуйте! В данный момент читаю стефанова про паттерны и что-то не совсем понимаю следующей конструкции.

MYAPP.utilities.module = (function (app, global) {
// references to the global object
// and to the global app namespace object
// are now localized
}(MYAPP, this));


Импорт происходит через входящие параметры функции, но если первый параметр это ссылка на объект MYAPP, то что this во втором параметре?

this ссылка на utilities или может module? или вообще объект в котором находится наше приложение MYAPP?

Объясните пожалуйста, что то я совсем запутался))
Заранее благодарю.

Ateiri 03.02.2014 10:28

По-идее this это ссылка на объект в контексте которого была вызвана функция module. Т.е. получается utilities?

kostyanet 03.02.2014 10:34

Что такое паттерны?

Ateiri 03.02.2014 10:42

шаблон если коротко. В целом здесь все описано http://ru.wikipedia.org/wiki/%D0%9F%...B5%D1%80%D0%BD

Ateiri 03.02.2014 10:53

http://shichuan.github.io/javascript-patterns/ Вы здесь уже давно, разве не знали?

Суть вопроса все же заключалась в вопросе с this, не подскажете?

kostyanet 03.02.2014 11:09

Не смог прочесть статью на гитхабе, паттерн разметки таков, что черное меню закрывает ссылки именно в том месте, на которое смотришь. Это я понимаю как паттерн идиотизма. То есть совокупность повторяющихся признаков по которым мы распознаем те или иные сущности. Например стол это паттерн, и стул паттерн, но стул мягкий - совсем другой паттерн.

Суть вопроса я все равно не понял. Вы кажется выкосили действующее вещество из той функции, или каково ее действие?

kostyanet 03.02.2014 11:11

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

Ну а наиболее эффективно потратить время на чтение первоисточника. Которого для паттернов может и не быть, поскольку это всего лишь категорический императив. Ну не хотят так писать - пишут этак.

kostyanet 03.02.2014 11:21

http://en.wikipedia.org/wiki/Software_design_pattern

в русской секции кривой перевод

Ateiri 03.02.2014 11:22

Цитата:

Сообщение от kostyanet (Сообщение 295525)
Я только хотел сказать что чей-то ублюдочный код вовсе не является скрижалью и если вы изучаете предмет то берите много примеров, а не ровно 1.

Ну а наиболее эффективно потратить время на чтение первоисточника. Которого для паттернов может и не быть, поскольку это всего лишь категорический императив. Ну не хотят так писать - пишут этак.

Одна из лучших книг. Sandbox pattern используется в YUI, модульные подходы часто встречаются в google, вы о чем? Это лишь шаблоны для удобного проектирования приложений... Паттерн сам по себе пример реализации, он не заставляет вас делать именно так.
Если вы здесь чтобы "покрасоваться", то идите в другие темы и проявляйте свое упрямство и гениальность там, а здесь был сформулирован простой вопрос, который вы в свою очередь даже не смогли уловить.

«По-идее this это ссылка на объект в контексте которого была вызвана функция module. Т.е. получается utilities?»

kostyanet 03.02.2014 11:38

Вы с конкретным приложением разбираетесь или с паттерными на основе конкретного приложения? Если 1 то надо смотреть контекст. Если 2 то берите еще несколько примеров.

В статьях полная байда. Паттерны проектирования служает облегчению распознавания сущностей, то есть фактическому их выявлению.

Это не так просто на самом деле. Понять что перед вами еда чтобы не умереть с голоду. Надо знать что еда, что нет. В проектировании аналогично. Паттерны это наборы готовых зависимостей.

В ту самую функцию загоняется несколько таких зависимостей. Гоните контекст.


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