public function get(string $path): ViewInterface
    {
        if (!empty($this->cache) && $this->cache->has($this->context, $path)) {
            return $this->cache->get($this->context, $path);
        }

        $view = $this->findEngine($path)->get($path, $this->context);

        if (!empty($this->cache)) {
            $this->cache->set($this->context, $path, $view);
        }

        return $view;
    }