Encapsulamento e Getters

Eu estava lendo issoartigo por quegetter esetters são maus. O artigo não diznão para usá-los sempre, mas está lhe dizendo para pensar de uma maneira que limite o uso desses métodos ou para citar o artigo:

Não peça as informações necessárias para o trabalho; peça ao objeto que possui as informações para fazer o trabalho por você.

o que acontece quando você precisa exibir dados em uma GUI, mas não possui métodos getter? O artigo aborda isso brevemente, mas não totalmente. Ele menciona a passagem de um JComponent para a classe, mas se você alterar a GUI, poderá levar muito trabalho a ser corrigido.

Tomemos, por exemplo, uma classe Book (tornando este exemplo limitado para mantê-lo legível).

public final class Book {

    private String title;
    //Authors is class with the attributes authorFirstname, authorLastname
    private List<Author> listofAuthors;


    public Book(String title, List<Author> listofAuthors)
    {
        //initialization
    }

    //other methods that do work
}

Se eu tiver uma GUI que tenha umJTextField para exibir o título do livro e umJTable para exibir a lista de autores, como eu escreveria meu método para "fazer o trabalho" para mim e exibir o resultado? É um daqueles momentos em que umgetter é necessário?

questionAnswers(4)

yourAnswerToTheQuestion