Page 73 - 4787
P. 73

для роботи з інтерфейсом користувача. Об'єкти предметної області не містять

               коду візуалізації, зате містять всю бізнеслогіку. У результаті складна програма


               розділяється  на  частини,  які  простіше  модифікувати.  Крім  того,  з'являється


               можливість існування декількох уявлень однієї і тієї ж бізнес-логіки. Той, хто

               має досвід роботи з об'єктами, користується таким поділом інстинктивно, і воно


               довело свою цінність.


                       Але  багато  з  тих,  хто  працює  з  GUI,  що  не  дотримуються  такої

               архітектури.  У  більшості  середовищ  з  GUI  «клієнт  /  сервер»  реалізована


               дволанкова  конструкція:  дані  містяться  в  базі  даних,  а  логіка  знаходиться  в

               класах  уявлення.  Середовище  часто  нав'язує  такий  стиль  проектування,


               заважаючи помістити логіку в інше місце.


                      Алгоритм утворення інтерфейсу для представлення бізнес логіки. .

                      • Створіть для кожного вікна клас предметної області.


                      • Якщо є сітка, створіть клас, що представляє рядки цієї сітки.


                      Використовуйте для вікна колекцію з класу предметної області, яка буде

               зберігати об'єкти предметної області з рядка.


                      •  Вивчіть  дані  у  вікні.  Якщо  вони  застосовуються  тільки  для  цілей


               інтерфейсу  користувача,  залиште  їх  у  вікні.  Якщо  вони  задіяні  в  логіці

               предметної  області,  але  фактично  не  відображаються  у  вікні,  застосуйте


               «Переміщення методу»  (Move Method), щоб перенести  їх в  об'єкт предметної

               області.  Якщо  ж  вони  фігурують  як  в  інтерфейсі  користувача  ,  так  і  в  логіці


               предметної  області  застосуйте  «Дублювання  видимих  даних»  (Duplicate


               Observed Data) , щоб вони перебували в обох місцях і були синхронізовані .


                      •  Вивчіть  логіку  в  класі  уявлення.  Скористайтеся  «Виділенням  методу»

               (Extract Method) для відділення логіки, яка відноситься до подання, від логіки




                                                                                                             72
   68   69   70   71   72   73   74   75   76   77   78