Domande taggate «object-oriented-design»

La progettazione orientata agli oggetti è il processo di pianificazione di un sistema di oggetti interagenti allo scopo di risolvere un problema software.

4
Utilizzo di getter pubblici anziché privati
Vedo la maggior parte dei POJO immutabili scritti in questo modo: public class MyObject { private final String foo; private final int bar; public MyObject(String foo, int bar) { this.foo = foo; this.bar = bar; } public String getFoo() { return foo; } public int getBar() { return bar; } …






9
Programmazione per l'uso futuro delle interfacce
Ho un collega seduto accanto a me che ha progettato un'interfaccia come questa: public interface IEventGetter { public List<FooType> getFooList(String fooName, Date start, Date end) throws Exception; .... } Il problema è che in questo momento non stiamo usando questo parametro "end" da nessuna parte nel nostro codice, è solo …



6
Perché evitare l'ereditarietà Java "Estende"
Disse Jame Gosling "Dovresti evitare l'ereditarietà dell'implementazione quando possibile." e invece usa l'ereditarietà dell'interfaccia. Ma perché? Come possiamo evitare di ereditare la struttura di un oggetto usando la parola chiave "extends" e allo stesso tempo rendere il nostro codice orientato agli oggetti? Qualcuno potrebbe fornire un esempio orientato agli oggetti …


13
È sbagliato usare un parametro booleano per determinare i valori?
Secondo È sbagliato usare un parametro booleano per determinare il comportamento? , Conosco l'importanza di evitare l'uso di parametri booleani per determinare un comportamento, ad esempio: versione originale public void setState(boolean flag){ if(flag){ a(); }else{ b(); } c(); } nuova versione: public void setStateTrue(){ a(); c(); } public void setStateFalse(){ …


8
OOP sta diventando più facile o più difficile? [chiuso]
Quando i concetti della programmazione orientata agli oggetti sono stati introdotti ai programmatori anni fa, sembra interessante e la programmazione era più pulita. OOP era così Stock stock = new Stock(); stock.addItem(item); stock.removeItem(item); Era più facile da capire con un nome auto-descrittivo. Ma ora OOP, con pattern come Data Transfer …


Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.