usar Namespaces no quiere decir que el autoload sea implícito,
los autoload siempre se registran y continúan registrándose de forma explícita.
spl_autoload_register el objetivo de un Namespace no es, ni nunca ha sido el de ofrecer autoload, el objetivo lo indica su nombre "espacio de Nombres" cuyo propósito es empaquetar diferentes funcionalidades o librerías las cuales puedan tener clases con
nombres redundantes, y dicho concepto aplica para cualquier lenguaje POO.
Por ejemplo puedo tener 2 librerias las cuales tengan una clase en común como "Response", antes se tenía que añadir un prefijo para poder usar ambas clases en tiempo de ejecución (PdfResponse, HttpResponse por ejemplo) de otro modo ocurría un error de redeclaración de clases, en cambio si empaqueto mis librerias con un namespace específico puedo instanciar ambas clases en tiempo de ejecución:
$responsePDF = new
PDFNamespace\
Response();
$responseHTTP = new
HttpNamespace\
Response();
ése es el objetivo de los espacios de nombres.
el objetivo del keyword
Use es definir un shortcut para un namespace definido, además de poder asignar un alias., el use no es necesario, por lo cual lo siguiente es válido:
$miclase = new \ruta\hacia\el\namespaces\Clase();
con ello No necesito
Use, aunque para mejorar la apariencia del código se recomienda su uso.