Ich wechselte von Java 1.4 (frühere Firma) zu Java 1.6 (neue Firma). Ich habe beobachtet, dass im Fall von 1.4 die meisten proprietären Frameworks unter Verwendung von Interfaces und Template-Mustern definiert wurden, während bei 1.6 die meisten Frameworks um Generics definiert sind.Generics vs. Interfaces
Während ich immer noch versuche, Generics in den Griff zu bekommen, ist meine Frage - Ist das ein richtiger Designansatz? Schnittstellen machen Ihr Design flexibler/entkoppelter. Während Generics, implementieren Typ Sicherheit und erzwingen Sie eine bestimmte Art von Klasse zu übergeben. Es hilft nicht wirklich beim Entkoppeln deines Codes. Ist das richtig?
Ein Beispiel -
public MyWizard extends SignupWizard<SignupSection, SignupObject, SignupListener, SignupView>{
}
statt das Design wäre flexibler, wenn es ..
public interface Wizardable{
public SignableSection getSection();
public SignableObject getSignableObject();
...
}
public MyWizard implements Wizardable{
....
}
Bitte verbessern Sie Ihr Beispiel. Zum Beispiel, was ist die Definition von SignupWizard? Geben Sie einige konkrete Beispiele für Frameworks an, in denen Generika so verwendet werden, wie Sie es nennen. Die Frage nach "Generika vs. Interfaces" ergibt für mich wenig Sinn, da oft beide zusammen verwendet werden. "Anmerkungen vs. Schnittstellen" macht mehr Sinn. –
Sieht so aus, wie ich es in C++ erwarte, nicht in Java. –