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

Понимание шаблона MVC, используемого в приложениях iOS

Я прочитал статью Apple MVC и смущен о разных вещах. Во-первых, Apple использует комбинацию View и Controller почти во всех своих образцовых приложениях, и это мне очень нравится, но они противоречат друг другу в этой статье, потому что они сказали, что View не должен полагаться на контроллеры и т.д.

Мой главный вопрос: есть ли у кого-нибудь ссылка на один из проектов Apple iOS, который является хорошим примером шаблона MVC - с извлечением данных и т.д., потому что я не совсем понимаю модельную часть шаблона.

Я не понимаю разницы между "объектом домена" и объектом модели. Например, если бы я хотел получить список заказов, это произойдет в модельном Заказе. Будет ли у меня тогда еще один класс Order, который имеет свойства, такие как OrderDate, OrderNumber и т.д. Или как это работает?

4b9b3361

Ответ 1

Этот примерный код демонстрирует многоэтапный подход к загрузке и отображению UITableView. Я думаю, что это действительно интересно погрузиться. Он покажет MVC в своих работах.

Ответ 2

Я считаю, что следующий код поможет вам понять, как работать с MVC в приложении iOS, потому что в его описании говорится:

"MVCNetworking - это образец, который показывает, как создать сеть используя шаблон Model-View-Controller. В частности, он отображает фотогалерею, получая галерею XML описание, эскизы и фотографии с веб-сервера и использует Core Данные для кэширования этой информации локально.

http://developer.apple.com/library/ios/#samplecode/MVCNetworking/Introduction/Intro.html#//apple_ref/doc/uid/DTS40010443

Ответ 3

Вот как шаблон Model-View-Controller (также известный как MVC) сопоставляется с основными частями вашего приложения:

Модель → Данные

Вид → Пользовательский интерфейс

Контроллер → Основная логика

это полностью объясняет пример кода

http://www.hollance.com/2011/04/making-your-classes-talk-to-each-other-part-1/

enter image description here

Ответ 4

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

  • A view - это окно, через которое ваши пользователи взаимодействуют с вашим выражение. Он показывает, что внутри модели большую часть времени, но в дополнение к этому он принимает взаимодействие пользователей. Любые взаимодействие между пользователем и вашим приложением отправляется в представление, которые затем могут быть захвачены контроллером вида и отправлены на модель.

  • Контроллеры в программировании iOS обычно относятся к контроллерам представлений. Подумайте о контроллерах представлений в качестве моста между моделью и вашим Просмотры. Они интерпретируют то, что происходит с одной стороны (что пользователь на стороне зрения или информации, предоставленной моделью) и используйте эту информацию для изменения другой стороны по мере необходимости.

Ответ 5

Это, безусловно, лучшее, но простое объяснение, которое я встретил (взято из RayWenderlich)

"Идея MVC заключается в том, что - ВЗГЛЯДЫ должны заботиться только о том, как они представлены. КАК ОНИ ПРЕДСТАВЛЕНЫ,
- МОДЕЛИ должны заботиться только о своих ДАННЫХ,
- и КОНТРОЛЛЕРЫ должны работать, чтобы ЗАПРЕЩАЕТСЯ ДВА БЕЗ, не слишком зная о своей внутренней структуре.