![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 18.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
chciałbym przeglądnąć i przeanalizować kod aplikacji napisanej w php obiektowym. Wydaje mi się że w ten sposób najlepiej bym zrozumiał cały proces tworzenia aplikacji obiektowych. Chodzi mi o przesyłanie danych wyświetlanie ich obsługę bazy danych. Czy wiecie skąd można by było taką przykładową aplikacje podejrzeć, jak jest zbudowana i zaimplementowana?
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
google php oop examples mysql
![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 1 597 Pomógł: 30 Dołączył: 19.02.2003 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Zacznij pisać używając jakiegoś frameworka to zrozumiesz jego budowę
![]() -------------------- Zapraszam na mój php blog, tworzenie stron.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 18.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
google php oop examples mysql ![]() Tak, to już przeglądałem. Ale nie do końca się rozumiemy. Nie chodzi mi o jakieś fragmenty jak połączenie z bazą, tworzenie obiektu, zwierzęta, koty itd itp. Chodzi mi o konkretną apl żeby można było zobaczyć jak to wszystko wygląda w całości i żeby zobaczyć jak powinna wyglądać poprawnie zrobiona apl w obiektowym php, jak te wszystkie "części" aplikacji ze sobą współgrają. Zacznij pisać używając jakiegoś frameworka to zrozumiesz jego budowę ![]() Czy uważasz że lepiej zacząć obiektowe programowanie od razu od frameworka? Znajomy ma książke do ZF Pana Gajdy. Tylko właśnie czy lepiej zacząć od czystego PHP czy Frameworka? |
|
|
![]()
Post
#5
|
|
![]() Grupa: Nieautoryzowani Postów: 2 249 Pomógł: 305 Dołączył: 2.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Najpierw zacznij od przyswojenia teorii, popartej czytaniem i analizowaniem kodu źródłowego.
-------------------- Google knows the answer...
|
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 3 034 Pomógł: 366 Dołączył: 24.05.2012 Ostrzeżenie: (0%) ![]() ![]() |
Tak wgl to czym wdg Ciebie są frameworki? przecież one są pisane w tym samym php, jedynie zaimplementowany jest w nich model projektowy mvc, a ponadto na nich opiera się te Twoje konkretne aplikacje... a oop z samego kodu się nie nauczysz bo jego można napisać na tyle sposobów ile jest programistów.. Trzeba zrozumieć czym wgl ono jest a wtedy tego typu pytania nie bd przychodziły Ci do głowy
![]() |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 44 Pomógł: 0 Dołączył: 18.02.2008 Ostrzeżenie: (0%) ![]() ![]() |
teorie, podstawy znam, ale chodzi mi o taki ogólny szkielet prawidłowo napisanej apl a OOp
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 4 291 Pomógł: 829 Dołączył: 14.02.2009 Skąd: łódź Ostrzeżenie: (0%) ![]() ![]() |
No to właśnie zajrzyj do jakiegoś frameworka, bo tam można dobry przykład OOP
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 984 Pomógł: 41 Dołączył: 16.03.2002 Skąd: Płock Ostrzeżenie: (0%) ![]() ![]() |
1) symfony2 - http://symfony.com/doc/current/cookbook/index.html
2) Zend Framework2 - http://framework.zend.com/manual/2.2/en/us...e/overview.html -------------------- eh, co polska wódka to polska wódka
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 239 Pomógł: 0 Dołączył: 2.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
dołączam się do prośby - nie ma nic prostszego?
też szukam najbanalniejszego frameworka, w którym dla testu byłby tylko jeden moduł próbuję pisać swój własny ( http://www.speedyshare.com/FHVGe/mvc.rar ), ale stanąłem na widokach i nie wiem co dalej :/ |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 984 Pomógł: 41 Dołączył: 16.03.2002 Skąd: Płock Ostrzeżenie: (0%) ![]() ![]() |
Laravel jest hitem ostatnich miesięcy...
http://laravel.com/docs/quick Ten post edytował em1X 21.01.2014, 23:09:59 -------------------- eh, co polska wódka to polska wódka
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
próbuję pisać swój własny ( http://www.speedyshare.com/FHVGe/mvc.rar ), ale stanąłem na widokach i nie wiem co dalej :/ przepraszam, że nie mam czasu na przeglądanie kodu więc rzucę tylko hasłami jeśli chodzi o widoki gdzie samo PHP jest w sumie systemem szablonów i jako takie były jego pierwsze w sumie początki... luknij po prostu na poniższe tematy jako wstęp jeśli na siłę próbujesz zrozumieć co się dzieje w gotowych FW, a dalej po prostu skorzystaj z jakiegoś gotowca ;] PHP Template, Includowanie pliku [PHP]Podstawy obiektowości, na przykładzie bloga -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 239 Pomógł: 0 Dołączył: 2.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
generalnie w tym pliku: http://www.speedyshare.com/FHVGe/mvc.rar
wykorzystałem bardzo podobny kod, o którym pisałeś w jednym w tametów ja jednak szukam pomysłu na jego lepsze wykorzystanie (bądź po prostu poprawne wykorzystanie) 1. powiedzmy, że mam dwa główne szablony: - zielony.php - niebieski.php oba są tak naprawdę ramami strony, mają top, lewe i prawe menu, stopkę, a na środku (content) jest jedynie zmienna $content, która czeka na wartość 2. następnie mam kilka plików wizualnych, np. news.php albo info.php, w których jest div i kilka zmiennych typu $title, $text, $photo controller ładuje plik wizualizacyjny newsa, za pomocą skryptu zmienne są zamieniane przez wartości "wyplute" przez model 3. dopiero wtedy to, o o czym mowa w punkcie 2. jest ładowane do tego, o czym mowa w punkcie 1. i to mi się nie podoba, bo Twoja funkcja jest wykorzystywana dwukrotnie (dokładnie tak, jak w moim skrypcie, do którego linka podałem na początku postu) oczywiście mógłbym to zignorować i budować aplikację dalej, ale sądzę, że jak w końcu postanowiłem porządnie programować, to nie mogę sobie na to pozwolić |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 984 Pomógł: 41 Dołączył: 16.03.2002 Skąd: Płock Ostrzeżenie: (0%) ![]() ![]() |
Jak szukasz lepszych/poprawnych, to przestań pisać własne rozwiązania i wynajdywać koło od początku, tylko skorzystaj z gotowych/sprawdzonych/testowanych rozwiązań.
-------------------- eh, co polska wódka to polska wódka
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 239 Pomógł: 0 Dołączył: 2.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
rozumiem, czyli Wy robicie dokładnie tak samo?
w kontrolerze ładujecie widok contentu, zamieniacie zmienne na wartości "wyplute" przez model następnie całość wysyłacie również w kontrolerze do ogólnych ram szablonu? piszę coś swojego od podstaw i nie chcę na samym początku zrobić mega bubla |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
... i to mi się nie podoba, bo Twoja funkcja jest wykorzystywana dwukrotnie (dokładnie tak, jak w moim skrypcie, do którego linka podałem na początku postu) oczywiście mógłbym to zignorować i budować aplikację dalej, ale sądzę, że jak w końcu postanowiłem porządnie programować, to nie mogę sobie na to pozwolić włączać/wyłączać szablon/widok, zagłębiać szablony/widoki możesz tylko buforując strumienie wyjścia przez ob_start itd... przejrzyj kody źródłowe popularnych FW klas z widokami które dają znacznie większe możliwości ale też i są znacznie bardziej rozbudowane... jak dokopiesz się do podstawowych rozwiązań znajdziesz tam kombinację ob_start itd... OOP - to programowanie zorientowane obiektowo, wykonywanie kodu jak się analizuje jest jakby od wejścia w dół/głąb porównując do programowania proceduralnego/liniowego... przy OOP możesz nawet odwrócić sterowanie, daje to wiele możliwości, ale podstawowy problem leży w tym, iż wielu myli OOP z programowaniem obiektowym, gdzie to nie do końca to samo... jeśli masz kilka warstw widoku to musisz kilka razy zbuforować wyjście... przykład pseudokodu // TRESC ob_start(); $tresc = ob_get_contents(); ob_end_clean(); // SZABLON ob_start(); ... echo $tresc; ... $strona = ob_get_contents(); ob_end_clean(); niby wydaje się to drugie buforowanie nie potrzebne, jednak jeśli np. widoki masz proste gdzie nie popełnisz błędów a dodatkowo chcesz przechwycić wyświetlane błędy by je ładnie wyświetlić czy coś w ten deseń np. jak w ZF to będzie Ci potrzebne jeszcze jedno buforowanie... oczywiście jeślii nie zamierzasz wyświetlać danego widoku czy go generować to go nie wyświetlasz... -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 239 Pomógł: 0 Dołączył: 2.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
ok, teraz rozumiem
czyli wychodzi na to, że wykonałem to poprwnie w moim szkielecie - sądziłem, że może istnieje jakieś lepsze rozwiązanie ostatnio widziałem coś takiego, że ładowany był tylko content, ale on z kolei miał na początku i na końcu indludowane pliki typu "top.php" i "footer.php" ale wydaje mi się, że to gorsze rozwiązanie i tak przy okazji, czym się różni programowanie obiektowe od OOP? skoro OOP to skróc od object-oriented programming, co w tłumaczeniu brzmi właśnie programowanie obiektowe |
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 1 332 Pomógł: 294 Dołączył: 12.10.2008 Skąd: Olkusz Ostrzeżenie: (0%) ![]() ![]() |
... i tak przy okazji, czym się różni programowanie obiektowe od OOP? skoro OOP to skróc od object-oriented programming, co w tłumaczeniu brzmi właśnie programowanie obiektowe OOP (ang. object-oriented programming) (dosłowne tłum. to "programowanie zorientowane obiektowo") jest rozwinięciem poprzednich technik (prog. liniowe, proceduralne, i właśnie obiektowe). OOP to jest bardziej filozofia budowania aplikacji, niż metoda programowania. Jako tłumaczenie OOP można by też napisać, że jest to "myślenie zorientowane obiektowo". OOP zawsze też jest programowaniem obiektowym, ale programowanie obietowe nie koniecznie musi być programowaniem zorientowanym obiektowo... korzystając np. z PDO możesz rozszerzyć klasę i ją dostosować do własnych potrzeb programując obiektowo, ale obiekty te mogą być jakby luźne w aplikacji i większość tej aplikacji może być napisana z wykorzystaniem kodu poprzez rozszerzenie klas, tworzenie potrzebnych instancji obiektu ale aplikacja może być napisana jakby w stylu proceduralnym z wykorzystaniem tych obiektów... w OOP najczęściej na wejściu masz jeden obiekt/klasę startujący, gdzie przekazujesz sterowanie aplikacji i zagłębiasz się w głąb hierarchi elementów kompozycji (dynamiczne dodatkowe obiekty najczęściej będące składowymi obiektu) lub sterując dynamicznie aplikacją tworzysz w metodach odpowiednie obiekty gdzie znowu możesz się zagłębiać, taka struktura drzewiasta jakby inne if'y dla mnie... zależy jak aplikacja jest zaprojektowana ale w ten sposób często można też odwrócić sterowanie jeśli coś po drodze jakiś obiekt niżej w hierarchii zadecyduje (typowe kontrolery np.), przy aplikacjach pisanych w C++ czy JAVA wiele obiektów sterujących najczęściej będzie utworzona raz i zapisana w zmiennych obiektu nadrzędnego (kompozycja) gdyż aplikacje tego typu najczęściej działają inaczej niż typowe aplikacje PHP, na ogół po prostu stale (wyjątkiem będzie napewno większość aplikacji konsolowych)... JAVA niby wymusza paradygmat OOP przez utworzenie na start obiektu z metodą main(...), co nie znaczy, że dalej wszyscy będą pisali aplikację w stylu OOP... sorki, że się rozpisałem i nie wiem, czy mnie zrozumiałeś ;p -------------------- Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.
|
|
|
![]()
Post
#19
|
|
![]() Grupa: Zarejestrowani Postów: 264 Pomógł: 54 Dołączył: 31.08.2007 Skąd: Tychy Ostrzeżenie: (0%) ![]() ![]() |
Może jakiś micro-framework? Silex lub Slim? Co prawda nie ma tam MVC ale przykład zbudowania aplikacji oop jak najbardziej.
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 239 Pomógł: 0 Dołączył: 2.06.2011 Ostrzeżenie: (0%) ![]() ![]() |
zgłupiałem po przeczytaniu postu zegarka84...
zrozumiałem tylko tyle, że OOP to bardziej złożona aplikacja generalnie nie można napisać frameworka opartego na schemacie MVC bez OOP - dobrze rozumiem? problem w tym, że jestem samoukiem i niektórych informatycznych pojęć nigdy nie zrozumiem :/ |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 07:53 |