![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 246 Pomógł: 19 Dołączył: 14.06.2007 Ostrzeżenie: (0%) ![]() ![]() |
Cześć, zrobiłem sobie takiego prostego CMSa : http://mnemonic.freevar.com
Strona jest napisana strukturalnie z wykorzystaniem php, mysql, pdo, smarty, javascript i coś tam ajaxa. Chciałbym ją teraz przepisać na obiektówke, tylko nie za bardzo wiem gdzie miałbym użyć jakiś klas, wzorców itp. Bo tak naprawdę większość kodu php na stronie, to zapytania do bazy danych. Od razu mówię,że nie chodzi mi o żadne tłumaczenia co to klasy itp. Raczej umiem pisać obiektowo, chociaż żadnych wzorców nigdy nie stosowałem. Chodzi mi jedynie jakie napisać klasy, z jakimi metodami, jak to porozdzielać na pliki i połączyć jakimiś wzorcami. Na stronie używam teraz tylko dwóch klas. Do stronicowania, i do uploadu obrazków. Login i hasło dla usera: test test Co prawda strona nie jest zupełnie skończona, trzeba poprawić galerię i rejestrację (trochę się skopała przez ajaxa), ale mam chwilowo dość javascriptu ... A tak w ogóle to jest to moja pierwsza strona, jeśli kogoś to dziwi patrząc na ilość moich postów, to cóż, większość z nich napisałem dawno mając pierwszy kontakt w programowaniem w ogóle : ) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 5.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witaj,
Wydaje mi się ( i pewnie wiele osób podzieli moje zdanie), że najlepiej byłoby spojżec na budowę popularnych frameworków. Tu odrazu jednak polecam Kohanę, ze względu na jej niewielkie rozmiary i szybką możliwości połapania się. Ciężko byłoby wypisac Ci klasy oraz metody, bo to mogłoby zając wiele stron. Moim skromnym zdanie najlepiej zacząc (opierając się o wzorzec MVC) od: - Klasa do obsługi DB lub np sięgnięcie po PEAR DB i podobne, - Kontroler (bardzo wiele przykładów), - Klasa do obsługi widoków lub np. implementacja Smarty Później możesz rozbudowywac do woli: Obsługa parametrów HTTP, ruter, obsługa sesji, klasa zarządzająca użytkownikiem, uprawnienia, walidacja danych, własna implementacja obsługi wyjątków. Swojego czasu "świat" obiegła wiadomośc, że w ramach nauki PHP młody chłopak napisał własną platformę blogową a mianowicie Hyrp. Kod jest naprawdę do ogarnięcia (jeżli dobrze pamiętam dwa kontrolery- front,admin) napisany w myśl MVC. Możesz więc śmiało sciągnąc i zobaczy kod gotowej aplikacji. Pozdrawiam! |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 226 Pomógł: 23 Dołączył: 2.10.2007 Skąd: Słupsk Ostrzeżenie: (0%) ![]() ![]() |
Moim skromnym zdanie najlepiej zacząc (opierając się o wzorzec MVC) od: - Klasa do obsługi DB lub np sięgnięcie po PEAR DB i podobne, - Kontroler (bardzo wiele przykładów), - Klasa do obsługi widoków lub np. implementacja Smarty A moim skromnym zdaniem, Model to nie tylko baza danych. To jest lekko wprowadzanie w błąd. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 5.02.2007 Ostrzeżenie: (0%) ![]() ![]() |
OK,
Żeby nie brnąc w długą dyskusję chciałem przekazac to i wydaje mi się, że tu tkwi sedno: http://wortal.php.pl/var/phppl/storage/ima...L/mvc_large.jpg http://book.cakephp.org/img/basic_mvc.png http://stannard.net.au/blog/media/simple-m...amework/mvc.gif Pozdrawiam |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 7.10.2009 Ostrzeżenie: (0%) ![]() ![]() |
Myślę, że mam pewien pomysł, proponuję najpierw zrobić klasę, która zbiera dane wejściowe:
$_GET $_POST $_SERVER $_GET $_POST $_FILES $_COOKIE $_SESSION $_REQUEST $_ENV i na ich podstawie określa, jaka podstrona będzie ładowana, potem klasa, która na podstawie danych wygenerowanych z poprzedniej klasy (np. tablica z listą plików potrzebnych do załadowana, takich jak ogólne szablony strony, zestaw instrukcji na temat pobierania danych przez PDO), dalej klasa, która jako argumenty konstruktora przyjmuje dane wygnerowane przez jedną z funkcji poprzedniej klasy i za pomocą DOM XML (klasa DOMDocument) gneruje finalny dokument XHTML. PS. Jeśli chcesz korzystać z XHTML polecam dodać deklarację XML na początku dokumentu, a dla przeglądarek nIE obsługujących XHTML dzięki zawartości pola $_SERVER['HTTP_ACCEPT'] (znamy je dzięki pierwszej klasie, o której piszę), przygotować wersję HTML/RSS/TXT. |
|
|
![]()
Post
#6
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. ![]() |
Skoro napisałeś to raz, to nie teraz tego nie przepisuj, jeśli nie masz powodu (czyli jeśli serwis działa).
Cytat Od razu mówię,że nie chodzi mi o żadne tłumaczenia co to klasy itp. Raczej umiem pisać obiektowo, chociaż żadnych wzorców nigdy nie stosowałem. Chodzi mi jedynie jakie napisać klasy, z jakimi metodami, jak to porozdzielać na pliki i połączyć jakimiś wzorcami. Polecam jakąś książkę, bo jeśli nie wiesz jakie napisać klasy jak rozdzialać na pliki i jakimi wzorcami to łączyć, to ledwie raczkujesz w tej tematyce i nasze tłumaczenia Tobie podstaw projektowych to przesada. Na forum jest pełno tematów dotyczących konkretnych zagadnień i w jaki sposób do nich podejść od strony projektowej. Zamykam |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 16:09 |