![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Pracuję nad galerią zdjęć. Galeria posiada panel użytkownika do wprowadzania zdjęć oraz front (gdzie zdjęcia są wyświetlane).
Zastanawiam się czy potrzeba jest do tego baza danych. W tym momencie do pobierania zdjęć wykorzystuje DirectoryIterator, który przeszukuje katalog ze zdjęciami. Czy takie rozwiązanie jest: 1. Bezpieczne? 2. Czy jest bardziej eleganckie od pobierania nazw zdjęć z bazy danych? 3. Czy to jest dobry przykład do wykorzystania wzorca Iterator? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 2 Dołączył: 25.08.2009 Ostrzeżenie: (0%) ![]() ![]() |
Odczytywanie zawartości katalogu co uruchomienie skryptu nie jest zbyt optymalne, dodatkowo jesteś ograniczony co do ilości danych które możesz zapisać wraz ze zdjęciem.
Jeżeli nie chcesz wykorzystywać bazy danych, możesz ograniczyć się do pojedynczego pliku CSV z informacjami odnośnie zdjęć oraz trzymać w nim wiele dodatkowych informacji. Odnośnie pytań: 1. To zależy od ciebie. 2. Olać elegancję, ma być wydajne i wygodne dla ciebie w przyszłości. 3. Jeżeli jest wydajne i nie ma możliwości zastąpić rozwiązania innym podobnym, to pewnie tak (IMG:style_emoticons/default/wink.gif) |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
1. Nie ma nic niebezpiecznego w używaniu iteratora (tzn. jeszcze zależy w jaki sposób go używasz, użytkownik ma jakiś wpływ na ścieżkę? Ale generalnie nie ma się czego bać).
2. Pobieranie nazw zdjęć z bazy danych ma tę zaletę, że możesz np. przypisać zdjęcie do użytkownika, dodawać różnego rodzaju rangi (ten user widzi, inny nie widzi). Wszystko generalnie zależy od tego czemu i jak ta galeria służy. Jeśli iterator spełnia swoje zadanie, to nie potrzebujesz angażować do tego bazy danych. 3. Dobry. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 50 Pomógł: 0 Dołączył: 9.04.2013 Ostrzeżenie: (0%) ![]() ![]() |
Odczytywanie zawartości katalogu co uruchomienie skryptu nie jest zbyt optymalne, dodatkowo jesteś ograniczony co do ilości danych które możesz zapisać wraz ze zdjęciem. Jeżeli nie chcesz wykorzystywać bazy danych, możesz ograniczyć się do pojedynczego pliku CSV z informacjami odnośnie zdjęć oraz trzymać w nim wiele dodatkowych informacji. Odnośnie pytań: 1. To zależy od ciebie. 2. Olać elegancję, ma być wydajne i wygodne dla ciebie w przyszłości. 3. Jeżeli jest wydajne i nie ma możliwości zastąpić rozwiązania innym podobnym, to pewnie tak (IMG:style_emoticons/default/wink.gif) Nie ma problemu - mogę skorzystać z bazy danych. Czyli, jeżeli chodzi o wydajność to przeszukiwanie katalogu za pomocą DirectoryIterator jest mniej wydajne niż odczyt z bazy danych? "...dodatkowo jesteś ograniczony co do ilości danych które możesz zapisać wraz ze zdjęciem." Nie rozumiem o jakie ograniczenie chodzi? 1. Nie ma nic niebezpiecznego w używaniu iteratora (tzn. jeszcze zależy w jaki sposób go używasz, użytkownik ma jakiś wpływ na ścieżkę? Ale generalnie nie ma się czego bać). 2. Pobieranie nazw zdjęć z bazy danych ma tę zaletę, że możesz np. przypisać zdjęcie do użytkownika, dodawać różnego rodzaju rangi (ten user widzi, inny nie widzi). Wszystko generalnie zależy od tego czemu i jak ta galeria służy. Jeśli iterator spełnia swoje zadanie, to nie potrzebujesz angażować do tego bazy danych. 3. Dobry. Nie - ścieżka jest zapisana w stałej. Czyli rozwiązanie z iteratorem jest lepsze? tzn bardziej wydajne np? |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 933 Pomógł: 460 Dołączył: 2.04.2010 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Szczerze mówiąc nie mam pojęcia jak oba te rozwiązania różnią się wydajnością. Możesz to sprawdzić samemu.
Porównaj wartość milisekund przy użyciu zapytania do bazy i przy użyciu iteratora. Które zwróci mniejszą liczbę jest szybsze, a co za tym idzie bardziej korzystne względem czasu wykonania. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 12.10.2025 - 18:50 |