Después de hacer algunas investigaciones sobre el espaciado de nombres en PHP, intento descubrir cuáles son los beneficios reales, aparte de agrupar elementos de la biblioteca y volver a utilizar el mismo nombre de clase.Ventajas del PHP Namespacing
Lo que no me gusta de los espacios de nombres son estas líneas adicionales en la parte superior del archivo que está llamando a las clases de 'use core \ whatever \ class', que no tiene que ver con el enfoque estándar .
Además, algo sobre lo que no pude encontrar información, ¿qué sucede en la situación en la que necesitamos usar dos clases con el mismo nombre, pero en las diferentes carpetas, que contienen el mismo nombre de método? Todavía tendríamos que llamar al espacio de nombres, pero ¿cómo descubriría el código qué método de qué clase debería usarse?
Acabo de comenzar con los espacios de nombres, así que disculpe si esta pregunta parece sonar muy básica.
También, cómo funciona con los métodos estáticos, cosas como la clase Helper por ejemplo, también tengo que indicar que necesito este espacio de nombres 'use core \ whatever \ Helper'?
La respuesta es simple: para limitar o eliminar la ambigüedad, para dar una mejor estructura a su base de código. Piénselo como uno de los pasos lógicos para tener conceptos de OOP en PHP. –
No necesita usar 'use'. Siempre puede llamar a las clases con su nombre completo como 'new \ core \ whatever \ class'. Sin embargo, perderá el mayor beneficio: legibilidad. con respecto a sus otras preguntas (especialmente los conflictos de nombres), lea http://php.net/language.namespaces – KingCrunch
(1 de 2) Tengo la misma pregunta. Entiendo el beneficio de poder mantener clases separadas con nombres idénticos en diferentes espacios de nombres. Pero este es el único beneficio que veo y tiene un gran precio. Si debo escribir las declaraciones X USE al comienzo de un archivo de la clase Php para crear los diversos objetos que necesito, ¿cómo es esto diferente a usar las instrucciones X require? – andypotter