Page 99 - 4190
P. 99

функції. Таким чином, в інструментальних бібліотеках наголос зроб-
            лено на повторному використанні коду. Це об’єктно-орієнтоване ви-
            користання еквівалентних бібліотек підпрограм. Можна стверджува-
            ти,  що  проектування  інструментальної  бібліотеки  складніше,  ніж

            проектування  додатків,  тому  що  бібліотеки  повинні  використовува-
            тися в багатьох додатках, інакше вони непотрібні. До того ж автор бі-
            бліотеки не знає наперед, які специфічні вимоги будуть пред’явлені

            конкретними додатками. Тому йому необхідно уникати будь-яких пе-
            редбачень і залежностей, що здатні обмежити гнучкість бібліотеки, а
            отже, сферу її застосування та ефективність.
                  Каркас  додатків.  Каркас  –  це  набір    взаємодіючих  класів,  що

            складають дизайн, який повторно використовується для конкретного
            класу програм. Наприклад, можна створити каркас для розроблення
            графічних редакторів у різних областях: малюванні, утворенні музики

            або САПР. Може бути також каркас для створення компіляторів різ-
            них мов програмування чи утворення додатків для фінансового моде-
            лювання.

                  Каркас можна налагодити під конкретний додаток шляхом поро-
            дження  спеціалізованих  підкласів,  що  входять  у  нього,  абстрактних
            класів. Каркас диктує певну архітектуру додатку. Він визначає зага-

            льну структуру, її поділ на класи  та об’єкти, основні їх функції, ме-
            тоди взаємодії класів і об’єктів та потоки управління.  Дані параметри
            проектування задаються каркасом, програмісти можуть зосередитися
            на специфіці додатків. У каркасі акумульовані проектні рішення, що є

            загальними для даної предметної області. Акцент у каркасі робиться
            на повторне використання дизайну, а не коду, хоча він включає і кон-
            кретні підкласи, які можна використовувати безпосередньо. Повторне

            використання на даному рівні змінює напрям зв’язків між додатками
            та програмним забезпеченням, що лежать в його основі, на протиле-
            жні.  При використанні інструментальної бібліотеки пишуть тіло до-
            датка і викликають з нього код, який планують використати повтор-

            но. При роботі з каркасом, навпаки, повторно використовують тіло і
            пишуть код, який його викликає. Уданому випадку доводиться коду-
            вати операції з визначеними іменами і параметрами виклику, але за-

            стосованих  проектних  рішень  скорочується.  У  результаті  додаток
            створюється швидше. Крім того, усі додатки мають подібну структу-
            ру.  Їх  простіше  супроводжувати  і  користувачам  вони  виявляють

            більш знайомими. З іншого боку, певною мірою доводиться жертву-
            вати свободою творчості, оскільки багато проектних рішень уже при-

                                                              99
   94   95   96   97   98   99   100   101   102   103   104