Domande con tag 'solid'

7
risposte

Evasione delle regole in Wizards and Warriors

In questa serie di post del blog , Eric Lippert descrive un problema nella progettazione orientata agli oggetti usando come esempi esempi di procedure guidate e guerrieri: abstract class Weapon { } sealed class Staff : Weapon { } sealed class...
posta 23.11.2017 - 00:03
5
risposte

E 'una violazione del principio Open-Closed aggiornare una costante che rappresenta un valore del mondo reale?

Ho una classe che calcola il reddito annuale netto dei lavoratori. Ha una costante che rappresenta una percentuale di tasse. Ma un giorno l'aliquota d'imposta è cambiata, quindi ho bisogno di correggere il codice. L'atto di correggere questa...
posta 07.12.2017 - 14:22
6
risposte

Che cosa fa la differenza tra "Noleggio" e un "quasi" onesto per le interviste finali sul posto? [chiuso]

Quindi, di recente ho avuto interviste sul posto con Google e Amazon e ho ricevuto lettere di rifiuto educate che mi informavano che ero vicino, ma non del tutto corretto per le competenze che stavano cercando. Sono arrivato al round finale p...
posta 04.06.2011 - 08:40
4
risposte

Dependency Inversion espande l'API, genera test non necessari

Questa domanda mi ha infastidito per alcuni giorni e sembra che diverse pratiche si contraddicono a vicenda. Esempio Iterazione 1 public class FooDao : IFooDao { private IFooConnection fooConnection; private IBarConnection ba...
posta 31.05.2016 - 11:05
3
risposte

I setter e i getter interrompono sempre il Principio di Responsabilità Unica?

Come sappiamo, l'SRP afferma che ogni classe dovrebbe avere un'unica responsabilità e che la responsabilità deve essere interamente incapsulata dal classe. Ma setters e getter hanno un'altra responsabilità - fanno un accesso astratto alla...
posta 24.04.2013 - 15:17
4
risposte

Quando nella tua classe le classi sono anche oggetti, il principio di sostituzione di Liskov si applica alle loro interfacce?

Secondo Wikipedia il principio di sostituzione di Liskov afferma che objects in a program should be replaceable with instances of their subtypes without altering the correctness of that program Normalmente il principio di sostituzion...
posta 11.04.2016 - 22:02
6
risposte

Liskov Principio di sostituzione - condizioni di rafforzamento

Sono un po 'confuso riguardo a cosa significhi veramente. Nelle domande correlate ( È una violazione di il Principio di sostituzione di Liskov? ), è stato detto che l'esempio viola chiaramente LSP. Ma mi chiedo, se non ci fosse una nuova ecce...
posta 18.01.2018 - 10:38
3
risposte

Come usare 'Adapter' senza modifiche nel codice esistente in c ++

Qui abbiamo la classe TV e la classe DVD come esempio: class TV { public: TV(); virtual ~TV(); void on() const; void off() const; }; class DVDPlayer { public: DVDPlayer(); ~DVDPlayer(); void SetCD() const; vo...
posta 24.01.2018 - 06:09
4
risposte

Alcune classi contro 20 classi? Una domanda su bloat [chiuso]

Nel valutare il lavoro di una società di outsourcing, ho scoperto che hanno una propensione a dividere il lavoro in quante più classi possibili, ognuna delle quali è testabile. In un certo senso questo sembra encomiabile, ma lo stanno portando a...
posta 10.03.2018 - 20:45
1
risposta

Come faccio a rendere questo esempio Open / Closed anche obbedire alla Single-Responsibility?

Questo è un semplice esempio, ma riflette una tensione tra i principi SOLIDI con cui spesso mi trovo a dover lottare. Un esempio popolare del Principio Aperto / Chiuso (es. [1] , [2] ) immagina di avere molte classi Shape e un metodo draw...
posta 20.03.2017 - 12:57