Применение порождающих паттернов, решение задач, связанных с созданием сущностей или групп похожих сущностей.
Интернет магазину по продаже компьютерных комплектующих понадобился инструмент для подбора и создания готового системного блока. Необходимо реализовать «Конфигуратор», для того чтобы собрать из имеющегося набора деталей компьютеры для дальнейшей передачи заказов в отдел продаж. Основным требованием заказчика является возможность подбора совместимых комплектующих для осуществления продаж покупателям.
Сборка компьютера является сложным и чётко организованным процессом, состоящим из нескольких этапов, таких как подбор оборудования и проверка совместимости. Рядовой покупатель может не обладать знаниями о всех тонкостях процесса сборки ПК, поэтому необходимо удостоверится в том что комплектующие имеют физическую совместимость, всем компонентам достаточно энергопотребления и доступные шины/слоты удовлетворяют требованиям различных компонентов перед тем отправить такую сборку в отдел продаж для дальнейшей реализации.
Так же, существуют случаи когда покупатель просто хочет подобрать готовую систему и заменить лишь пару компонентов (например более мощную видеокарту), поэтому необходимо предусмотреть возможность запуска “конфигуратора” на базе какой-либо платформы (к примеру Amd Ryzen последнего поколения или Intel i7 на базе чипсета X99 и т.п.).
Обязательные комплектующие отмечены звездочкой*
Это главная плата компьютера, соединяющая все компоненты системного блока в одно логическое целое. Её открытая архитектура позволяет собрать систему самому. Любой модуль, будь то процессор, оперативная память или видеокарта, имеет соответствующий только ему разъём, куда подаётся необходимое электропитание.
В зависимости от используемой платы и её чипсета вводятся ограничения на совместимость с другими частями, такими как процессор (в виду различий по сокету) и оперативная память (слоты под разные версии шины имеют различное количество контактов на печатной плате).
Атрибуты:
Сокет процессора
Кол-во распаянных на плате PCI-E линий
Кол-во распаянных на плате SATA портов