Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Jak nauczyć się pisać obiektowo w PHP?
qrzysztof
post
Post #1





Grupa: Zarejestrowani
Postów: 220
Pomógł: 19
Dołączył: 25.04.2009

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


Witam,

Poznałem trochę PHP, wiem też co to jest programowanie obiektowe i jakie wiążą się z nim korzyści.

Mimo wszystko odczuwam pewien niedosyt. Znacie jakieś dobre tutoriale pokazujące ideę OOP na przykładach?

Nie interesują mnie takie, które od podstaw będą tłukły co to jest klasa, co to jest metoda, o dziedziczeniu itd.. (na przykładzie zwierzątek, ptaszków i motylków).

Chodzi mi raczej o takie, które pokażą konkretne zastosowania, jak najrozsądniej utworzyć klasę bazy (to zależy też oczywiście od konkretnej sytuacji), klasę sesji, użytkownika itd... jak połączyć te klasy...

Mogę co prawda analizować dostępne w necie fragmenty kodu, ale jeśli nie będą poparte objaśnieniami to kawał żmudnej roboty. Może macie jakieś linki do praktycznych przykładów OOP? Kilka przykładów znalazłem w książce "PHP 5 i MySQL - Biblia" ale to mało.

Dzięki.

Ten post edytował qrzysztof 20.05.2009, 22:17:57


--------------------
Znalazłeś sam rozwiązanie swojego problemu? Nie pisz "już wiem, do zamknięcia". Podziel się rozwiązaniem - inni będą mieli łatwiej.
Go to the top of the page
+Quote Post
uirapuru
post
Post #2





Grupa: Zarejestrowani
Postów: 182
Pomógł: 9
Dołączył: 30.04.2005

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


PHP5. Obiekty, wzorce, narzędzia. Niestety nie wydawana już i ciężko ją dorwać. Chyba, że macie jakieś źródło (kupno/pdf), to chętnie przyjmę również!
Go to the top of the page
+Quote Post
qrzysztof
post
Post #3





Grupa: Zarejestrowani
Postów: 220
Pomógł: 19
Dołączył: 25.04.2009

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


Parę książek poruszających w mniejszym lub większym stopniu tematykę OOP w PHP jest. Ale to w 95% teoria.

A jak już pisałem tutoriale z serii "class świnka extends zwierzątko function merdaj_ogonkiem()" mnie nie interesują.

Utknąłem w moim projekcie gdzieś pomiędzy kodem proceduralnym i OOP. Część napisana jest w taki sposób a część w inny. I coraz mniej mi się to co napisałem podoba.

Generalnie to umiem wyróżnić to co powinno być klasą w moim serwisie. Styk kod php - baza danych też mam oprogramowany obiektowo. Najwięcej problemów sprawia mi generowanie kodu wynikowego. To znaczy samo generowanie nie, ale ujęcie tego ładnie w obiekty.

Obecnie mam abstrakcyjną klasę Display, w której mam wszystkie stałe elementy kodu HTML oraz właściwości np tytul_strony, skrypty, arkusze_stylow, zawartosc_body i metodę wyswietl_strone() (wyświetla gotowy kod). Każda podstrona jest klasą potomną klasy Display, która w specyficzny dla siebie sposób wytwarza kod ciała strony (i przekazuje go do Display->zawartosc_body). Ustawia też wcześniej wymienione właściwości (które dziedziczy po klasie Display) jak tytuł strony, skrypty itd. Całością steruje plik index.php, który w zależności od stanów pewnych obiektów (niezwiązanych z wyświetlaniem) i zmiennych w sesji tworzy każdorazowo egzemplarz jakiegoś potomka klasy Display i wywołuje metodę wyswietl_strone().

Czy takie rozwiązanie nie jest lekko naciągane? Już teraz mam jedną klasę Display i sporo jej potomków, którzy wykorzystywani są tylko do wyświetlenia danej strony. A jak to się jeszcze rozrośnie? Czy to nie sztuka dla sztuki?

Czy to jest głupie, że praktycznie każda podstrona ma swoją klasę czy jeszcze w ramach dopuszczalnych norm?

Właśnie dlatego chętnie podejrzałbym jak to robią profesjonaliści. Czytałem o frameworkach, ale czy bez tego nie da się zrobić ładnej aplikacji na obiektach?

Ten post edytował qrzysztof 21.05.2009, 12:22:19


