Wzorzec projektowy Fabryka w Java

Wzorzec projektowy Fabryka (Factory Pattern) jest jednym z najczęściej używanych wzorców kreacyjnych w programowaniu obiektowym. Umożliwia tworzenie obiektu bez eksponowania logiki tworzenia do klienta i odwołuje się do nowo utworzonego obiektu za pomocą wspólnego interfejsu. Wzorzec ten jest szczególnie użyteczny, gdy system powinien być niezależny od sposobu, w jaki jego obiekty są tworzone, skomponowane i reprezentowane.

Przykład zastosowania wzorca Fabryka

Załóżmy, że tworzymy system do zarządzania pracownikami w różnych działach firmy. Chcemy mieć możliwość tworzenia różnych typów pracowników (np. Programista, Projektant) bez określania konkretnych klas w kodzie klienta.

Krok 1: Utworzenie interfejsu Employee
public interface Employee {
    void work();
}
Krok 2: Utworzenie konkretnych klas implementujących Employee
// Klasa Programista
public class Developer implements Employee {
    @Override
    public void work() {
        System.out.println("Piszę kod.");
    }
}

// Klasa Projektant
public class Designer implements Employee {
    @Override
    public void work() {
        System.out.println("Projektuję interfejsy użytkownika.");
    }
}
Krok 3: Utworzenie klasy EmployeeFactory
public class EmployeeFactory {
    // Metoda do tworzenia obiektów Employee
    public Employee getEmployee(String employeeType) {
        if (employeeType == null) {
            return null;
        }
        if (employeeType.equalsIgnoreCase("DEVELOPER")) {
            return new Developer();
        } else if (employeeType.equalsIgnoreCase("DESIGNER")) {
            return new Designer();
        }
        return null;
    }
}
Krok 4: Użycie EmployeeFactory do tworzenia obiektów
public class FactoryPatternDemo {
    public static void main(String[] args) {
        EmployeeFactory employeeFactory = new EmployeeFactory();

        // Tworzenie Programisty
        Employee employee1 = employeeFactory.getEmployee("DEVELOPER");
        employee1.work();

        // Tworzenie Projektanta
        Employee employee2 = employeeFactory.getEmployee("DESIGNER");
        employee2.work();
    }
}

Podsumowanie

Wzorzec projektowy Fabryka jest potężnym narzędziem w rękach programisty Java, pozwalającym na abstrakcję procesu tworzenia obiektów. Dzięki zastosowaniu wzorca Fabryka, kod staje się bardziej modularny, elastyczny i łatwiejszy do rozbudowy oraz utrzymania. W naszym przykładzie zastosowaliśmy ten wzorzec do tworzenia różnych typów pracowników w zależności od potrzeb, co pokazuje jego praktyczne zastosowanie w prawdziwych scenariuszach programistycznych.

Jeżeli chcesz przyśpieszyć swoją naukę tworzenia stron chciałbym polecić mój kurs video Java w którym nauczysz się tego języka od podstaw do zaawansowanych jego aspektów.

Scroll to Top