Pseudônimos de classes para namespaces em POO em PHP

Suponha que temos duas classes Data, pertencentes a namespaces diferentes. Suponha que em alguma classe precisamos de objetos de ambas essas classes:

/project/test.php<?php
  namespace Project;
  
  class Test
  {
    public function __construct()
    {
      $data1 = new \Core\Users\Data; // cria um objeto
      $data2 = new \Core\Admin\Data; // cria um objeto
    }
  }
?>

Suponha que decidimos simplificar as chamadas de classes através do comando use. Neste caso, nós enfrentaremos um problema: ambas as classes têm o nome Data, o que significa que teremos um conflito de nomes:

/project/test.php<?php
  namespace Project;
  
  // Haverá conflito de nomes:
  use \Core\Users\Data; // conecta a primeira classe
  use \Core\Admin\Data; // conecta a segunda classe
  
  class Test
  {
    public function __construct()
    {
      $data1 = new Data;
      $data2 = new Data;
    }
  }
?>

Para resolver este problema, existe um comando especial as, que permite definir para a classe conectada um pseudônimo - um nome sob o qual esta classe estará acessível neste arquivo. Vamos renomear nossas classes Data:

/project/test.php<?php
  namespace Project;
  use \Core\Users\Data as UsersData;
  use \Core\Admin\Data as AdminData;
  
  class Test
  {
    public function __construct()
    {
      $data1 = new UsersData;
      $data2 = new AdminData;
    }
  }
?>
Задание 1

Simplifique o seguinte código usando use:

php<?php
  namespace Project;
  
  class Test
  {
    public function __construct()
    {
      $pageController  = new \Resource\Controller\Page;
      $pageModel       = new \Resource\Model\Page;
    }
  }
?>
Задание 2

Simplifique o seguinte código usando use:

php<?php
  namespace Project\Data;
  
  class Test
  {
    public function __construct()
    {
      $pageController  = new \Project\Data\Controller\Page;
      $pageModel       = new \Project\Data\Model\Page;
    }
  }
?>