История изменений
Исправление Nervous, (текущая версия) :
Так этот нормальный публичный интерфейс и предоставляет список списков животных.
Он предоставляет список животных. У списков свой интерфейс, у животных свой. В список списков это превращается, если ты выкидываешь понятие жывотного и начинаешь теребонькать его как список списков напрямую. Со всеми вытекающими.
как представляешь единый интерфейс к спискам и хэшмапам?
Не нужно никакого единого интерфейса к спискам и хэшмапам — и у того, и у того уже есть собственные стабильные, не зависящие от деталей реализации интерфейсы. Такой же стабильный интерфейс должен быть и у сущностей твоей предметной области — зоопарков, домов и бинарных деревьев.
структура коллекции должна быть скрыта
Не «структура коллекции должна быть скрыта» (хотя она, наверное, должна), а коллекции не должны смешиваться с сущностями, которые они содержат. Баханье коллекций сущностей кададрами приводит именно к этому.
Исправление Nervous, :
Так этот нормальный публичный интерфейс и предоставляет список списков животных.
Он предоставляет список животных. У списков свой интерфейс, у животных свой. В список списков это превращается, если ты выкидываешь понятие жывотного и начинаешь теребонькать его как список списков напрямую. Со всеми вытекающими.
как представляешь единый интерфейс к спискам и хэшмапам?
Не нужно никакого единого интерфейса к спискам и хэшмапам — и у того, и у того уже есть собственные стабильные, не зависящие от деталей реализации интерфейсы. Такой же стабильный интерфейс должен быть и у сущностей твоей предметной области — зоопарков, домов и бинарных деревьев.
структура коллекции должна быть скрыта
Структура коллекции не должна быть скрыта, коллекции не должны смешиваться с сущностями, которые они содержат. Баханье коллекций сущностей кададрами приводит именно к этому.
Исходная версия Nervous, :
Так этот нормальный публичный интерфейс и предоставляет список списков животных.
Он предоставляет список животных. У списков свой интерфейс, у животных свой. В список списков это превращается, если ты выкидываешь понятие жывотного и начинаешь теребонькать список список списков напрямую. Со всеми вытекающими.
как представляешь единый интерфейс к спискам и хэшмапам?
Не нужно никакого единого интерфейса к спискам и хэшмапам — и у того, и у того уже есть собственные стабильные, не зависящие от деталей реализации интерфейсы. Такой же стабильный интерфейс должен быть и у сущностей твоей предметной области — зоопарков, домов и бинарных деревьев.
структура коллекции должна быть скрыта
Структура коллекции не должна быть скрыта, коллекции не должны смешиваться с сущностями, которые они содержат. Баханье коллекций сущностей кададрами приводит именно к этому.