![]() |
![]() ![]() |
![]() |
![]()
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
![]() 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 ![]() |
|
|
![]()
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
|
|
|
![]()
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 ![]() |
|
|
![]()
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 -------------------- |
|
|
![]()
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 ? |
|
|
![]()
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.
-------------------- |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 03:06 |