Создан заказ №10066824
17 сентября 2023
Спроектировать в виде диаграммы классов новостной сайт
Как заказчик описал требования к работе:
Представьте, что вы разрабатываете новостной сайт, на котором пользователи могут публиковать статьи, оставлять комментарии, ставить лайки и дизлайки статьям и комментариям.
В первой версии системы на главной странице все статьи показывались в обратном хронологическом порядке (т.е. сначала - самые
новые). Однако с ростом числа новых пользователей заказчик решил, что нужно добавить рекомендательную систему: пользователь должен иметь возможность выбирать, какие статьи он бы хотел видеть в приоритете над другими.
Было решено предоставить пользователю следующие варианты системы рекомендаций:
"Самое новое" - статьи отображаются в обратном хронологическом порядке, как было в первой версии системы
"По рейтингу" - по максимальному количеству лайков у статьи, при равенстве числа лайков - в обратном хронологическом порядке
"По авторам" - сначала показываются статьи любимых авторов пользователя (пользователь указывает их самостоятельно), затем все остальные в обратном хронологическом порядке
"По категориям" - сначала показываются статьи, причисленные к категории (категориям), которые выбрал пользователь, затем все остальные в обратном хронологическом порядке
"Самое популярное" - по наибольшей "активности" относительно статьи. На текущем этапе развития продукта принято решение считать активность как сумму количества всех комментариев, поставленных лайков и дизлайков как комментариям, так и статье, а также общее количество просмотров статьи
Выбранная пользователем система рекомендаций запоминается и работает по умолчанию независимо от того, когда пользователь зашёл на сайт. Пользователь в любой момент может менять выбранную систему рекомендаций.
Для всех вариантов, кроме "Самое новое", на главной странице также должен быть указан временной диапазон для получения актуальных статей. Возможно четыре значения:
"За день"
"За неделю"
"За месяц"
"Указать диапазон"
Например, если выбрана система "По авторам" и в диапазоне указано "За неделю", то будут возвращены сначала новые статьи любимых авторов за последнюю неделю, а после них - обычные статьи, написанные за ту же неделю. Если любимые авторы пользователя писали и другие статьи, например, три недели назад, то в список они не попадут, пока пользователь на главной странице не выберет новую точку отсчёта.
В случае с выбором варианта "Указать диапазон" пользователь сам выбирает, за какое количество дней проводить подбор статей.
Также заказчик указал, что пользователи должны иметь возможность выбрать, сколько статей им должно показываться на странице: 10, 20, 50 или 100.
По стандарту новым пользователям для привлечения внимания установлена рекомендательная система по популярным статьям, в качестве диапазона - "За неделю".
Ваша задача - спроектировать структуру системы в виде диаграммы классов (учитывая как классы модели предметной области, так и служебные классы) и описать процесс работы системы от выбора пользователем системы рекомендаций и до момента показа обновлённой страницы. Расписывайте мысли подробно, с подчёркиванием того, почему вы остановились именно на выбранных вами решениях, а не каких-то других. Если вы уже знаете какие-то паттерны и собираетесь применить их в своём решении, упомяните их и напишите, почему их использование уместно и какие проблемы это решит. Однако стоит и понимать, что специально выискивать паттерны не стоит.
В ответ к заданию прикрепите диаграмму в виде diagrams.net-файла (или файла другой системы, которой пользуетесь для составления диаграмм), а также текстом опишите аргументацию решения
подробнее
Заказчик
заплатил
заплатил
20 ₽
Заказчик не использовал рассрочку
Гарантия сервиса
Автор24
Автор24
20 дней
Заказчик принял работу без использования гарантии
18 сентября 2023
Заказ завершен, заказчик получил финальный файл с работой
5
Спроектировать в виде диаграммы классов новостной сайт.jpg
2023-09-21 17:14
Последний отзыв студента о бирже Автор24
Общая оценка
4.3
Положительно
Не мог выставить в таблице сроков сегодняшнее число, автор пошел на встречу и сделал работу в кротчайшие сроки. Не все идут на встречу