Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: MVC - odmiany
Forum PHP.pl > Forum > PHP > Object-oriented programming
morpheouss
Witam Państwa w kolejnym nic nie wnoszącym temacie winksmiley.jpg

Dzis postanowiłem zastanowić się nad różnicą pomiędzy MVC a HMVC, jednak w internecie nic ciekawego znaleźć na ten temat nei moglem. Jest troche informacji na ten temat, jednak większość odosi się do Javy. Jedyne czego się dowiedziałem to to, iż jest jakś dispatcher który pozwala na wywołanie kolejnych kontrolerów. A może coś pokręciłem?

Czy ktoś z Państwa mógłby mi wytłumaczyć czym tak naprawde różni się MVC od HMVC oraz co to jest ten dispacher?
wookieb
Dispatcher jest to klasa która umożliwia ci stworzenie własnych eventów dla twojej klasy.
Tak samo jak masz eventy np w javascripcie. onClick, onMouseDown itd to dzieki event dispatcherowi mozesz sam definiowac zdarzenia.

W phpie da się to zaimplementować jednak mało osób to stosuje z tego względu, że jakoś nie ma na to wielkiej potrzeby. Ale moze w przyszłości sie to zmieni.

O EventDispatcher jest dużo. Korzystałem z niego we flashu. I polecam zajrzeć do tamtejszej dokumentacji.
morpheouss
http://code.google.com/p/kohana-mptt/sourc...nk/Dispatch.php

Z tego co udało mi się dowiedzieć jest to dispatcher, jednak coś się nie zgadza w porównaniu z opisem jaki przedstawiłes. Nie potrafię sobie wyobrazić jak powyższy kod miałby umożliwić mi tworzenie wlasnych zdarzeń.
marcio
http://learn.kohanaphp.com/2008/03/05/hmvc-in-kohana/
Przyklad z kohany i jak uzyc link powiazany z tym wyzej
morpheouss
Kontroler zwraca obiekt dispatchera, ale co to tak wlaściwie jest? Czym tak na prawdę różni się MVC od HMVC?

Kod
Xobb pointed out at the forums that this is not strictly HMVC

Czy ktoś jest w stanie wyjasnić dlaczego?
golaod
Ja chyba gdzieś kiedyś czytałem, że jednym z dodatków w hmvc jest między innymi powiązania między kontrolerami. Normalnie Będąc w kontrolerze X w sposób przystępny nie uruchomisz kontrolera Y, a to co kiedyś mi się w łapach znalazło to właśnie opis czegoś takiego zatytułowany "hmvc".

Bez karania proszę...to było dawno i może coś pogmatwałem tongue.gif
morpheouss
Mam rozumieć, że tak na prawdę nikt na tym forum nie zna odpowiedzi na zadane przeze mnie pytania? sad.gif
golaod
up @belliash:
Jeśli to do mnie było to już tłumaczę.
Dwa pliki:
user.php
  1. <?php
  2. Class User extends Controller{
  3.  
  4.  public function do_something(){
  5.    echo 'Aloha';
  6.  }
  7.  
  8. }
  9. ?>

deep.php
  1. <?php
  2. Class Deep extends Controller{
  3.  
  4.  public function niaf_niaf(){
  5.    User::do_something();
  6.  }
  7.  
  8. }
  9. ?>
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.