Какова наилучшая практика создания шаблонов исходящей электронной почты? Должен ли я каждый класс создавать html для конкретного письма? Должен ли я иметь текстовый шаблон с заполнителями, которые заменяются общим методом?Как форматировать исходящую электронную почту - создавать в коде или использовать шаблоны со сменными значениями?
В первом варианте у меня бы был метод sendEmail, который принимает форматированную строку html и отправляет электронное письмо. Несколько классов вызывали бы этот метод после создания html-представления электронной почты.
Во втором варианте, я бы предполагаем, имеющий несколько текстовых файлов как
<html>
<title>{emailTitle}</title>
Your user name is: {userName}
</html>
то метод, который принимает хэш-карту ключей, загружает соответствующий текстовый файл, а затем заменяет каждый ключ в хэш-карта со значением. Это, как представляется, имеет большую гибкость, поскольку код не должен знать ничего о html для создания, и вы могли бы изменить адрес электронной почты без изменения кода (только путем удаления значений - добавление нового ключа потребует изменения кода).
Какова наилучшая практика для форматирования электронной почты? Есть ли еще один вариант, который я должен рассмотреть? Я должен отправить четыре или пять различных типов электронных писем - новая регистрация, сброс пароля, подтверждение заказа и т. Д.
Я использую Java, но вопрос довольно языковой агностик - некоторые языки могут упростить для шаблонов, но Я спрашиваю о нормальных лучших практиках.