Jestem początkującym i zawsze czytałem, że powtarzanie kodu jest złe. Jednak wydaje się, że aby tego nie robić, zwykle musiałbyś mieć dodatkowe wywołania metod. Powiedzmy, że mam następującą klasę
public class BinarySearchTree<E extends Comparable<E>>{
private BinaryTree<E> root;
private final BinaryTree<E> EMPTY = new BinaryTree<E>();
private int count;
private Comparator<E> ordering;
public BinarySearchTree(Comparator<E> order){
ordering = order;
clear();
}
public void clear(){
root = EMPTY;
count = 0;
}
}
Czy bardziej optymalne byłoby skopiowanie i wklejenie dwóch wierszy z mojej metody clear () do konstruktora zamiast wywoływania właściwej metody? Jeśli tak, jak dużą to robi różnicę? Co by się stało, gdyby mój konstruktor wykonał 10 wywołań metod, z których każde po prostu ustawiając zmienną instancji na wartość? Jaka jest najlepsza praktyka programistyczna?