Каковы некоторые примеры реализаций шаблона разработки Используя JavaScript?

У меня была аналогичная проблема с файлом ~ 400 МБ. Установка low_memory = False сделала трюк для меня. Сначала делайте простые вещи, я бы проверял, что ваш фреймворк не больше вашей системной памяти, перезагрузитесь, очистите оперативную память перед продолжением. Если вы все еще сталкиваетесь с ошибками, стоит убедиться, что ваш CSV-файл в порядке, быстро просмотрите Excel и убедитесь, что нет очевидной коррупции. Сломанные исходные данные могут привести к хаосу ...

17
задан Luc Touraille 4 May 2012 в 08:37
поделиться

8 ответов

Я просто хотел добавить свой любимый шаблон JavaScript, который я узнал из Pro Шаблонов разработки JavaScript, которые уже рекомендовал Jonathan Rauch.

Это - шаблон "одиночка" пространства имен. В основном Вы создаете пространства имен через одиночные элементы, которые позволяют Вам скрывать методы и переменные от наружного применения. Скрыться/представить, методы на самом деле скрыты, потому что они определяются в рамках закрытия.

var com = window.com || {};
com.mynamespace = com.mynamespace || {};
com.mynamespace.newpackage = (function() {
    var myPrivateVariable = "hidden";
    var myPublicVariable = "exposed";

    function myPrivateMethod() {
        return "also hidden";
    }

    function myPublicMethod() {
        return "also exposed";
    }

    return {
        myPublicMethod: myPublicMethod,
        myPublicVariable: myPublicVariable
    };
})();
8
ответ дан 30 November 2019 в 13:22
поделиться

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

Как идеальный пример, шаблон "Фабрики" является абсолютно ненужным на некоторых языках, Ruby как пример, о котором я думаю (потому что объектная конструкция является просто методом на Экземпляре класса):

# create a factory for MyObject
my_factory = MyObject
instance_1 = my_factory.new

# change the factory to another class
my_factory = MyOtherObject
instance_2 = my_factory.new

Каждый раз, когда Вы применяете шаблон разработки к различному языку, чем он, был первоначально разработан для, удостоверьтесь, что Вы рассматриваете, ДЕЙСТВИТЕЛЬНО необходимо ли, и какие пути Вы могли бы быть в состоянии улучшить его с новыми доступными функциями языка. Шаблоны разработки являются просто руководством, необходимо всегда рассматривать, нужен ли для использования, которое Вы предназначаете действительно, шаблон, или если это может быть принято лучшим способом в Вашем случае.

7
ответ дан 30 November 2019 в 13:22
поделиться

@jamting:

одноэлементный шаблон разработки в JavaScript

, О, мой бог. Я безмолвен.

К OP: да, конечно, Вы можете в некотором смысле, но некоторые шаблоны, поскольку Вы привыкли к ним, не так видимы, как в Java. Например, одиночный элемент просто был бы объектом:

var singleton = {
    sayHello: function() {
       alert("Hello!")
    }
};

Википедия имеет пример Фабрика в JS.

3
ответ дан 30 November 2019 в 13:22
поделиться

Я недавно использовал Лучший Класс Анимации Bernie, который делает широкое применение Шаблон разработки Стратегии . Bernie делает отличную работу при описании, почему Стратегическая модель должна использоваться, но печально не объясняет точно, как код работает. С другой стороны, при использовании ссылки Шаблонов разработки, смотрите на код и комментарии в animator.js для хорошего примера того, как использовать Стратегическую модель.

Пример:

// This object controls the progress of the animation 
ex1 = new Animator();
// The Animator's subjects define its behaviour 
ex1.addSubject(updateButton);
function updateButton(value) {
    $('ex1Button').innerHTML = "Progress: " + Math.round(value * 100) + "%";
}

// now click below: each click to the button calls ex1.toggle()
2
ответ дан 30 November 2019 в 13:22
поделиться

Я подозреваю, что они могут - вот пример Singleton:

Шаблон проектирования синглтона в JavaScript

0
ответ дан 30 November 2019 в 13:22
поделиться

Уверенный они могут. Вот книга по предмету:
Pro Шаблоны разработки JavaScript
Вот пример Шаблона "фабрика":
Шаблон "фабрика" в Javascript

0
ответ дан 30 November 2019 в 13:22
поделиться

Я хотел бы добавить сюда то, что я изучал в группе с обсуждением шаблонов проектирования как в C #, так и в JavaScript. Во время встречи мне нравится то, что парень на C # пишет коды на JavaScript и то же самое на JavaScript. После того, как я ухожу со встречи, я пытаюсь узнать больше дома и заняться блогами здесь http://tech.wowkhmer.com/category/Design-Patterns.aspx для C # и JavaScript.

0
ответ дан 30 November 2019 в 13:22
поделиться

Послушайте Джастина Диаса, рассказывающего о шаблонах проектирования для Javascript. Доклад также основан на его книге «Pro Javascript Techniques», упомянутой выше. Речь длится около 45 минут в Google I / O

0
ответ дан 30 November 2019 в 13:22
поделиться
Другие вопросы по тегам:

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