0
Виконано

Прототип паттерн, очень непонятный код

Anton Ostriansky 6 років тому оновлено anonymous 6 років тому 1

Там где Реализация с общим хранилищем прототипов, методы addItem(id: string)  и getByColor(color: string). Тут наверное опечатка, почему то addItem принимает 2 аргумета, а getByColor 1, хотя и там и там в скобках по 2 слова.

Дальше то что очень запутало: Псевдокод

class Application is
    field shapes: array of Shape

    constructor Application() is
        Circle circle = new Circle()

В примере в классе Application создается объект Circle с пустым конструктором, а в примерах выше, там где код класса Circle, конструктор только с аргуметом (source: Circle). Я только прочитав шаги реализации пункт 2 понял, в псевдокоде указан только альтернативный конструктор.  

На самом деле простой паттерн, но разобраться в статье сложно.

Відповідь

Відповідь
Виконано

Антон, спасибо за то, что нашли время написать об этом. По первой проблеме, в диаграмме ошибочно отсутствовал второй параметр в методе addItem. По второй, я явно добавил обычный конструктор в класс прототипа. Исправления уже доступны на сайте и в книге, ещё раз спасибо!

ДОБРЕ, Я ЗАДОВОЛЕНИЙ
Позначка задоволеності від Anton Ostriansky 6 років тому
Відповідь
Виконано

Антон, спасибо за то, что нашли время написать об этом. По первой проблеме, в диаграмме ошибочно отсутствовал второй параметр в методе addItem. По второй, я явно добавил обычный конструктор в класс прототипа. Исправления уже доступны на сайте и в книге, ещё раз спасибо!