Ho notato che a partire da PHP5, le interfacce sono state aggiunte alla lingua. Tuttavia, poiché PHP è così tipicamente impresso, sembra che la maggior parte dei vantaggi dell'uso delle interfacce vada persa. Perché questo è incluso nella lingua?
Dopo la lettura I nomi dei pacchetti devono essere singolari o plurali? mi è venuto in mente che non ho mai visto un dibattito adeguato su uno dei miei animali domestici: denominare le implementazioni delle interfacce. Supponiamo che tu abbia un'interfaccia Orderche deve essere implementata in vari modi, ma c'è …
Sto cercando di capire bene come implementare un buon disaccoppiamento tra un'interfaccia utente e il modello, ma ho problemi a capire esattamente dove dividere le linee. Ho esaminato Model-View-Presenter, ma non sono sicuro di come implementarlo. Ad esempio, la mia vista ha più finestre di dialogo. Dovrebbe esserci una classe …
Se la mia classe è implementsun'interfaccia, allora posso dire che sto seguendo l'eredità? So che quando una classe è extendsun'altra, allora è eredità.
Abbastanza diretto. Sto implementando un'interfaccia, ma c'è una proprietà che non è necessaria per questa classe e, in effetti, non dovrebbe essere usata. La mia idea iniziale era semplicemente fare qualcosa del tipo: int IFoo.Bar { get { raise new NotImplementedException(); } } Suppongo che non ci sia nulla di …
Per semplificare l'interfaccia, è meglio non avere il getBalance()metodo? Passare 0al charge(float c);darà lo stesso risultato: public class Client { private float bal; float getBalance() { return bal; } float charge(float c) { bal -= c; return bal; } } Forse prendi nota javadoc? Oppure lascialo all'utente della classe per …
Voglio sapere perché .compareTo()è Comparablenell'interfaccia mentre un metodo simile .equalsè nella Objectclasse. A me sembra arbitrario il motivo per cui un metodo simile .compareTo()non è Objectgià nella classe. Per usare .compareTo(), implementate l' Comparableinterfaccia e implementate il .compareTo()metodo per i vostri scopi. Per il .equals()metodo, devi semplicemente sostituire il metodo …
Mi sono imbattuto molto nel termine "programmazione su un'interfaccia anziché in un'implementazione" e penso di capire cosa significhi. Ma voglio essere sicuro di capire i suoi benefici e le sue possibili implementazioni. "Programmare su un'interfaccia" significa che, quando possibile, si dovrebbe fare riferimento a un livello più astratto di una …
Io e il mio collega abbiamo opinioni diverse sulla relazione tra classi di base e interfacce. Sono convinto che una classe non dovrebbe implementare un'interfaccia a meno che quella classe non possa essere utilizzata quando è richiesta un'implementazione dell'interfaccia. In altre parole, mi piace vedere il codice in questo modo: …
Per essere intercambiabili e verificabili, normalmente i servizi con logica devono avere un'interfaccia, ad es public class FooService: IFooService { ... } Dal punto di vista del design, sono d'accordo con questo, ma una delle cose che mi disturba con questo approccio è che per un servizio dovrai dichiarare due …
È comune usare '-able' come suffisso per interfacce es Girabile con numero di serie stampabile serializzabile stampabile serializzabile Pensavo che "Can-" potesse migliorare perché potrebbe essere più descrittivo. Sì, è più prolisso e aggiunge rumore al nome dell'interfaccia. In particolare, possono essere usati verbi passivi. Ad esempio 1 sparare significa …
Negli ultimi mesi, sono inciampato alcune volte sulla seguente tecnica / modello. Tuttavia, non riesco a trovare un nome specifico, né sono sicuro al 100% di tutti i suoi vantaggi e svantaggi. Il modello è il seguente: All'interno di un'interfaccia Java, una serie di metodi comuni è definita come al …
Sebbene questo non sia obbligatorio nello standard C ++, sembra che GCC, ad esempio, implementa le classi parent, comprese quelle pure astratte, includendo un puntatore alla tabella v per quella classe astratta in ogni istanza della classe in questione . Naturalmente questo gonfia le dimensioni di ogni istanza di questa …
Il compito è configurare un componente hardware all'interno del dispositivo, secondo alcune specifiche di input. Ciò dovrebbe essere ottenuto come segue: 1) Raccogliere le informazioni di configurazione. Questo può accadere in tempi e luoghi diversi. Ad esempio, il modulo A e il modulo B possono entrambi richiedere (in momenti diversi) …
Supponi di avere un'interfaccia IFoo: public interface IFoo { void Bar(string s); int Quux(object o); } Nella versione 2 dell'API, è necessario aggiungere un metodo Glarga questa interfaccia. Come si fa senza interrompere gli utenti API esistenti e mantenendo la compatibilità con le versioni precedenti? Questo è principalmente rivolto a …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.