Page 52 - 4252
P. 52

$ This-> data = false;
                  }
                  function calculate ($ name) {
                  $ This-> data [] = $ name;
                  $ Len = strlen ($ name);
                  if ($ len == 3)
                  $ This-> data [] = 'стислість - сестра таланту';
                  else
                  if (($ len> 3) & & ($ len <6))
                  $ This-> data [] = '... немає особливого значення';
                  else
                  $ This-> data [] = 'неймовірно багата фантазія батьків';
                  }
                  function getData () {
                  if ($ this-> data)
                  return $ this-> data;
                  else
                  return 'Обчислення не проведені!';
                  }
                  } / / Class Model

                  $ Controller = new Controller ();
                  $ Controller-> processData ();
                  ?>
                  Отже, ми отримали найпростішу MVC-систему. Виділимо позитивні і не-
            гативні сторони:
                  До мінусів можна віднести
                  • Збільшення обсягу коду
                  • Необхідність дотримання заздалегідь заданого інтерфейсу
                  • Для підтримки розробки потрібні більш кваліфіковані фахівці
                  Остання вимога до нашого прикладу не відноситься, але для реальних сис-
            тем воно досить актуально.
                  До плюсів віднесемо наступне:
                  • Безсумнівно більш гнучкий код
                  • Можливість повторного використання кожної з трьох складових частин
            MVC
                  • Безболісна заміна моделі (інші алгоритми розрахунку, способу зберігання
            даних і т.д.)
                  • Досить просто перейти від одного подання, до іншого (від HTML до XML
            або JSON)
                  Треба сказати, що код прикладу не ідеальний. У ньому є простори для ре-
            факторингу (незважаючи на те, що він займає трохи більше ста рядків). Скажі-
            мо, у прикладі бере участь всього лише одна змінна, яка надходить від користу-
            вача (name), але що якщо їх буде багато?


                                                           51
   47   48   49   50   51   52   53   54   55