Android. Программирование для профессионалов. 4-е издание


Рис. 2.3. Диаграмма объектов GeoQuiz Архитектура «Модель — Представление — Контроллер» и



Download 21,53 Mb.
Pdf ko'rish
bet34/485
Sana13.07.2022
Hajmi21,53 Mb.
#787165
1   ...   30   31   32   33   34   35   36   37   ...   485
Bog'liq
Android Programmirovanie dlya professionalov 4-e izdanie 2020 Fillips Styuart Marsikano Gardner

Рис. 2.3. Диаграмма объектов GeoQuiz
Архитектура «Модель — Представление — Контроллер» и
Android
Вероятно, вы заметили, что объекты на рис. 2.3 разделены на
три области: «Модель», «Контроллер» и «Представление».
Android-приложения 
строятся 
на 
базе 
архитектуры,
называемой «Модель — Представление — Контроллер», или
сокращенно MVC (Model-View-Controller). Согласно канонам
MVC, каждый объект приложения должен быть объектом
моделиобъектом представления или объектом контроллера.
• Объект модели содержит данные приложения и «бизнес-
логику». Классы модели обычно проектируются для
моделирования сущностей, с которыми имеет дело
приложение: пользователь, продукт в магазине, фотография
на сервере, вопрос «да/нет» и т.д. Объекты модели ничего не


знают о пользовательском интерфейсе; их единственная
цель — хранение и управление данными.
В приложениях Android классы моделей обычно создаются
разработчиком для конкретной задачи. Все объекты модели
в вашем приложении составляют его уровень модели.
Уровень модели GeoQuiz состоит из класса 
Question
.
• Объекты представлений умеют отображать себя на экране и
реагировать на ввод пользователя, например касания.
Простейшее правило: если вы видите что-то на экране,
значит, это представление.
Android дает широкий набор настраиваемых классов
представлений. Разработчик также может создавать
собственные классы представлений. Объекты представления
в приложении образуют уровень представления.
В GeoQuiz уровень представления состоит из виджетов,
заполненных 
по 
содержимому 
файла
res/layout/activity_main.xml
.
• Объекты контроллеров связывают объекты представления и
модели; они содержат «логику приложения». Контроллеры
реагируют на различные события, инициируемые объектами
представлений, и управляют потоками данных между
объектами модели и уровнем представления.
В Android контроллер обычно представляется подклассом
Activity
или 
Fragment
. (Фрагменты рассматриваются в
главе 8.)


Уровень контроллера GeoQuiz в настоящее время состоит
только из класса 
MainActivity
.
На рис. 2.4 показана логика передачи управления между
объектами в ответ на пользовательское событие, такое как
нажатие кнопки. Обратите внимание: объекты модели и
представления не взаимодействуют друг с другом напрямую; в
любом 
взаимодействии 
участвуют 
«посредники» 

контроллеры, получающие сообщения от одних объектов и
передающие инструкции другим.

Download 21,53 Mb.

Do'stlaringiz bilan baham:
1   ...   30   31   32   33   34   35   36   37   ...   485




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish