Dziedziczenie, czy niezależne komponenty? |
Dziedziczenie, czy niezależne komponenty? |
27.04.2013, 08:39:51
Post
#1
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 1 Dołączył: 26.02.2013 Ostrzeżenie: (0%) |
Cześć.
Mam dwie klasy, Pierwsza która pobiera wyniki wykonania odrębnych klasa. Druga klasa Pobierającą wyniki pierwszej klasy i zamieniającą je na dane sesyjne. Moje pytanie, czy zgodne z zasadami OOP byłoby połączenie, a właściwie wykonanie tych operacji w jednej klasie?
|
|
|
29.04.2013, 15:01:13
Post
#2
|
|
Grupa: Zarejestrowani Postów: 280 Pomógł: 46 Dołączył: 23.03.2010 Ostrzeżenie: (0%) |
To moje zdanie, a w OOP nie jestem aż tak dobry.
Jedna klasa powinna być od Sesji. Druga powinna w konstruktorze dostawać wstrzykniętą klasę sesji. Wtedy operacje zapisu powinny być w klasie Image. Przykład:
Najlepiej żebyś ktoś mądrzejszy się wypowiedział, a jak mój tok myślenia będzie dobry to będę szczęśliwy. |
|
|
29.04.2013, 21:47:02
Post
#3
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 1 Dołączył: 26.02.2013 Ostrzeżenie: (0%) |
Mi się podoba
|
|
|
30.04.2013, 00:26:52
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 168 Pomógł: 126 Dołączył: 5.02.2010 Skąd: Świdnica Ostrzeżenie: (0%) |
Możecie mnie przy okazji nakierować co nam daje wstrzykiwanie? Dependency Injection.
|
|
|
30.04.2013, 13:15:11
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) |
@q3trm: Mógłbyś proszę przepisać swój pierwotny post - czytam go kolejny raz i nadal nie jestem pewien czy aby na pewno dobrze rozumiem Twoje pytanie. Nie mniej jednak to co zasugerował @Evinek jest najprawdopodobniej poprawnym rozwiązaniem. Jedyne co można by w nim poprawić to zamiast jawnie oczekiwać konkretnej klasy (tutaj: Session) skorzystać z interfejsu (jakiś tam SessionInterface) czy nawet jeszcze lepiej, z ogólnego interfejsu jakiegoś "magazynu" (np. StorageInterface, którego rozwinięciem mógłby być interfejs sesji), bo po co ograniczać swój kod do współpracy z tylko jednym magazynem danych? Oczywiście, jeżeli w Twoim przypadku byłoby to przesadą nie musisz "uciekać" do interfejsów - jednak jest to bardzo dobra praktyka:
@Szymciosek: Było to już poruszane wielokrotnie. Google: https://www.google.com/search?q=dependency+...me&ie=UTF-8 czy bardziej ogólnie https://www.google.com/search?q=ioc&aq=...600&bih=775 (IoC). |
|
|
30.04.2013, 15:06:59
Post
#6
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 1 Dołączył: 26.02.2013 Ostrzeżenie: (0%) |
Evinek, dał mi rozwiązanie mojego dylematu. Crozin, natomiast Twój kod dał mi sporo do myślenia, aktualnie mój skrypt nie wymaga owego zastosowania, ale na pewno mi się przyda w najbliższej przyszłości.
|
|
|
Wersja Lo-Fi | Aktualny czas: 12.05.2024 - 18:55 |