Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][MySQL] Aplikacja bazodanowa w OOP
szogoon
post
Post #1





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 27.05.2010

Ostrzeżenie: (0%)
-----


Witam wszystkich - jest to mój pierwszy post na tym forum smile.gif

Nie programowałem już kilka lat, a teraz musiałbym napisać obiektowo aplikację bazodanową w PHP (jako baza MySQL).

Nigdy nie pisałem stricte obiektowo, dlatego mam kilka wątpliwości/pytań.

Aplikacja miałaby wspomagać inwentaryzację sprzętu komputerowego i oprogramowania.
Widziałbym to tak, że mam tabele: lokalizacje, użytkownicy, komputery, drukarki, monitory, licencje.

Czy istnieje jakiś podobny przykład ? Jeżeli chodzi o interfejs/logikę - nie ustaliłem jeszcze jak to ma wyglądać.

Szukam wpierw punktu zaczepienia.

Bardziej techniczne pytanie: mam już bazę komputerów - w programie tworzę dla każdego komputera obiekt klasy komputer ? czy tworzę jeden obiekt (ewentualnie więcej, według potrzeb) i operuję w nim jakimś id i wyciągam na bieżąco dane ?

Z góry dziękuję za jakąkolwiek pomoc smile.gif
Go to the top of the page
+Quote Post
jaslanin
post
Post #2





Grupa: Zarejestrowani
Postów: 511
Pomógł: 143
Dołączył: 13.03.2010
Skąd: Jasło

Ostrzeżenie: (0%)
-----


Wszystko zależy od tego jaki to projekt, jakie założenia biznesowe ma spełniać. Jak się pewnie domyślasz inwentaryzację można mieć bardziej lub mniej rozbudowaną. Tak więc wydaje mi się że najpierw trzeba zrobić listę rzeczy które takie coś ma ułatwiać. A dopiero potem brać się za obmyślanie jak to ma działać. Bo może się tak okazać iż sama obsługa twojej aplikacji (dodawanie do aplikacji inwentaryzującej, jej obsługa) będą bardziej czasochłonne niż zyski z jej działania.

Jeżeli się okaże że zyski z aplikacji są duże trzeba "po prostu" do tych funkcji ułatwiających dorobić wszystko by mogły działać tzn. dostarczyć dane, przetworzyć dane itd.

"Bardziej techniczne pytanie: mam już bazę komputerów - w programie tworzę dla każdego komputera obiekt klasy komputer ? czy tworzę jeden obiekt (ewentualnie więcej, według potrzeb) i operuję w nim jakimś id i wyciągam na bieżąco dane ?"

może nie dla każdego komputera, tylko dla tych komputerów na których aktualnie operujesz np. masz wydrukować listę komputerów o jakiś tam warunkach, uruchamiasz model odpowiedzialny za pobranie z bazy komputerów rekordów spełniający jakiś warunek, model zwraca Ci tablicę z tymi komputerami, przekazujesz tę tablice obiektom komputer (tworzysz te obiekty i przekazujesz im dane). Tablicę tych obiektów z kolei przekazujesz do obiektu drukującego.

Ten post edytował jaslanin 27.05.2010, 13:12:01


--------------------
Good luck and happy PHP'ing
Go to the top of the page
+Quote Post
szogoon
post
Post #3





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 27.05.2010

Ostrzeżenie: (0%)
-----


Na tą chwilę chciałbym taką funkcjonalność:

komputery/monitory/drukarki byłyby przypisane do konkretnych lokalizacji/użytkowników
licencje byłyby przypisane do komputerów

chciałbym mieć widok całej firmy, a w niej poszczególne lokalizacje
otwierając daną lokalizację widzę sprzęt

drugi widok taki, że w firmie mam użytkowników...

podczas przemieszczania sprzętu generowany byłby protokół przekazania

dany komputer będzie miał od groma pól z danymi typu jaki procesor, ile pamięci itp

aplikacja ma być w miarę prosta smile.gif
Go to the top of the page
+Quote Post
lobopol
post
Post #4





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

Ostrzeżenie: (0%)
-----


To wszystko sprowadza się do dobrego rozplanowania bazy i zapytań
sprzęt:
-id
-typ_sprzetu
komputery:
-id
-id_sprzetu
-reszta pól opisujących
drukarki:
-id
-id_sprzetu
-reszta pól opisujących
monitory:
-id
-id_sprzetu
-reszta pól opisujących

użytkownik:
-id
-reszta pól opisujących

licencja:
-id
-id_kompa
sprzet_uzytkownika:
-id
-id_usera
-id_sprzetu

jeżeli sprzęt ma różne lokalizacje i te lokalizacje się powtarzają to:
lokalizacja
-id
-opis

lokalizacja_sprzetu:
-id
-id_sprzetu

dodatkowo:
zgloszenia
-id
-id_usera
-opis zgloszenia
-status zgloszenia

zgloszony_sprzet:
-id
-id_zgloszenia
-id_sprzetu
-status_sprzetu



--------------------
Go to the top of the page
+Quote Post
szogoon
post
Post #5





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 27.05.2010

Ostrzeżenie: (0%)
-----


ok, to jest dla mnie oczywiste...

teraz kwestia pobierania z bazy...

w danej klasie definiuję metody które pobierają z bazy ? czy robię to w jakiś inny sposób ?
czy jedna klasa do wyciągania danych z bazy i odwoływanie się do tej klasy ?
Go to the top of the page
+Quote Post
lobopol
post
Post #6





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

Ostrzeżenie: (0%)
-----


Najlepiej jedna klasa do całej manipulacji na bazie danych (dodawanie, edycja itp.), inna do wyświetlania tych danych itd.


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 03:06