Подтвердить что ты не робот

Каковы шаблоны проектирования, используемые в андроиде?

Я знаю некоторые шаблоны дизайна, используемые в андроиде, например...

  • Широковещательный приемник использует шаблон проектирования Observer
  • Intent использует вид Factory Design Pattern
  • Просмотр использует композитный шаблон дизайна
  • Media Framework использует шаблон проектирования фасадов

кроме них есть какие-либо другие шаблоны дизайна, используемые в android? Цените свои мысли

4b9b3361

Ответ 1

Android использует множество шаблонов в своей структуре.

Самый первый шаблон, который вы видите, - это шаблон Layer, он классифицируется как шаблон архитектуры в POSA 1 (Pattern-oriented Software Architecture 1) book. Основной структурной характеристикой шаблона Layers является то, что сервисы Layer J используются только LayerJ + 1, дальнейших прямых зависимостей между слоями нет. Эта модель решит проблему смешения вопросов низкого и высокого уровня, где операции на высоком уровне опираются на более низкоуровневые. Android построен на стеке нескольких абстрактных уровней уровня (подробнее см. http://elinux.org/Android_Architecture), поэтому этот проект развернут для решения его проблемы.

Android делает много материалов для нескольких процессов, поэтому механизм IPC (межпроцессный обмен данными) должен быть хорошо разработан. В Android, Binder и AIDL, чтобы сделать связь плавно, хотя службы в этих процессах могут быть написаны на Java, C или С++. Binder реализуется Proxy (In Gang of Four book), брокером (в книге POSA 1) и шаблоном Facade Wrapper (см. Ссылку http://www.cs.wustl.edu/~schmidt/PDF/wrapper-facade.pdf) для реализации. Шаблон прокси-сервера скрывает детали коммуникации от клиента, поэтому процесс может взаимодействовать с объектом в локальном контексте или в сетевом контексте равномерно. Брокер используется для изоляции проблем, связанных с коммуникациями. Шаблон Facade Wrapper используется для инкапсуляции низкоуровневых функций и структур данных в библиотеку C Android в интерфейсе более высокого класса.

Многопоточный механизм также использует много шаблонов. Образец, который мы видим, представляет собой шаблон командного процессора, используемый для выполнения долговременного вызова.

Шаблон наблюдателя используется для отслеживания состояния системы.

....

Это все, что я могу вспомнить сейчас. Если вас интересует шаблон дизайна Android. Вы можете взглянуть на этот курс: https://class.coursera.org/posa-001/class/index на Coursera для более подробной информации.