Sono un grande fan di DI / IOC. È ottimo per gestire / sottrarre dipendenze difficili e semplifica la vita. Tuttavia ho una piccola lamentela, che non sono sicuro di come risolvere. L'idea di base in DI / IOC è che quando un oggetto viene istanziato, tutte le sue dipendenze …
Ci sto pensando da molto tempo senza raggiungere una risposta ottimale. Prima di tutto, sono un medico che ama la programmazione ma non l'ha mai davvero studiato, tranne che per l'apprendimento a casa e molti anni di gioco con il codice nel mio tempo libero. Attualmente sto cercando di costruire …
Stavo leggendo un articolo di programmazione e menzionava il modello Decorator. Ho programmato per un po ', ma senza alcun tipo di istruzione o formazione formale, ma sto cercando di conoscere gli schemi standard e simili. Quindi ho cercato il decoratore e ho trovato un articolo di Wikipedia su di …
Chiuso . Questa domanda è basata sull'opinione . Al momento non accetta risposte. Vuoi migliorare questa domanda? Aggiorna la domanda in modo che possa essere risolta con fatti e citazioni modificando questo post . Chiuso 4 anni fa . Mi sono appena imbattuto in una domanda alla SO sul PAC …
Mi è stato insegnato questa espressione e questo modello molto tempo fa. Certo, il nome deriva da vecchie pompe che dovevano essere riempite d'acqua prima che potessero pompare acqua, ma a chi importa? Stiamo parlando di codice qui. Sarebbero benvenuti alcuni esempi davvero validi e una spiegazione di ciò che …
Un buon quarto di secolo fa, quando stavo imparando il C ++, mi hanno insegnato che le interfacce dovrebbero essere perdonanti e, per quanto possibile, non preoccuparsi dell'ordine che sono stati chiamati i metodi poiché il consumatore potrebbe non avere accesso alla fonte o alla documentazione al posto di Questo. …
Secondo Robert C. Martin, l'SRP afferma che: Non ci dovrebbe mai essere più di un motivo per cambiare una classe . Tuttavia, nel suo libro Clean Code , capitolo 3: Funzioni, mostra il seguente blocco di codice: public Money calculatePay(Employee e) throws InvalidEmployeeType { switch (e.type) { case COMMISSIONED: return …
Considera l'esempio di seguito. Qualsiasi modifica all'enumerazione ColorChoice influisce su tutte le sottoclassi IWindowColor. Gli enum tendono a causare interfacce fragili? C'è qualcosa di meglio di un enum per consentire una maggiore flessibilità polimorfica? enum class ColorChoice { Blue = 0, Red = 1 }; class IWindowColor { public: ColorChoice …
Chiuso . Questa domanda deve essere più focalizzata . Al momento non accetta risposte. Vuoi migliorare questa domanda? Aggiorna la domanda in modo che si concentri su un problema solo modificando questo post . Chiuso 6 anni fa . Che tipo di problemi potrei affrontare se non userò i modelli …
Dato un costruttore che non dovrà mai e poi mai usare diverse implementazioni di diversi oggetti che inizializza, è ancora pratico usare DI? Dopotutto, potremmo ancora voler effettuare unit test. La classe in questione inizializza alcune altre classi nel suo costruttore e le classi che utilizza sono piuttosto specifiche. Non …
Questa immagine è tratta dall'applicazione di modelli e schemi basati su dominio: con esempi in C # e .NET Questo è il diagramma di classe per il modello di stato in cui a SalesOrderpuò avere stati diversi durante la sua vita. Sono consentite solo determinate transizioni tra i diversi stati. …
LSP afferma che le classi dovrebbero essere sostituibili per le loro classi di base, il che significa che le classi derivate e di base dovrebbero essere semanticamente equivalenti. Ma LSP si applica anche alle classi che implementano un'interfaccia? In altre parole, se un metodo di interfaccia implementato da una classe …
Intendo implementare un repository e vorrei utilizzare il modello UOW poiché il consumatore del repository potrebbe eseguire diverse operazioni e desidero impegnarle contemporaneamente. Dopo aver letto diversi articoli sull'argomento, non riesco ancora a mettere in relazione questi due elementi, a seconda dell'articolo che viene fatto in modo diverso. A volte …
Quindi una situazione in cui mi imbatto abbastanza spesso è quella in cui i miei modelli iniziano a: Cresci in mostri con tonnellate e tonnellate di metodi O Ti consente di passare loro pezzi di SQL, in modo che siano abbastanza flessibili da non richiedere un milione di metodi diversi …
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.