Как работает MVC маршрутизация?

Поэтому я начал изучать MVC (реальный MVC, а не MVC фреймворка) чуть более подробно, и я пытаюсь разработать небольшой фреймворк. Я работаю, читая другие фреймворки, такие как Symphony и Zend, вижу, как они выполняют свою работу, и пытаюсь реализовать это самостоятельно.

Место, где я застрял, была система маршрутизации URL:

<?php
namespace Application\Common;

class RouteBuilder {

    public function create($name, $parameters) {
        $route           = new Route($name);
        $route->resource = array_keys($parameters)[0];
        $route->defaults = $parameters["defaults"];
        $notation        = $parameters["notation"];
        $notation = preg_replace("/\[(.*)\]/", "(:?$1)?", $notation);
        foreach ($parameters["conditions"] as $param => $condition) {
            $notation = \str_replace($param, $condition, $notation);
        }

        $notation = preg_replace("/:([a-z]+)/i", "(?P<$1>[^/.,;?\n]+)", $notation);

        //@TODO: Continue pattern replacement!!
    }
}
/* How a single entry looks like
 * "main": {
    "notation": "/:action",
    "defaults": {
        "resource"  :   "Authentication",
    },
    "conditions":   {
        ":action"   :   "(login)|(register)"
    }
},

 */

Я просто не могу правильно обернуть голову вокруг нее. Каков рабочий процесс приложения отсюда?

Шаблон генерируется, вероятно,Route объект, который будет храниться подRequest объект или что-то, то что? Как это работает?

P.S. Looking for a real, well explained answer here. I really want to understand the subject. I would appreciate if someone took the time to write a real elaborate answer.

Ответы на вопрос(2)

Ваш ответ на вопрос