Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Akcje, Kontrolery, Pluginy, Moduły
Forum PHP.pl > Forum > PHP > Pro > Archiwum Pro
eai
Witam.

Sporo ostatnio czytałem artykułów na temat MVC kontrolerach WebRequestach itp... ale nie znalazłem żadnego artykułu który by to wszystko mniej więcej uporządkował.

Jestem na etapie pisania dość sporego projektu i chciałbym żeby kod który oddam w ręce zleceniodawcy był czysty, przejrzysty i logiczny.

Całość podzieliłem tak:

dir _Actions
Surowy podział klas do zarządzania jakimiś elementami (Data i czas; Upload plików; Obrazki - formatowanie, zmniejszanie; handler MySql itp.. itd..)

dir _Controller
Rozpoznaje żadanie, odwołuje się do odpowiedniego modułu wywołując żądanie. Pobiera wynik i ubiera go w html. Na koniec zwraca wynik do przeglądarki

dir _Modules
Jak sama nazwa wskazuje Moduły, czyli operacje na bazach danych wykorzystanie Pluginów i Actions, zwracanie wyników itp.

dir _Plugins
Klasy wykorzystujące _Actions np połaczenie Uploadu plików i formatowania obrazków. co w połączeniu daje nam Uploader obrazków który będzie pomniejszał i formatował obrazki lub Sesion Handler (korzystający z _actions/mysql itd..

dir _Template
katalog z plikami .tpl


Mam problem z oddzieleniem klasy samego widoku... głowie się jak narazie bez rezulatatu.

Ogólnie tak to widze, przynajmniej po częsci.
Co wy na to ?
athabus
Miło słyszeć, że ktoś ma podobne problemy biggrin.gif

Ja też właśnie próbuje zapanowac nad chaosem. W moim przypadku bardzo pomocny okazał się artykuł z php Solutions o tworzenie szkieletu frameworka. Znajdziesz go na serwisie php.pl tutaj

Jeśli masz konto na php Solutions to polecem sciągnięcie tego artykuły w pdf z ich strony wraz z kodem źródłowym -> jakoś łatwiej się czyta.
NuLL
Cytat
  • app
    • actions
    • config
    • controllers
    • includes
    • locale
      • pl
        • messages
        • static
    • sources
      • AjaxPlugs
      • AdvAjaxDefs
      • ActiveRecords
      • DataMapping
      • InputDefinitions
    • www
      • gfx
      • js
      • css
      • templates
    • var
      • templates
      • lang
      • data
  • merlin
    • core
      • autoload
      • context
      • debug
      • handlers
      • mvc
      • plugins
      • user
    • components
      • config
      • database
      • filesystem
      • lang
      • image
      • dateTime
      • ez
      • layout
      • utils
      • feed
      • search
      • repository
      • zend
  • index.php
Sorry ze nie jest alfabetycznie - wypisywalem zagladajac do folderow Rkingsmiley.png
kszychu
Ja tylko w kwestii formalnej: pozwoliłem sobie przenieść wątek.
envp
a nie lepiej jest oddzielic katalogi z aplikacja (czyli np model i widok) od rdzenia framewroka ?
czyli np.

core
|_lib(tu wszystkie Konrolery, Routery i inne gadziska)
|_exceptions (klasy z wyjatkami)
|_interfaces (interfejsy)
|_conf (jakis konfig, jesli potrzbujemy)

app
|_template
|_model
|_actions



mysle ze to jest dosyc rozsadne bo w miare rozrastania sie projektu mamy 'czarno na bialym' gdzie dodac pliki od naszej aplikacji, a gdzie znajduje sie jadro calego systemu...
Ociu
Kod
library
- addons
   -> Filters
   -> Plugins
- Zeke
   -> authorize
   -> autoload
   -> cache
   -> collection
   -> config
   -> control
   -> database
   -> logging
   -> exception
   -> file
   -> filter
   -> javascript
   -> routing
   -> view
   -> web


Kod
modules
- helloworld
   -> model
   -> view
   -> controller


Ja tak zrobiłem.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.