![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 190 Pomógł: 2 Dołączył: 30.11.2009 Ostrzeżenie: (10%) ![]() ![]() |
Witam. Jestem w trakcie tworzenia [aktualnie planuję] gry o tworzeniu gier, tzn. taki webowy klon GameDev Story. Chodzi o pracowników w grze, jak ich najlepiej przedstawić, w postaci obiektów. Mam klasę reprezentującą pracownika
Następnie z bazy pobierał bym informacje o pracownikach gracza i następnie wypełniał obiekt danymi [konstruktor] np $pracownicy = array(); //przechowuje obiekty pracowników
Mam nadzieję że się w miarę jasno wyraziłem. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 32 Dołączył: 9.09.2010 Skąd: Brzeg Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem, takie głupie pytanie zadam. W czym tkwi problem? (IMG:style_emoticons/default/biggrin.gif) Używasz takiej metody:
Jednakże w twojej klasie nie widzę konstruktora, który by te dane przetworzył. Gotowa klasa:
Ten post edytował Magic WWW 30.06.2011, 14:34:57 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 655 Pomógł: 556 Dołączył: 17.03.2009 Skąd: Katowice Ostrzeżenie: (0%) ![]() ![]() |
Dlaczego $info nie jest private, skoro tamte były? (IMG:style_emoticons/default/smile.gif)
Swoją drogą z tego co pamiętam przyjęło się, że nazwy prywatnych zmiennych zaczynamy od $_ |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 123 Pomógł: 32 Dołączył: 9.09.2010 Skąd: Brzeg Ostrzeżenie: (0%) ![]() ![]() |
Faktycznie, mój mały błąd (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
@Fifi209, @Magic WWW: Nie, rozpoczynanie nazw jakimiś śmieciami w postaci znaku podkreślenia się nie przyjęło w PHP5+.
@deniol13: Cięzko tutaj jakieś wywody pisać. Pamiętaj tylko o tym by jeden obiekt zajmował się jedną rzeczą. Innymi słowy, czy w Twoim przypadku pracownik może być traktowany jako synonim osoby? Bo to właśnie osoba posiada imię czy nazwisko. Jeżeli takie dane są specyficzne wyłączone dla pracowników i jest mała szansa by kiedykolwiek w przyszłości zaistniała potrzeba utworzenia innych obiektów posiadających cechy osoby wtedy taki model jeszcze może pozostać. Ale jeżeli w przyszłości będziesz chciał dodać przykładowo obiekty pracodawcy czy wędkarza, które również posiadają takie cechy jak imię i nazwisko to co? Pomyśl nad wydzieleniem tych danych do osobnego obiektu. Podobnie jest z umiejętnościami pracownika. To już jest klasyczna relacja jeden-do-wielu i raczej nie powinna być zapisana na sztywno w kodzie. Jest całkiem prawdopodobne, że w przyszłości będziesz chciał dodać np. umiejętność negocjowania. Co wtedy? Przepisywanie kodu? Swoją drogą umiejętności również powinny być przypisane do osoby, nie do pracownika. W sumie taki obiekt pracownika to poza specyficznymi dla pracownika rzeczami (typu wynagrodzenie) będzie składał się z masy metod-proxy do innych obiektów (by jego interfejs był jakiś "znośny")
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 28.09.2025 - 09:44 |