Форум программистов, компьютерный форум, киберфорум
Программирование iOS/iPhone
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.95/21: Рейтинг темы: голосов - 21, средняя оценка - 4.95
7 / 7 / 2
Регистрация: 16.11.2011
Сообщений: 251

Реальный пример MVC

16.10.2014, 18:53. Показов 4313. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте. Подскажите пожалуйста реальный пример приложения с MVC и как его (этот паттерн) можно нарушить или не соблюсти? В моем понимании сториборд это вью (viewcontroller, tableViewController), контроллеры это кнопки, picker'ы и пр. на этой вьюхе, а модель это файлики .h и .m
1
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.10.2014, 18:53
Ответы с готовыми решениями:

Реальный пример запечатанного класса
может ли кто нибудь подсказать какой-то реальный пример запечатанных методов или классов. Не устрайвает такой как напр: class A: B .......

Реальный пример медленного освобождения памяти
Как-то в одной из первых своих тем на этом сайте писал про проблему с медленным освобождением памяти. Сконструировал пример этой...

Реальный пример, демонстрирующий необходимость использования XML.
В теории наслушался и начитался много про XML. Но на практике пока не опробовал. В связи с чем хотелось бы попросить людей сведущих в этом...

5
Peace 2 all shining faces
 Аватар для Vorona
674 / 535 / 85
Регистрация: 05.03.2010
Сообщений: 1,282
16.10.2014, 23:52
Цитата Сообщение от Slava-hacker32 Посмотреть сообщение
как его (этот паттерн) можно нарушить или не соблюсти?
вы только что нарушили его во всех местах

Почитайте тут как минимум:
1. http://en.wikipedia.org/wiki/M... controller
2. https://developer.apple.com/li... ction.html
3. https://developer.apple.com/li... 0-CH14-SW1
4. http://www.raywenderlich.com/4... n-patterns

попробуйте, для начала, сами поискать ответ на свой вопрос и, если возникнут более конкретные трудности, вы зададите сюда вопрос
говорю это, потому что если бы вы это сделали, то у вас не складывалось бы такое понимание паттерна, а сам вопрос достаточно обширный и ответов на него уйма
0
7 / 7 / 2
Регистрация: 16.11.2011
Сообщений: 251
17.10.2014, 11:33  [ТС]
Материалы ьл я почитал, но я все равно не могу понять что в проекте является контроллером, а что моделью. Насколько я разобрался контроллер и модель это относительные понятия. Что задачи распределяются на несколько классов, каждый класс отвечает за свою работу. Но где конкретно это используется? Например приложение где на ViewController лежит кнопка, по нажатию на которую появляется alert и как тут применить этот паттерн? Есть представление - белый фон и кнопка и есть класс ViewController (созданный по умолчанию) где обрабатывается нажатие на кнопку.
0
 Аватар для zulkis
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
17.10.2014, 12:11
Slava-hacker32, на viewController ничего лежать не может. На то это и контроллер, он контролирует!
Цитата Сообщение от Slava-hacker32 Посмотреть сообщение
Материалы ьл я почитал, но я все равно не могу понять что в проекте является контроллером, а что моделью.
VC вам нужен для того, чтобы обработать нажатие на кнопку.
Чтобы кнопка не говорила модели "меня нажали", а говорила это контроллеру. А дальше он решает что делать с моделью на основании еще каких-либо данных. Либо показывает еще какое-то представление.

Модель - это данные.
Отображение - это то, что вы видите.
Контроллер - это логика, того, как должно вести себя отображение на основе модели(данных).

Может так понятнее будет.
0
 Аватар для Melzas
38 / 38 / 6
Регистрация: 20.07.2011
Сообщений: 88
17.10.2014, 13:11
Цитата Сообщение от Slava-hacker32 Посмотреть сообщение
В моем понимании сториборд это вью
Вот это очень распостраненная ошибка, которая еще и подкрепляется всякими учебниками и даже яблочной документацией. Storyboard/xib сам по себе не является видом в MVC. Это просто сериализованная в xml иерархия видов, в ней нет логики, присущей видам.

Для каждого контроллера нужно создавать класс вида (наследник UIView). Именно в этом классе должны находиться все IBOutlet'ы, этот класс должен заниматься заполнением своих подвидов, и только в этом классе должны выполняться анимации, манипуляции с frame и т.д.
0
7 / 7 / 2
Регистрация: 09.02.2014
Сообщений: 91
17.10.2014, 20:02
Очень простой пример:1) Есть класс студент. В нем методы: рандомная дата рождения, рандомное имя, рандомный средний бал и есть метод класса , который будет создавать рандомного студента с его параметрами и возвращать объект этого класса. 2) Есть tableViewController, который будет отображать в строках скажем имя и средний бал студента 3) Создаем класс tableViewController, во ViewDidLoad которого мы в цикле создадим необходимое кол-во студентов, скидываем их в массив. А в cellForRowAtIndexPath достаем каждого из массива по ObjectAtIndex:indexPath.row и ставим ячейкам значения,которые хотим вывести. Итак, получаем: Класс студент - модель. Класс tableViewController - контроллер. tableView занимается отображением - представление.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.10.2014, 20:02
Помогаю со студенческими работами здесь

CreateCaret. Кто может продемонстрировать мне реальный пример использования?
Есть WinAPI процедура CreateCaret. Я пытался опробовать ее на Memo1: CreateCaret(Memo1.Handle,0,3,13); получается чуть более жирная,...

Пример java mvc
Напишите пожалуйста пример реализации mvc на java Т.е. например есть простая форма с кнопкой, есть класс обработки логики и есть...

MVC дайте пример
Столько прочитал книг и статей про этот шаблон,прочитал так же про другие шаблоны GoF...все понимаю,а применить не могу:confused: Все...

Пример структуры сайта на MVC
Здравствуйте. У меня понятие MVC несколько "расплывчатое", хотелось бы увидеть на примере, в основном это предлагают в видеоуроках, но...

Использование слайдера в mvc: нужен пример
Всем привет!!! Ребята есть у кого примерчик или ссылка на информацию как в мою страницу на asp mvc встроить слайдер на яваскрипте....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru