Perguntas com a marcação «object-oriented»

Uma metodologia que permite que um sistema seja modelado como um conjunto de objetos que podem ser controlados e manipulados de maneira modular




2
Os nomes dos pacotes devem ser singulares ou plurais?
Frequentemente, especialmente nas bibliotecas, os pacotes contêm classes organizadas em torno de um único conceito. Exemplos: xml, sql, user, config, db . Acho que todos sentimos que esses pacotes estão corretos no singular . com.myproject. xml .Element com.myproject. sql .Connection com.myproject. usuário .User com.myproject. usuário .UserFactory No entanto, se eu …

15
Por que precisamos de variáveis ​​privadas?
Por que precisamos de variáveis ​​privadas nas classes? Todo livro sobre programação que li diz que essa é uma variável privada, é assim que você a define, mas pára por aí. A redação dessas explicações sempre me pareceu realmente ter uma crise de confiança em nossa profissão. As explicações sempre …


16
Quando justificadores e setters são justificados
Getters e setters são frequentemente criticados por não serem apropriados OO. Por outro lado, a maioria dos códigos OO que eu tenho possui extensores e setters. Quando justificadores e setters são justificados? Você tenta evitar usá-los? Eles são usados ​​em geral? Se seu idioma favorito possui propriedades (a minha possui), …



17
É melhor retornar valores nulos ou vazios de funções / métodos em que o valor de retorno não está presente?
Estou procurando uma recomendação aqui. Estou lutando para saber se é melhor retornar um valor nulo ou vazio de um método quando o valor de retorno não está presente ou não pode ser determinado. Tome os dois métodos a seguir como exemplo: string ReverseString(string stringToReverse) // takes a string and …



12
Devo evitar métodos privados se eu executar TDD?
Só agora estou aprendendo TDD. Entendo que os métodos privados não são testáveis ​​e não devem se preocupar, porque a API pública fornecerá informações suficientes para verificar a integridade de um objeto. Eu entendi OOP por um tempo. Entendo que métodos privados tornam os objetos mais encapsulados, portanto, mais resistentes …

17
O encapsulamento ainda é um dos elefantes em que o OOP permanece?
O encapsulamento diz-me para tornar todos ou quase todos os campos privados e expô-los por getters / setters. Mas agora aparecem bibliotecas como o Lombok, que nos permitem expor todos os campos particulares com uma breve anotação @Data. Ele criará getters, setters e construtores de configuração para todos os campos …

13
Devemos eliminar variáveis ​​locais, se pudermos?
Por exemplo, para manter uma CPU ativada no Android, posso usar um código como este: PowerManager powerManager = (PowerManager)getSystemService(POWER_SERVICE); WakeLock wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "abc"); wakeLock.acquire(); mas acho que as variáveis ​​locais powerManagere wakeLockpodem ser eliminadas: ((PowerManager)getSystemService(POWER_SERVICE)) .newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakelockTag") .acquire(); cena semelhante aparece na visualização de alerta do iOS, por exemplo: …

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.