Witam, to mój pierwszy post na forum, ale bardzo liczę na Waszą pomoc. Otóż dostałem od prowadzącego zajęcia taki oto mail:

"Proszę napisać referat nt "Programowanie obiektowe: metody zwykłe i statyczne - podobieństwa i różnice".
Po napisaniu i uważnym przeczytaniu referatu, proszę się zastanowić nad algorytmem z punktu 4 sprawozdania i kodem, który mu odpowiada.
Po przysłaniu referatu i wyjaśnienia, co jest źle w algorytmie, otrzyma pan ocenę 4.5. Ocena bez referatu to 2.0."
Jak widzicie jest o co walczyć. Niestety, ja nie jestem w stanie wychwycić gdzie ten błąd w moim algorytmie jest, może Wy mi pomożecie. Poniżej zamieszczam kod PHP i fragment algorytmu, w którym błąd się znajduje.

  1. <?php
  2.  
  3. require_once "./View/Gui.php";
  4. /*
  5.  * To change this template, choose Tools | Templates
  6.  * and open the template in the editor.
  7.  */
  8.  
  9. /**
  10.  * Kontroller aplikacji
  11.  *
  12.  * @author rownol1
  13.  */
  14. class Controller {
  15. /**
  16.   * akcja wczytania danych z pliku
  17.   */
  18. const AKCJA_M_KONTR_WCZYTAJ_DANE_Z_PL_TXT = 1;
  19. /**
  20.   * akcja wykonania operacji na zbiorach
  21.   */
  22. const AKCJA_M_KONTR_WYKONAJ_OPER_NA_ZBIOR = 2;
  23. /*
  24.   * WyĹ›wietlenie wyniku
  25.   */
  26. const AKCJA_M_KONTR_POKAZ_WYNIK = 3;
  27. /**
  28.   * pokazanie gui.xhtml
  29.   */
  30. const AKCJA_M_KONTR_POKAZ_GUI_XHTML = 4; //1
  31. /**
  32.   * Wyznacza operacjÄ™ do wykonania
  33.   * @return int akcja, jedna ze staĹ‚ych klasy
  34.   */
  35.  
  36. protected function getAction() {
  37. if (isset($_REQUEST['wczytaj'])) {
  38. if ($_REQUEST['wczytaj'] == "Wczytaj") {
  39. return self::AKCJA_M_KONTR_WCZYTAJ_DANE_Z_PL_TXT;
  40. }
  41. }
  42. if (isset($_REQUEST['oblicz'])) {
  43. if ($_REQUEST['oblicz'] == "Oblicz") {
  44. return self::AKCJA_M_KONTR_WYKONAJ_OPER_NA_ZBIOR;
  45. }
  46. }
  47. if (isset($_REQUEST['wyswietl'])) {
  48. if ($_REQUEST['wyswietl'] == "PokaĹĽ wynik") {
  49. return self::AKCJA_M_KONTR_POKAZ_WYNIK;
  50. }
  51. }
  52. return self::AKCJA_M_KONTR_POKAZ_GUI_XHTML; //2
  53. }
  54.  
  55. /**
  56.   * przetwarza zÄ…danie uĹĽytkownika
  57.   */
  58. public function processRequest() {
  59. $akcja = $this->getAction(); //1
  60. $gui = new Gui(); //2
  61. if ($akcja == self::AKCJA_M_KONTR_WYKONAJ_OPER_NA_ZBIOR) { //3
  62. $gui->onClickOblicz(); //3.1
  63. }
  64. if ($akcja == self::AKCJA_M_KONTR_POKAZ_WYNIK) { //4
  65. $gui->onClickPokazWynik(); //4.1
  66. }
  67. if ($akcja == self::AKCJA_M_KONTR_WCZYTAJ_DANE_Z_PL_TXT) { //5
  68. $gui->onClickWczytaj(); //5.1
  69. }
  70. $gui->show(); //6
  71. }
  72.  
  73. }
  74.  
  75. ?>



A tutaj mój algorytm metody processRequest, w którym rzekomo znajduje się błąd.

Metoda processRequest:
1. Pobrac kod zdarzenia, które wybrał uzytkownik.
2. Stworzyc nowy obiekt klasy Gui(), przypisac go do zmiennej $gui.
3. Jesli AKCJA_M_KONTR_WYKONAJ_OPER_NA_ZBIOR :
3.1. Obliczyc iloczyn (metoda onClickOblicz() klasy Gui).
4. Jesli AKCJA_M_KONTR_POKAZ_WYNIK :
1
4.1. Wyswietlic wynik obliczen (metoda onClickPokazWynik() klasy Gui).
5. Jesli AKCJA_M_KONTR_WCZYTAJ_DANE_Z_PL_TXT :
5.1. Wczytac zbiory zapisane w pliku dane.txt (metoda onClickWczytaj() klasy Gui).
6. Wywołac metode show() klasy Gui.


Z góry dzięki za pomoc. wink.gif