Дәріс 3-4
Мобильді қосымшаның архитектурасы
Мобильді қосымша әдетте пайдаланушы тәжірибесі, бизнес және деректер деңгейлерінен тұратын көп деңгейлі қолданба ретінде құрылымдалған. Мобильді қосымшаны әзірлеу кезінде сіз қарапайым веб - Клиентті немесе кеңейтілген Клиентті дамытуды таңдай аласыз. Егер сіз кеңейтілген клиент үшін жасасаңыз, бизнес және деректер қызметтерінің деңгейлері құрылғының өзінде орналасуы мүмкін. Егер сіз қарапайым клиент үшін жасасаңыз, бизнес деңгейлері мен деректер деңгейлері серверде орналасады. 1-сурет кеңейтілген клиентке арналған мобильді қосымшаның жалпы архитектурасын көрсетеді.
-
1 сурет кеңейтілген клиентке арналған мобильді қосымшаның жалпы архитектурасы
Қолданбаларға қарамастан, дизайн бағдарламалық жасақтама компоненттерінің логикалық топтарына бөлінеді. Бұл логикалық топтау қабаттар деп аталады. Қабаттар компоненттер орындайтын әр түрлі тапсырмаларды ажыратуға көмектеседі, бұл компоненттерді қайта пайдалану мүмкіндігін қолдайтын дизайн жасауды жеңілдетеді. Әрбір логикалық деңгей ішкі деңгейлерге топтастырылған компоненттердің бірқатар дискретті түрлерін қамтиды, әр деңгей белгілі бір тапсырма түрін орындайды.
Қолданба негізінен дизайнның үш қабатынан тұруы мүмкін.
* Ұсыну деңгейі. Бұл деңгей пайдаланушының жүйемен өзара әрекеттесуін басқаруға жауап беретін пайдаланушыға бағытталған функционалдылықты қамтиды және әдетте бизнес деңгейінде инкапсуляцияланған негізгі бизнес логикасына ортақ көпір беретін компоненттерден тұрады.
* Бизнес деңгейі. Бұл деңгей жүйенің негізгі функционалдығын жүзеге асырады және тиісті бизнес логикасын инкапсуляциялайды. Ол әдетте компоненттерден тұрады, олардың кейбіреулері басқа қоңырау шалушылар қолдана алатын қызмет интерфейстерін ұсына алады.
* Деректер деңгейі. Бұл деңгей жүйе ішінде орналастырылған деректерге және басқа желілік жүйелер ұсынатын деректерге қол жеткізуді қамтамасыз етеді; мүмкін Қызметтер арқылы қол жеткізуге болады. Деректер қабаты бизнес деңгейіндегі компоненттер қолдана алатын жалпы интерфейстерді ұсынады.
Ұсыну деңгейі:
Көрініс деңгейінде пайдаланушы интерфейсін іске асыратын және көрсететін және пайдаланушы тәжірибесін басқаратын компоненттер бар. Бұл деңгей пайдаланушының өзара әрекеттесуін ұйымдастыратын компоненттерден басқа, пайдаланушыны енгізу және көрсету үшін басқару элементтерін қамтиды.
Ұсыну деңгейі әдетте мыналарды қамтиды:
* Пайдаланушы интерфейсінің компоненттері. Бұл пайдаланушыға ақпаратты көрсету және пайдаланушы енгізуін қабылдау үшін қолданылатын қолданбаның көрнекі элементтері.
* Ұсыну логикасының компоненттері. Презентация логикасы-бұл қолданушы интерфейсінің кез-келген нақты іске асырылуына тәуелсіз тәсілмен қосымшаның логикалық мінез-құлқы мен құрылымын анықтайтын қосымшаның коды. Бөлінген көрініс үлгісін іске асыру кезінде презентация логикасының компоненттері Presenter, Presentation Model және View model компоненттерін қамтуы мүмкін. Презентация деңгейіне сонымен қатар Сіздің бизнес деңгейіңіздегі деректерді инкапсуляциялайтын презентация деңгейіндегі модель компоненттері немесе бизнес логикасы мен деректерді презентация деңгейінде оңай қолданылатын формада инкапсуляциялайтын презентация субъектісінің компоненттері кіруі мүмкін.
Бизнес деңгейі
Бизнес деңгейі әдетте мыналарды қамтиды:
* Қолданбаның қасбеті. Бұл қосымша компонент әдетте бизнес логикасының компоненттеріне жеңілдетілген интерфейсті ұсынады, көбінесе бірнеше іскери операцияларды бір операцияға біріктіру арқылы бизнес логикасын қолдануды жеңілдетеді. Бұл тәуелділікті азайтады өйткені сыртқы абоненттерге бизнес компоненттері мен олардың арасындағы байланыс туралы егжей-тегжейлі білудің қажеті жоқ.
* Бизнес логикасының компоненттері. Бизнес логикасы қолданба деректерін алуға, өңдеуге, түрлендіруге және басқаруға қатысты кез келген қолданба логикасы ретінде анықталады; бизнес ережелері мен саясаттарын қолдану; және деректердің дәйектілігі мен сенімділігін қамтамасыз ету. Қайта пайдалану мүмкіндіктерін арттыру үшін бизнес логикасының құрамдас бөліктерінде пайдалану жағдайына немесе пайдаланушы тарихына тән қолданбалы мінез-құлық немесе логика болмауы керек. Бизнес логикасының компоненттерін келесі екі санатқа бөлуге болады:
- Бизнес-процестің компоненттері. Пайдаланушы интерфейсінің құрамдас бөліктері пайдаланушыдан қажетті деректерді жинап, оны бизнес деңгейіне жеткізгеннен кейін, қолданба бұл деректерді бизнес процесін орындау үшін пайдалана алады. Көптеген бизнес-процестер дұрыс тәртіпте орындалуы керек және оркестр арқылы бір-бірімен әрекеттесе алатын бірнеше қадамдарды қамтиды. Бизнес-процестің компоненттері ұзақ мерзімді көп сатылы бизнес-процестерді анықтайды және үйлестіреді және оларды бизнес-процестерді басқару құралдары арқылы жүзеге асыруға болады. Олар даналарды жасайтын және жұмыс процесінің компоненттері бойынша операцияларды орындайтын бизнес-процестердің компоненттерімен жұмыс істейді.
- Бизнес-объектінің компоненттері. Бизнес нысандары немесе жалпы алғанда, бизнес нысандары қолданбаңыздағы тұтынушылар немесе тапсырыстар сияқты нақты әлем элементтерін көрсету үшін қажетті бизнес логикасы мен деректерді қамтиды. Олар деректер мәндерін сақтайды және оларды қасиеттер арқылы қамтамасыз етеді; қолданба пайдаланатын бизнес деректерін қамтиды және басқарады; және бизнес деректеріне және онымен байланысты күй-бақылау мүмкіндіктеріне бағдарламалық қол жеткізуді қамтамасыз етеді. Бизнес нысандары сонымен қатар нысандағы деректерді тексереді деректер деңгейі
Деректер деңгейі мыналарды қамтуы мүмкін:
* Деректерге қол жеткізу компоненттері. Бұл компоненттер негізгі деректер қоймаларына қол жеткізу үшін қажетті логиканы абстракциялайды. Олар қолданбаны орнатуды және техникалық қызмет көрсетуді жеңілдету үшін деректерге қол жеткізудің жалпы мүмкіндіктерін орталықтандырады. Деректерге қол жеткізудің кейбір шеңберлері әзірлеушіден деректерге қол жеткізудің жеке қайта пайдалануға болатын қосалқы немесе қызметтік компоненттерінде деректерге қол жеткізудің жалпы логикасын анықтауды және енгізуді талап етуі мүмкін. Деректерге қол жеткізудің басқа шеңберлері, соның ішінде көптеген объектілі-реляциялық дисплей (O/RM) шеңберлері, мұндай компоненттерді автоматты түрде жүзеге асырады, бұл әзірлеуші жазуы керек деректерге қол жеткізу кодының көлемін азайтады.
* Қызмет агенттері. Бизнес компоненті сыртқы қызмет ұсынатын деректерге қол жеткізуі қажет болғанда, сізге сол қызметпен өзара әрекеттесу семантикасын басқару үшін кодты енгізу қажет болуы мүмкін. Қызмет агенттері сіздің қосымшаңыздан әр түрлі қоңырау қызметтеріне қойылатын талаптарды оқшаулайтын деректерге қол жеткізу компоненттерін жүзеге асырады және кэштеу, офлайн қолдау және қызмет ұсынатын деректер форматы мен сіздің қосымшаңыз талап ететін формат арасындағы негізгі салыстыру сияқты қосымша қызметтерді ұсына алады.
Қиыншылықтар
Көптеген қосымшалардың дизайны қабаттар мен деңгейлерді қамтитын жалпы функционалдылықты қамтиды. Бұл функция әдетте аутентификация, авторизация, кэштеу, деректермен бөлісу, ерекшеліктерді басқару, журнал және құралдар жинағы және тексеру сияқты операцияларды қолдайды. Мұндай функционалдылық әдетте түпкілікті мәселе ретінде сипатталады, өйткені ол бүкіл қолданбаға әсер етеді және мүмкіндігінше кодтың бір жерінде орталықтандырылуы керек.
Достарыңызбен бөлісу: |