--------------------
Znalazłeś sam rozwiązanie swojego problemu? Nie pisz "już wiem, do zamknięcia". Podziel się rozwiązaniem - inni będą mieli łatwiej.
Go to the top of the page
+Quote Post
Crozin
post
Post #4





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Cytat
Czytałem o frameworkach, ale czy bez tego nie da się zrobić ładnej aplikacji na obiektach?
A zobacz jak pewne zagadnienia (np. wyświetlania stron) są rozwiązane w owych frameworkach.
Go to the top of the page
+Quote Post
qrzysztof
post
Post #5





Grupa: Zarejestrowani
Postów: 220
Pomógł: 19
Dołączył: 25.04.2009

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


Problem w tym, że ja chcę to zrobić we w miarę prosty sposób.

Swojego frameworka nie będę w tym celu pisał. To są na pewno skomplikowane rozwiązania jeśli zajrzeć pod maskę. Chyba tylko żeby ideę załapać.


--------------------
Znalazłeś sam rozwiązanie swojego problemu? Nie pisz "już wiem, do zamknięcia". Podziel się rozwiązaniem - inni będą mieli łatwiej.
Go to the top of the page
+Quote Post
skowron-line
post
Post #6





Grupa: Zarejestrowani
Postów: 4 340
Pomógł: 542
Dołączył: 15.01.2006
Skąd: Olsztyn/Warszawa

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


@qrzysztof pobierz sobie jakiegoś FW i zobacz jak jest napisany, albo zacznij z niego kożystać i upieczesz 2 pieczenie na jednym ogniu
- nauczysz sie FW
- i obiektowego

no i może jakąś dupeczke na to poderwiesz smile.gif


--------------------
I'm so fast that last night I turned off the light switch in my hotel room and was in bed before the room was dark - Muhammad Ali.
Peg jeżeli chcesz uprawiać sex to dzieci muszą wyjść, a jeżeli chcesz żeby był dobry ty też musisz wyjść - Al Bundy.

QueryBuilder, Mootools.net, bbcradio1::MistaJam
http://www.phpbench.com/
Go to the top of the page
+Quote Post
#luq
post
Post #7





Grupa: Zarejestrowani
Postów: 589
Pomógł: 91
Dołączył: 22.05.2008
Skąd: Gliwice

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


Napisać własnego frameworka to właśnie imho fajny pomysł, sam coś takiego piszę i powiem szczerze bardzo dużo się przy tym nauczyłem. Oczywiście to co napisałem nie jest mega nie wiadomo jakie, ale użyteczne, a nauka nie poszła w las.
Co do książek to ja tam zakupiłem ostatnio "PHP 5 Zaawansowane Programowanie". Zmieniła ona moje podejście do OOP, na pewno rozjaśniła mi kilka spraw. Ogólnie polecam.


--------------------
Moja gra - scraby.io
Go to the top of the page
+Quote Post
qrzysztof
post
Post #8





Grupa: Zarejestrowani
Postów: 220
Pomógł: 19
Dołączył: 25.04.2009

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


OK, może się trochę źle wyraziłem. Ja też liczę, że kod, który powstanie przy moim pierwszym projekcie będzie do wykorzystania przy następnych (co jest o tyle jedynie wątpliwe, że to pierwszy projekt) więc do pewnego stopnia to co piszę ma jednak mieć cechy frameworku.

Co polecilibyście na początek do analizy? Bo to moja pierwsza styczność z frameworkami będzie.

Idę zajrzeć do księgarni. O ile coś będzie to zaopatrzę się chyba jednak na wszelki wypadek w parę pozycji.


--------------------
Znalazłeś sam rozwiązanie swojego problemu? Nie pisz "już wiem, do zamknięcia". Podziel się rozwiązaniem - inni będą mieli łatwiej.
Go to the top of the page
+Quote Post
Crozin
post
Post #9





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Nie zaczynaj pisać własnego FW nie mając najmniejszego pojęcia co będziesz pisał. Poznaj trochę gotowych rozwiązań (będziesz mógł zobaczyć jak tam rozwiązano pewne zagadnienia). Poznasz je jedynie od strony użytkownika. Później w ramach ćwiczeń będziesz mógł spróbować samemu napsać coś o podobnej funkcjonalności, a przy okazji będziesz już znał jakiś FW. Ja polecam Symfony, ale jest jeszcze cała masa innych wartych uwagi.
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: 19.08.2025 - 21:36