Wzorzec projektowy Singleton

0

Witam. Otóż przybywam tutaj, gdyż posiadam nie lada problem. Mam zaprezentować wzorzec projektowy Singleton odnoszący się do naszego miniprojektu. Temat tego projektu to: firma kuriersko/spedycyjna. po prostu jestem w kropce, mam to oddać na czwartek zamodelowane w UMLu a nie mam bladego pojęcia jak podejść do tematu. Przekopałem juz setki stron z google i nic. Jeśli to mogłob pomoc to zamieszczam zdjęcie z diagramem klas tego projektu. Na zaliczenie mam oddac sam diagram w UMLu. Z góry dziekuję za pomoc, pozdrawiam

EDIT

załóżmy Singleton ktory zwroci gdzie znajduje sie paczka

public class Lokalizator {
	private static GdziePaczka gdziePaczka = null;

	private GdziePaczka() {
	}

	public static GdziePaczka gdziePaczka() {
		if (gdziePaczka == NULL) {
			gdziePaczka = new GdziePaczka();
		}

		return gdziePaczka;

	}

	public void gdziePaczka() {
		System.out.println("Paczka znajduje sie w " + gdziePaczka);
	}
}

cos takiego mogloby byc?
rece opadaja ;/

1

singleton jak nazwa wskazuje jest czymś co ma być tylko jedno na całą aplikację. Paczek masz wiele, więc ta metoda gdziePaczka jest bezsensu.

Powinno być raczej tak:

public class Lokalizator {
    private static Lokalizator lokalizator = null;

    public static Lokalizator getInstance() {
          if (lokalizator == null)
               lokalizator = new Lokalizator();
          return lokalizator;
    }

    public Lokalizacja gdziePaczka(int idPaczki) {
          ...
    }
}
0

tamto zle bylo, poprawilem

public class Lokalizator {
private static Lokalizator lokalizator = null;   
private Lokalizator() { }  
 public static Lokalizator getInstance() {
 if (lokalizator == NULL) {
  lokalizator = new Lokalizator(); 
 }   return lokalizator;   }   
public void gdziePaczka() { 
 System.out.println("Paczka znajduje sie w " +gdziePaczka); 
}
 }

takie cus?

0

Lokalizator, Dyspozytor (rozdzielnia paczek), Magazyn (zakładamy, że jest jeden centralny). Poza tym taka implementacja jest nie do końca dobra ponieważ w systemie wielowątkowym może dojść do sytuacji kiedy masz dwie instancje klasy, która teoretycznie jest singletonem.

0

Ale zakładamy że ten system nie będzie obsługiwał wielowątkowości. Jeszcze jakies pomysły? Nawet mogą to być przypadki trywialne, jakis np system do drukowania faktur czy cos?

1 użytkowników online, w tym zalogowanych: 0, gości: 1