Cosa sono classificati DRY, KISS, SOLID, ecc.?


58

Qualcosa come DRY è un modello di progettazione, una metodologia o qualcosa nel mezzo? Non hanno implementazioni specifiche che potrebbero essere necessariamente dimostrate (anche se puoi facilmente dimostrare un caso NON usando qualcosa come KISS ... vedi The Daily WTF per una pletora di esempi), né spiegano completamente un processo di sviluppo come una metodologia generalmente lo farebbe. Da dove viene questo tipo di "regola empirica"?


20
BACIO SOLIDO SECCO ... Non so se ciò renda la progettazione del software più attraente o meno ...
FrustratedWithFormsDesigner

11
Acronimi? (Sorridendo, correndo e schivando).
Warren P

2
@Warren P: Quello diventa GRAD ... Hmmm ...
FrustratedWithFormsDesigner

1
un BACIO ASCIUTTO E SOLIDO è decisamente meglio di un
bere

Il marketing ha fornito parole d'ordine.
Emilio Garavaglia,

Risposte:


98

Secondo Wikipedia è un principio di sviluppo del software.

In effetti, Wikipedia si riferisce a tutti loro come principi:

SECCO :

Nell'ingegneria del software, Don't Repeat Yourself (DRY) o Duplication is Evil (DIE) è un principio di sviluppo del software

BACIO :

KISS è l'acronimo del principio di design "Keep it simple, Stupid!".

SOLIDO :

I principi applicati insieme intendono aumentare le probabilità che un programmatore crei un sistema facile da mantenere e prolungare nel tempo


Esiste un buon tutorial con esempi che aiuta a capire come applicare questi schemi di progettazione ...
Krunal

2
I modelli di progettazione sono diversi. Come afferma la risposta, questi sono principi che dovrebbero guidarti nella progettazione e nello sviluppo quotidiano. Per esempi e tutorial ce ne sono molti nel web. Eccone uno di questi: blog.gauffin.org/2012/05/11/…
Jonn il

1
Un altro opposto di DRY è "WET": scrivi tutto due volte.
Dott. Rob Lang,

17

Direi che sono principi ingegneristici di base .

Una metodologia può avere n principi.

E sicuramente non sono modelli di design :)


6

Queste sono le linee guida per il tuo lavoro quotidiano, che attraversano i confini di livelli, domini problematici e tecnologie.

Formano anche quella che chiameresti una filosofia che definisce la tua pratica professionale.


E non devono applicarsi solo allo sviluppo del software - beh ok, SOLID si applica davvero solo allo sviluppo del software, ma gli altri due sono molto generali e possono essere applicati indipendentemente da qualsiasi settore specifico!
FrustratedWithFormsDesigner
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.