@vhsscv231

Прошу, можете объяснить суть паттерна JavaScript?

Изучаю JS очень небольшой промежуток времени, но решил приучить себя писать код правильно. Хочу усвоить паттерны на практических примерах.
Наткнулся на паттерн "Модуль", но не совсем понял. Допустим у меня есть приложение-аудиоплеер на JS. В таком случае, модуль будет иметь следующий вид?
Код на JS
const audioPlayer = (function() {
    let volume = 0;

    function play() {
        // code
    }

    function pause() {
        // code
    }

    return {
        play: function() {
            play();
        },
        pause: function() {
            pause();
        }
    }
})();

audioPlayer.play();

Т.е. в итоге это просто объект, в котором куча свойств в виде функций, имеющих доступ к приватным функциям? А также локальные переменные? Или же этот аудиоплеер необходимо делить на более мелкие модули?...
P.S. Я конечно понимаю, что возможно я в корне неверно понял прочитанное, ведь я новичок и опыта у меня нет, но всё же надеюсь что вы поправите меня. Ещё буду благодарен за любые ссылки/литературу по теме. Спасибо.
  • Вопрос задан
  • 154 просмотра
Решения вопроса 2
@balamyt92
; select * from users; --
в итоге это просто объект, в котором куча свойств в виде функций, имеющих доступ к приватным функциям?

да, так и есть. В этом суть. А вы хотели дракона получить/приручить? :)
Ответ написан
Robur
@Robur
Знаю больше чем это необходимо
Да.
но это паттерн - костыль который был придуман чтобы хоть как-то имитировать модули в JS которых не было.
Теперь модули есть, с нормальной областью видимости и импортами -экспортами. Такие паттерны можно разбирать разве что с точки зрения абстрактного интереса. Практической пользы в нем уже нет.

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

Войдите, чтобы написать ответ

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