0
Завершено

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

Anton Ostriansky 2 года назад обновлен anonymous 2 года назад 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 2 года назад
Ответ
Завершено

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

Сервис поддержки клиентов работает на платформе UserEcho