J'ai besoin les fonctionnalités suivantesQuestion de conception: Java Class avec une seule méthode ok?
Given two sorted lists, merge them
J'ai ce squelette Java code:
public class MergeLists{
public List merge(List l1, List l2){
List l3;
// merge l1, l2 in to l3
return l3;
}
public static void main(){
// populate list1 and list2
MergeLists ml = new MergeLists();
List l3 = ml.merge(l1,l2);
}
}
Est-ce une seule classe de méthode, la bonne approche? J'ai l'impression que la classe presque vide me regarde pour dire que c'est un mauvais design. J'ai d'abord eu List L3 en tant que membre privé de MergeLists mais ensuite j'ai pensé, fusion (l1, l2) peut être appelé plusieurs fois avec le même objet, ce qui obligeait l3 à être local pour fusionner (l1, l2). J'ai lu que l'utilisation de la méthode statique est encore pire pour la réutilisation du code. S'il vous plaît donnez votre avis. Je vous remercie.
C'est bon. Mais je prédis qu'une fois que cette classe est dans votre base source, elle commencera à développer d'autres méthodes de façon inattendue. Un jour, vous voulez fusionner plus de deux listes, donc cela développe une méthode pour cela. Ensuite, vous voulez fusionner une liste dans une autre sans en créer une troisième. Ensuite, vous voulez trier puis fusionner des listes. Bientôt, la méthode de fusion n'est pas si solitaire! –