kicaj
8.09.2004, 20:32:56
Rozchodzi sie o portal... Powiedzmy ze pierwsza jego wersja byla napisana procedualnie (zadnych klas, duza ilosc prostych zapytan SQL), wszystko pomieszane z HTML'em. Teraz zamierzam wszystko przebudowac, problem w tym ze niechce pisac systemu szablonow (z "jakis" tam powodów). Czy jest sens pisac obiektowo mieszajac kod php z HTML? Czy zostac przy pisaniu "normalnym"?
Bakus
8.09.2004, 22:06:47
Ja zazwyczaj tworzę klasę odpowiedzialną za wybieranie danych i później tworzę pliki w HTMLu w których dane są poprostu wstawiane w odpowiednie miejsca...
Takie rozwiązanie tworzy możliwość w miarę szybkiej zmiany zarówno wyglądu jak i systemu generowania zawartości.
Ostatnio mam wiele do czynienia z MamboOS i muszę przyznać, że coraz bardziej podoba mi się jego budowa - dane generowane są w skromnym "ubraniu" z XHTMLa, póżniej wstawiane są do szablonu (jeden plik php) jako moduły (menu, zawartość strony, stopka). Wszytsko ma z góry określone nazwy klas (CSS) i to nimi w razie potrzeby dokonuje się zmian...
wszystko zależy od tego, co nowego chcesz wymyślić

mam na myśli klasy...
co to ma wspólnego z mieszaniem z html-em?
zgadzam się z
bakus-em - php to php, bez względu na to, czy piszesz procedury, czy chcesz potraktować go obiektowo, a html (dla przyspieszenia) tylko do formatowania ogólnego wyglądu (+ css) i wyświetlania wyników
adamos
10.09.2004, 09:57:01
Właśnie wszystko zależy ... ?
Bo jesli nie masz zamiaru wykoszystywać wszystkich opcji obiektowości a tylko tworzeć klasę jaka biblioteke np. funkcji, to może to zostać wszystko zrobine proceduralnie.
Jedynie - jeśli masz zamiar przebudować stronkę na nadającą sie na modyfikacje (szybkie) to zro sobie kilka rodzaji bibliotek i ja radze (ale to tylko moje zdanie) jakieś szablony np. Smarty - masz jeden plik php a do niego ladujesz odpowiedni szablon. To jest aż za proste

Pozdrawiam
anas
10.09.2004, 11:23:54
Hej.
W tej chwili zajmuje się dwoma dość dużymi projektami i coraz bardziej przekonuje się do obiektówki w php. Pamiętam jak kilka lat temu próbowałem napisać statystyki obiektowo w php i wersja 4 powodowała nielada problemy, musiałem w pewnych fragmentach wrócić do pisania wszystkiego proceduralnie. Miałem problem z przekazaniem nazwy metody już istniejącego obiektu do funkcji: register_shutdown_function(), z tego co pamiętam, później rozwiązano ten problem i przekazuje się tablice z referencją do obiektu i nazwą metody, ale wracając do tematu:
dziś php, nawet to w wersji 4 daje już wystarczające możliwości, aby pisać obiektowo, a co najważniejsze projektować aplikacje obiektowo - wyobraź sobie, że twój portal to tak naprawdę skupisko pewnych obiektów: newsy, sonda, artykuły, etc..., obiekty te wrzucasz w pewne środowisko, które kontroluje zależności między nimi itd. Pisząc odpowiednie klasy staraj się oddzielać warstwę prezentacyjną od danych które dostarczają, najlpiej jak twoje obiekty będą wypluwały dane jako niesformatowane, a dopiero twój silnik(środowisko które stowrzysz dla tych obiektów), będzie wszystko formatowało i podawało w odpowiedniej formie. Co Ci to da? Będziesz mógł wykorzystać swój kod przy innych projektach, łatwo go modyfikować i uzupełniać o nowe pomysły.
Dobrze byłoby zainteresować się MVC - przy większych projektach(takich jak np. portal) wydaje się dobrym pomysłem wykorzystanie dóbr tegoż wzorca.
Jeśli to Cię nie przekonuje, to poszperaj w dziale artykuły, zarówne obiektówka w php, jak i MVC zostały opisane.
pozdrawiam
anas