ну вот не согласен насчет экзепшена при запросе статьи по слагу
это вполне предсказуемый результат что иногда могут запросить то чего нет и кидать тут экзепшен нет смысла.
экзепшен нужен там где результат мало предсказуемый
например хочешь записать в файл, а место на диске кончилось (можно сказать что предсказуеый, но каждый раз обрабатывать эту ситуацию мало хочется)
или например пишешь данные на диск и бац он из строя вышел, тоже исключение норм вариант
или ты пишешь в файл, а файл на удаленном сервере и в этот момент разрыв коннекта был и тут уже сетевое исключение
Не буду спорить, повторюсь, нельзя прям вот так говорить что всегда надо кидать эксепшен или всегда возвращать нулл. Сильно зависит от конкретного кейса и контекста. Можно делать и то и то