2015-03-20 8 views
8

come ho letto in Effective javaqual è la differenza tra classe gonfia e classe con tag?

gerarchie di classi gonfi può portare a classi gonfio che contengono molti metodi che differiscono solo per il tipo delle loro argomentazioni, in quanto vi sono nessun tipo nella gerarchia delle classi per acquisire comportamenti comuni.

e in Link

Una classe gonfio ha spesso molti casi particolari: attributi o il comportamento valida per alcuni casi, ma non altri. Spesso i programmatori tentano di risolvere con casi speciali introducendo i tag di tipo.

e somiglianza c'è tra classe Tagged in classe gonfio come in Effective java si dice che:

una classe le cui istanze sono disponibili in due o più sapori e contenere un campo tag che indica il sapore di l'istanza. le istanze sono gravate da con campi irrilevanti appartenenti ad altri sapori.

così concludendo entrambe le classi potrebbero avere Tipi di tag/campi e entrambe le classi sono avere così tante implementazioni (così tante caratteristiche simulati in una classe).

mi sono confuso con queste terminologie e voglio sapere che, qual è la differenza tra queste due classi e classe Tagged ??

risposta

4
  • Una classe gonfia è gonfia (vedi sotto).
  • Una classe con tag ha uno o più tag.
  • Una classe codificata è probabilmente gonfia, una classe gonfia non è necessariamente codificata.

"Bloated" è (un po ') soggettivo, "taggato" è banale da identificare. "Bloat" può riferirsi a molte cose; scarsa separazione delle preoccupazioni, mancanza di incapsulamento, diversi livelli di astrazione e così via.

"Tagged" è meno soggettivo, perché ci sarà un campo che definisce la separazione delle funzioni, l'astrazione, ecc

+1

ho avuto un po 'di vista ora, grazie :) – Prashant