[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Курс "MVC от теории к практике"
Страницы: 1, 2, 3, 4, 5
Krevedko
я даж не читал кажется
XCross
Нашел отличную схему. Может кому-нибудь поможет.
У меня немного прояснилось представление о функциях контроллера, модели и представления...

Особенно после вот этой заметки:

Цитата
Начинающие программисты (особенно в веб-программировании) очень часто трактуют архитектурную модель MVC как пассивную модель MVC. Тогда модель может быть исключительно совокупностью функций для доступа к данным, а контроллер — как элемент системы, содержит бизнес-логику. В результате код моделей по факту является средством получения данных из СУБД, а контроллер представляет собой типичный модуль, наполненный бизнес-логикой или скрипт в терминологии веб-программирования. В результате такого понимания MVC разработчики стали писать код, который известный в кругах Zend Framework сообщества разработчик Pádraic Brady охарактеризовал как ТТУК — «Толстые тупые уродливые контроллеры» (Fat Stupid Ugly Controllers)[6] перевод:
Среднестатистический ТТУК получал данные из БД (используя уровень абстракции базы данных, делая вид, что это модель) или манипулировал, валидировал, записывал, а также передавал данные в вид. Такой подход стал очень популярен потому, что использование таких контроллеров похоже на классическую практику использования отдельного php файла для каждой страницы приложения.
Но в объектно-ориентированном программировании используется активная модель MVC, где модель это не только совокупность кода доступа к данным и СУБД, а вся бизнес-логика. В свою очередь контроллеры должны избавляться от логики приложения (бизнес-логики). Таким образом Контроллер становится «тонким» и выполняет исключительно функцию связующего звена (glue layer) между отдельными компонентами системы.



Именно так у меня и постороены странички =). Вообщем, проследорвав по стрелочкам меня осенило =). И я пришел к выводу, что лучше не разделать модель, представление и контроллер на отдельные файлы, а наоборот, объединить, но использовать ООП. Надеюсь, это верное умозаключение?

user posted image



До этого у меня было следующее разделение труда:

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

Контроллер. Реагировал при отправки форм, т.е. сверял данные, если че редирект или еще чего-нибудь.

Представление. Обрабатывала данные функцией htmlspecialshars перед выводом, так же в ней формировались таблицы, списки и т.д.


т.е. это и получался ТТУК sad.gif .

Сейчас я представляю себе это так.

Пришел юзер, хочет воспользоваться фидбеком. Знач, нажимает на кнопу или ссылку. В точке входа(index) подключается контроллер. Дальше, он уже определяет, если это первый раз, т.е. никаких данных на анализ ему не прислали, то подключает представление под номером 1(их же хоть сколько можно сделать, для каждого случая свой), в этом представлении подключается шаблон странички и выводится, ну если нужно, еще чего происходит.

Теперь перед юзером страничка. Он заполнил форму, нажал отправить, данные ушли контроллеру, он понял, что это форма, нужно проверить, все-ли в ней верно, если нет, то в массив положить ошибочек, и подключить представление 2. В этом представлении из массива формируется строка с ошибками, подключается шаблон и т.д.


Правильно или нет?

_____________
Обмен Ukash на WebMoney
Alehandr
Курс много кому нужен?
Winston
Не прошло и трех лет smile.gif
Конечно нужен людям, по комментам даже видно smile.gif
caballero
Цитата
У меня немного прояснилось представление о функциях контроллера, модели и представления

В каждом фреймворке это решается по своему поэтому прояснится тут проблеиматично.

Цитата
что лучше не разделать модель, представление и контроллер на отдельные файлы, а наоборот, объединить, но использовать ООП. Надеюсь, это верное умозаключение?

А если это еще и в одном объекте сделать а не просто файле, то получится нормальная компонентная модель и закончатся безуспешные попытки понять что такое MVC и как его запрограммировать.
FenixGnom
Я думаю будет многим интересно если автор продолжит курс, ну и думаю можно будет его не много переработать с учетом новых возможностей в PHP >=5.3 к примеру пространства имен
Dagot
Автор, про синголтон им расскажи, без него плохо совсем...

_____________
аська 615-817, стучите начинающие прогеры, будем вместе прорываться)
Guest
Цитата
Главное чтобы понятным языком и

good
Stayler.d
Спасибо! Как раз начал разрабатывать собственный фреймворк, ваш курс пришелся как раз кстати!
Гость_Сергей
Здравствуйте! а будет ли продолжение, ну в смысле про класс View и Model, и если будет то когда?) просто очень интересна тема PHP разработки и вот очень хочу разобраться с объектно -ориентированным подходом в PHP
Valick
Гость_Сергей, обращайте внимание на дату предыдущего поста.

_____________
Стимулятор ~yoomoney - 41001303250491
Гость_Сергей
Ох, ё, значит на полпути закончили курс, обидно((
bestxp
Может в ближайшем будущем я продолжу его не легкое дело, с учетом новых тенденций 5.3, 5.4 версий. Но времени почти нету
Гость_Сергей
будем с нетерпением ждать!) щас пока курсы специалиста по ООП PHP смотрю, но просто очень полезно и интересно увидеть как другие люди реализуют это!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.