Page 48 - 4252
P. 48

Діаграма класів





























                  Діаграма класів містить три класи, по одному для кожного компонента ар-
            хітектури MVC. Для зручності, вони так і названі: Model, View, Controller.
                  У поданні є три функції (хоча, цілком можливо обійтися тільки лише одні-
            єю), які відповідають за відображення стану програми:
                  displayDefault () - висновок форми за замовчуванням.
                  displayError (error = false) - висновок форми з повідомленням про помилку,
                  displayResults () - висновок результатів обчислень
                  Контролер має не тільки методи, а й поля. З полями все просто: це помилка
            і результати обчислень. За замовчуванням їм задається значення false, що свід-
            чить про те, що поки немає ні помилки, ні результатів.
                  Три методи, присутні в контролері, служать для управління та перевірки.
            Метод для перевірки (validate ()) є необов'язковим, і цілком може бути відсут-
            нім, якщо ніяких перевірок не потрібно.
                  Метод  processData ()  служить  для  виведення  форми  за  замовчуванням,
            однак він включає також методuserRequest (), функціональність якого викону-
            ється  лише  в  тому  випадку,  коли  є  введені  користувачем  дані.  Саме  ме-
            тод userRequest () містить у собі функцію validate () (якщо дані не введені, от-
            же, нема чого робити їх перевірку) і, крім того, повинен міститись виклик конс-
            труктора класу моделі.
                  У моделі може міститися будь-яка кількість полів і методів. Однак два ме-
            тоди повинні бути обов'язковими (або навіть один. Як зручніше буде).
                  calculate () - функція, яка виробляє основний розрахунок
                  getData () - функція, яка повертає дані результату.
                  Поділ функцій моделі швидше смислове. Цілком достатньо створити один
            метод, який буде і рахувати, і повертати результат.
                  Повертаємося  в  метод userRequest ()  контролера.  Після  того,  як  у  ньому
            був порахований результат і повернений в тому чи іншому вигляді, його можна
            сміливо віддавати на вхід функції displayResults () класу View. Однак зауважи-

                                                           47
   43   44   45   46   47   48   49   50   51   52   53