¿Qué convenciones de nomenclatura usas para las clases de php? [cerrado]

8

Realmente me gusta usar ClassNames y memberNames como convención, pero no estoy seguro de cómo nombrar el archivo que contiene una clase.

Me gusta definir mis clases en un archivo con el mismo nombre que la clase. Pero también me gusta hacer archivos php en minúsculas. Así que estoy en conflicto.

Si tengo una clase llamada ProductGroup , ¿debería definirse en ProductGroup.php , productgroup.php o product_group.php ?

Sé que no hay una respuesta correcta, por lo que estoy buscando lo que es más común o su opinión sobre qué usar ... ¿cuál usa?

    
pregunta JD Isaacks 29.09.2010 - 21:51

6 respuestas

6

En el trabajo, usamos guiones bajos como delimitadores de carpetas y nombramos los archivos exactamente igual que la ruta. El autocargador es muy simple, solo tiene que reemplazar _ con / y agregar '.php' al final. ProjectName_Models_ProductGroup () siempre residirá en ProjectName / Models / ProductGroup.php. Puede generar algunos nombres de clase muy largos, pero en realidad no importa con un IDE.

Puede usar la misma convención, pero solo ejecute strtolower () antes de incluir el archivo.

    
respondido por el Asa Ayers 29.09.2010 - 22:52
1

Normalmente, pondría una clase 'ProductGroup' en un archivo llamado 'ProductGroupClass.php', normalmente almacenado en una estructura de directorios 'classes'.

    
respondido por el GrandmasterB 29.09.2010 - 21:54
1

Intento nombrar mis archivos igual que el nombre de la clase pero en minúsculas. Esto ayuda también con las funciones autoload .

    
respondido por el Josh K 29.09.2010 - 22:02
1

Uso una versión modificada de Estándares de codificación PEAR . Como se mencionó anteriormente, ayuda con la carga automática, y me parece que se ve un poco más limpio y más fácil de leer IMO. Básicamente lo que se reduce a esto es simplemente decidir qué funciona para usted y atenerse a él. Mientras todo el código tenga el mismo aspecto, al final, el resto quedará en su lugar.

    
respondido por el Christian South 22.10.2010 - 19:40
0

Tengo archivos de clase que abarcan aplicaciones ("bibliotecas") y archivos de clase específicos para aplicaciones. Las bibliotecas obtienen un prefijo para minimizar la posibilidad de conflictos con cualquier código de terceros que podamos incluir, es decir. en "My Sweet Company" podríamos usar el nombre de clase "MSCPerson" en lugar de "Persona".

Usamos los nombres de clase CamelCase , y los archivos de clase se denominan CamelCase.class.php . La mayoría de los archivos de clase tienen la única clase y cualquier excepción específica de la clase, pero esta regla no está escrita en piedra. Es bueno tener archivos de una sola clase para la función gf de vim.

    
respondido por el Annika Backstrom 11.10.2010 - 14:47
0

Personalmente, almaceno una clase llamada MyClass en un archivo llamado MyClass.class.php , dentro de un directorio classes .
Mi función de carga automática es entonces tan simple como

function __autoload($class) {
    require_once("/classes/".$class.".class.php");
}

No hay estructura dentro del directorio classes , pero en mis proyectos esto nunca ha sido un problema. Si necesita tener subdirectorios, el método sugerido por Asa Ayers es muy práctico y fácil de implementar.

    
respondido por el Davide Gualano 11.10.2010 - 15:09

Lea otras preguntas en las etiquetas