Coldfusion, в чем преимущество дизайна переднего контроллера над контроллером страницы?

Я не связан с вычислениями, и я изо всех сил пытаюсь понять подходы к проектированию MVC и фреймворки в целом. Я получил" повторное использование кода и отделение логики от отображения, и я «получаю» инкапсуляцию и развязку, но я этого не понимаю.

На данный момент я просто помещаю все в корень, отдельные подпапки для изображений, cfcs и _includes, все взаимодействие с базой данных через cfcs. Я делаю всю свою обработку в верхней части страницы, затем строку комментариев, затем отображаю / макет страницы под ней.

Большинство фреймворков, на которые я смотрел, похоже, отдают предпочтение переднему контроллеру, поэтому моя упрощенная версия верхнего контроллера Дизайн MVC был бы подпапкой для cfcs, контроллеров и представлений и большим оператором switch в index.cfm

<cfif not IsDefined("URL.event")>
    <cflocation url="index.cfm?event=home" addtoken="No">
</cfif>

<cfswitch expression="#url.event#">
    <cfcase value="home">
        <cfinclude template="controllers/home.cfm"/>
        <cfinclude template="views/home.cfm"/>
    </cfcase>
    <cfcase value="about">
        <cfinclude template="controllers/about.cfm"/>
        <cfinclude template="views/about.cfm"/>
    </cfcase>
</cfswitch>

.. но какое реальное преимущество это дает мне по сравнению с дизайном контроллера страницы? Если это не те сайты, которые я пишу, мне всегда кажется, что логика контроллера специфична для представления, это не значит, что один контроллер может соответствовать нескольким представлениям или несколько контроллеров могут выводить данные в одно представление, так какой же смысл их разделять?

У меня еще не загорелся свет, никаких указателей?

7
задан Saul 8 February 2011 в 08:27
поделиться