Возврат значений из класса обслуживания в bean-get: Вредит ли это удобочитаемости и является ли это «чистым кодом»? - PullRequest
0 голосов
/ 04 марта 2019

Я сейчас работаю над домашней работой для своего урока программирования.Мы работаем с JSF (но это вопрос, который обычно можно применить к Java), и мне было интересно, если это хорошая практика:

На первом этапе домашней работы я должен был добавить список продуктовв боб.На данный момент это выглядит так:

public class PricelistBean {
    private List<Product> productList;


    public PricelistBean(){
        this.productList = new ArrayList<>();
        this.productList.add(new Product(1001, "electric toothbrush", 23.0f));
        this.productList.add(new Product(1002, "toy boat large", 50.4f));
        this.productList.add(new Product(1003, "dyson vacuum cleaner", 299.0f));
    }
    public List<Product> getProductList() {
        return this.productList;
    }

    public void setProductList(List<Product> productList) {
        this.productList = productList;
    }
}

Следующим шагом было перенести это в класс обслуживания.Теперь моя идея состояла в том, чтобы просто удалить список продуктов и переместить его в класс обслуживания, а затем повторно использовать get и sets и заставить его изменять / возвращать список в классе обслуживания следующим образом:

public List<Product> getProductList(){ return this.productListService.getProductList(); };
public void setProductList(List<Product> productList){this.productlistService.setProductList(productList); } ;

Это будетпозвольте мне абсолютно ничего не менять в моем фактическом фейсе (вид).Тем не менее, я не знаю, считается ли это хорошей практикой и ухудшает ли это читабельность (поскольку id предполагает, что кто-то, читающий это, просто предположит, что в bean-компоненте есть свойство чтения значений в представлении, а затем запутается).Я не хочу учить себя плохому стилю кодирования.

ПРИМЕЧАНИЕ. Когда я говорю «стиль», я имею в виду, что хочу следовать общепринятым принципам кодирования, чтобы получить стиль кодирования, который довольно повсеместно принимается как «приличный».,Я знаю, что предмет не является объективным, однако я думаю, что это не тема, если мы ограничим его общепринятыми принципами чистого кода.

1 Ответ

0 голосов
/ 04 марта 2019

Хранение данных отдельно от представления / представления (лицевая сторона) является хорошей практикой.Таким образом, вы можете отделить вашу презентацию от данных или любой другой обработки данных.

Еще одно преимущество - вы можете поделиться состоянием компонента, если данные присутствуют в компоненте.Вы можете сделать его неизменным или синглтоном, также в зависимости от ваших требований.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...