Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Co jądro, a co moduły, czy to w ogóle potrzebne?
Asmox
post
Post #1





Grupa: Zarejestrowani
Postów: 359
Pomógł: 12
Dołączył: 16.01.2009

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


Witam
znam już nawet nieźle PHP i chciałem stworzyć swoją prawdziwą stronę, a może CMSa, na którym zbudowałbym moją witrynę. Postanowiłem odpuścić sobie pliki z treściami stron i wszystko oprzeć na bazie danych. Czytając nieco o czymś takim jak jądro aplikacji doszedłem do wniosku... że w ogóle tego nie rozumiem. Znaczy rozumiem tylko teorię - czyli że jest to taki najważniejszy element aplikacji, na nim się wszystko opiera, przez nie się wszystko uruchamia itd... natomiast moduły to takie małe dodatki, które wzbogacają funkcjonalność strony o ciekawe dodatki.
I to wszystko. Powiem szczerze, że często z analizą nowych rozwiązań jest tak, że nie mam do nich przykładów i bardzo szybko się gubię. Czy mógłby mi ktoś pokazać swoje przykładowe rozwiązanie? (1)
Chciałem też dojść co jest elementem jądra, a co tylko modułem. Jak dojdzie do tego MVC to już w ogóle się gubię.
Oczywiście moja pozycja w tej wypowiedzi wygląda na bardzo nieobeznaną - aż się prosi żeby odpisać, żeby sobie popatrzeć w googlach (IMG:style_emoticons/default/biggrin.gif) Jednakże ja już patrzyłem np. na temat Jak pisać jądro - i znalazłem tam np. wzmiankę o DB co w MVC jest chyba klasyfikowane jako element Modelu i Smarty, czy jakiś inny system szablonowy co jest Widokiem, więc tak jakby się mieszało. Czy dobrze rozumiem, że albo się robi MVC albo jądro + moduły? (2)
I ostatnie pytanie: Kiedy opłaca się pisać aplikację w ten sposób (jądro + moduły)? (3)
Stawiałem numerki przy pytaniach, aby ktoś, kto chciałby mi odpowiedzieć wiedział o co tak naprawdę mi chodzi.
Pozdrawiam
Asmox
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
marcio
post
Post #2





Grupa: Zarejestrowani
Postów: 2 291
Pomógł: 156
Dołączył: 23.09.2007
Skąd: ITALY-MILAN

Ostrzeżenie: (10%)
X----


Jadro to caly routing,dispatcher,frontcontroller(ktory jak dla mnie jest opcjonalny),ladowanie sciezek,config i ladowanie wszystkich komponentow itp....
U mnie klasa do ladowania wszystkiego wyglada tak:
  1. <?php
  2.  
  3. require_once(DIR_LIBRARY.'PluginFilter.php');
  4.  
  5. class Plugin {
  6.  
  7.  
  8. private $cfg;
  9.  
  10.  
  11. public function __construct() {
  12.  
  13. $this -> cfg = Loader::load('Cfg');
  14.  
  15. }
  16.  
  17. public function LoadPlugin($plugins, $action) {
  18.  
  19.  
  20. foreach($plugins as $key => $PluginName) {
  21.  
  22. if(file_exists(DIR_PLUGINS_CTRL.$PluginName.'.php')) {
  23.  
  24. require_once(DIR_PLUGINS_CTRL.$PluginName.'.php');
  25.  
  26. }
  27.  
  28. else if(file_exists(DIR_COMPONENTS_CTRL.$PluginName.'.php')) {
  29.  
  30. require_once(DIR_COMPONENTS_CTRL.$PluginName.'.php');
  31.  
  32. }
  33.  
  34. else {
  35.  
  36. Controller::Error(405);
  37.  
  38. }
  39.  
  40.  
  41. $obj = new $PluginName();
  42.  
  43. if(PluginFilter::CheckFilter($PluginName)) {
  44.  
  45. $html[$key] = $obj -> LoadFilter($PluginName);
  46. $PluginAction = (method_exists($obj, $action)) ? '_'.$action : '_'.$this -> cfg -> action;
  47. $html[$key] .= $obj -> $PluginAction();
  48. $html[$key] .= $obj -> RemoveFilter($PluginName);
  49.  
  50. }
  51.  
  52. else {
  53.  
  54. $PluginAction = (method_exists($obj, $action)) ? $action : $this -> cfg -> action;
  55. $html[$key] = $obj -> $PluginAction();
  56.  
  57. }
  58.  
  59.  
  60. }
  61.  
  62. return $html;
  63.  
  64. }
  65.  
  66.  
  67. }
  68.  
  69.  
  70. ?>

Musze ja jeszcze rozszerzyc, no i korzysta jeszcze z klasy PluginFIlter ktora laduje filtry i ich metody OnLoad,pre,post,metoda,OnUnload
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 09:59