Strategy pattern: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Portale
Esempio: Codice pulito
Riga 65:
private List<Document> documentList = new List<Document>();
//Algoritmo per l'ordinamento dei documenti
private ISortStrategy sortstrategysortStrategy;
 
public SortedDocumentList( List<Document> documents ){
Riga 71:
}
public void setSortStrategy(ISortStrategy sortstrategysortStrategy)
{
this.sortstrategysortStrategy = sortstrategysortStrategy;
}
 
public void Addadd(Document document)
{
documentList.Addadd(document);
}
 
Riga 85:
{
//Ordina i documenti
sortstrategysortStrategy.sort(documentList);
 
// Display results
Riga 97:
class Document
{
private stringString title;
private stringString codicecode;
 
public Document(stringString title, stringString codicecode)
{
this.title = title;
this.codicecode = codicecode;
}
public String getTitle()
Riga 109:
return title;
}
public void setCodicesetCode(String codicecode)
{
this.codicecode = codicecode;
}
}
Riga 121:
public class SortDocument {
 
public void sort(List<Document> documents) {
QuickDocumentSort quickDocumentSort = new QuickdocumentSort();
QuickDocumentSort quickDocumentSort = new QuickdocumentSort();
SortedDocumentList sortedDocumentList = new SortedDocumentList( documents );
//Aggiungi l'algoritmo per effettuare l'ordinamento
SortedDocumentList sortedDocumentList = new SortedDocumentList( documents );
sortedDocumentList.setSortStrategy(mergeDocumentSortquickDocumentSort);
 
//Aggiungi l'algoritmo per effettuare l'ordinamento
sortedDocumentList.setSortStrategy( //Ordina i documenti usando l'algoritmo quickDocumentSort);
sortedDocumentList.sort();
 
//Ordina i documenti usando l'algoritmo quickDocumentSort
MergeDocumentSort mergeDocumentSort = new MergeDocumentSort ();
sortedDocumentList.sort();
 
sortedDocumentList.sortsetSortStrategy(mergeDocumentSort);
MergeDocumentSort mergeDocumentSort = new MergeDocumentSort ();
 
//Ordina idi documentinuovo la lista usando l'un altro algoritmo quickDocumentSortdi ordinamento
sortedDocumentList.setSortStrategy(mergeDocumentSort);
sortedDocumentList.sort();
 
//Ordina di nuovo la lista usando un altro algoritmo di ordinamento
sortedDocumentList.sort();
}
}