DyerQ / Java-SE-Practice-Artifacts

0 stars 0 forks source link

Code quality / Refactoring #9

Closed DyerQ closed 9 years ago

DyerQ commented 9 years ago

Имеющиеся классы работают, но имеют один фатальный недостаток. Потихоньку будем исправлять.

1) По всем классам необходимо пройтись с помощью Ctrl+Alt+L, удалить ненужные импорты (если настроить идею, то это будет сделано автоматически) 2) В классе MailTemplate метод getMail заменяет, используя только стандартные шаблоны, но не properties от бизнес-карты. Нужно написать ещё один цикл или сделать foreach по объединению свойств, имея ввиду, что шаблоны от бизнес-карт имеют больший приоритет. 3) Добавить в класс Mail поле subject, соответствующий параметр в конструктор и геттер. 4) Метод buildMail в классе MailProducer должен иметь такую сигнатуру: public Collection buildMail(Collection templates, Set businessCards). Соответственно, нужно убрать лишнее в этом методе, переназвать локальные переменные, для соответствия codeConventions, убрать из класса и конструктора лишнее поле recipientsFileName. 5) Добавить класс Main в какой-нибудь gitignore 6) Во коде XMLUtils исключения прокидывать наверх, избавиться от try-catch. 7) В классе BusinessCard переписать метод equals так, чтобы не было предупреждений от идеи (подойдёт Ctrl+Enter) 8) Класс XMLUtils отправить в пакет ru.ncedu.bestgroup.mailing.utils (рефакторинг по правому клику на файл в идее) 9) Классы Mail, MailTemplate, BusinessCard отправить в пакет model

Желательно выполнять по порядку. Дополнительно о требуемых изменениях напишу в комментариях.