PHP, HTML, Javascript y escribir buenas prácticas

10

Me di cuenta de que tenía que escribir una especificación de convención sobre codificación HTML, JavaScript y PHP para mí y mi equipo.

En el desarrollo web, al igual que en C ++, definitivamente soy fanático de la sangría y los comentarios.

Sin embargo, a menudo en mi trabajo me encuentro con código HTML + JavaScript + PHP que de repente me trae dolor de cabeza.

Estoy tratando de hacer que mi código sea legible, pero lo que parece ser mejor para mí (sangrar y comentar) parece no fascinar a mis compañeros de equipo, por lo que me preguntaba si hay una mejor práctica o al menos una buena práctica compartida al escribir "híbrido "documentos como las páginas web de hoy, que día a día se vuelven cada vez más complejos.

Soy consciente del hecho de que probablemente la naturaleza del código de las páginas web de hoy en día sea un poco intrincada, pero me pregunto si ya existe una buena convención sobre estos aspectos.

Federico Zancan
fuente

Respuestas:

19

Algunas reglas generales que sigo:

General

  • Las sangrías son de 4 espacios.
  • Sangría nuevos niveles
  • Los comentarios son <~ 80 caracteres del nivel de sangría. Si estoy en dos niveles (8 espacios), eso significa que el cursor se detendrá alrededor de 88 caracteres.
  • Utiliza comentarios de varias líneas. Prefiero el aspecto, sin embargo, este es un punto subjetivo .
  • Comenta ahora más bien que más tarde cuando no tengas idea de lo que está sucediendo.
  • Tirantes estilo Allman . Es más limpio y es más legible. Subjetivo .

JavaScript

  • Usa una biblioteca. jQuery en particular es muy bueno. Elimina todos los dolores de cabeza entre navegadores.
  • Comprenda que los ID son para elementos particulares, las clases son para estilos. Los ID no deben usarse más de una vez por página y tendrán ganchos particulares adjuntos. Usa clases para cosas como la navegación.
  • Fuente de salida en métodos. Es tentador poner todo el código en la bindllamada, sin embargo, ponerlo en su propia función aumentará la flexibilidad de su código.
  • Use funciones en lugar de evals. Eso significa en setTimeout(function(){ /* Do something */ }, 1000);lugar desetTimeout('doSomething', 1000);
  • Use variables locales con var.

HTML

  • Marcado semántico. Use etiquetas apropiadas. No coloque <br />allí para agregar espacio, ajuste los márgenes y las reglas CSS.
  • Todas las etiquetas son minúsculas .
  • Todas las etiquetas deben terminar con una etiqueta de cierre o ser de cierre automático .
  • Haga uso de clases para un diseño que sea similar. Tener un par de clases predefinidas gustaría hide, clear, error, etc.
  • Todo (guiones incluidos) debe entrar <head>. Preocuparse por optimizar (mover cosas) cuando presenta un problema.
  • Las hojas de estilo externas y la fuente de JavaScript son imprescindibles a menos que sean específicas de la página.

PHP

  • Los marcos son buenos, recomiendo CodeIgniter.
  • Si no desea utilizar un marco, intente utilizar la última versión de PHP posible. (Eso significa 5.3).
  • Úsalo includesa tu favor.
  • Inyecciones claras o usar declaraciones preparadas.
  • Realice si verifica valores preconcebidos de seguridad.

    $logged_in = false;
    if(check_user($user))
    {
         $logged_in = true;
         $user = load_user($_SESSION);
    }
  • Conoce la diferencia entre comillas simples y dobles. Use comillas simples cuando sea posible.
  • No hagas eco de HTML.
Josh K
fuente
44
Excelente lista Para PHP agregaría 1) usar plantillas, no mezcle php y html (en aplicaciones, al menos) 2) no use include () como llamadas de función 3) mantenga la mayor cantidad de código fuera del alcance global posible.
GrandmasterB
cualquiera que recomiende CodeIgniter y jQuery pierde integridad en mis ojos.
Mefisto
44
@teresko: Condenas sin dar razones ni alternativas.
Josh K
+1. Una lista de puntos discutibles y discutibles, pero una lista bastante buena.
haylem
jQuery elimina todos los dolores de cabeza entre navegadores?
James Adam
3

Hay algunas lecturas para inspirarte:

  • Zend Framework - estilo de codificación php : lista de prácticas sobre cómo escribir código php mantenible (formato de archivo PHP, convenciones de nomenclatura, estilo de codificación: matrices, cadenas, clases, métodos, por ejemplo).
  • Google - guía de estilo de código : Lista de prácticas sobre cómo escribir código de JavaScript que se pueda mantener (Reglas: constantes, punto y coma, función anidada ..., estilo de codificación: campos de nomenclatura, alcance, cadena, visibilidad, etc.).
tomascejka
fuente
¿Le importaría explicar más sobre lo que hacen estos recursos y por qué los recomienda como respuesta a la pregunta que se hace? "Enlace de sólo responde" no están muy bienvenida en la pila de Cambio
mosquito
1
@gnat edit / respuesta correcta
tomascejka
2

Mantenga los 3 separados. El código menos mantenible con el que trato es siempre cuando hay algún PHP que está haciendo eco de una gran cantidad de HTML y JavaScript, probablemente con algo de SQL arrojado por si acaso.

Mantenerlos todos separados hará que el código sea mucho más fácil de mantener, y también simplificará mucho las cosas si tienes personas trabajando en diferentes partes de la aplicación, como un diseñador que solo necesita trabajar con HTML / CSS.

GSto
fuente
2

La forma más fácil de codificar una aplicación web php es combinar todo. Sin embargo, rápidamente terminas con un desastre imposible de mantener si haces las cosas de esa manera.

Estas son algunas buenas prácticas:

1) Coloque su JavaScript en el <encabezado> de un documento (o, mejor aún, en archivos separados a los que se hace referencia en el encabezado). Aprenda cómo vincular los oyentes de eventos en un evento document.onload, en lugar de dispersarlos a través de su HTML (Mejor aún, aprenda a usar un marco como Jquery; hará que su JavaScript sea mucho, mucho más bonito).

2) Busque patrones de diseño como MVC. Desea separar su lógica empresarial, escrita en PHP, de su HTML tanto como sea posible. Idealmente, terminas usando un buen lenguaje de plantillas para armar tus páginas HTML; por lo menos, el PHP en su HTML debe ser conciso, principalmente llamando a variables y recorriendo listas que se construyen en otros lugares.

3) Comentarios, sangría ... esas cosas son solo prácticas básicas de programación. Tiendo a dejar que la longitud de mi línea supere los 80 caracteres cuando escribo HTML, solo porque el lenguaje es muy detallado, pero esa es la única práctica tradicional que debes dejar pasar, si el resto del equipo es descuidado, necesitan absorberlo y ponerse en forma.

Parche
fuente
¡Buen comentario! Hay un error tipográfico: "Ponga su JavaScript en un documento"
DL
Whoops Gracias. (Se olvidó de codificar entre paréntesis angulares. Tonto).
Parche del
1
Javascript debe ir al final de su página por razones de rendimiento.
Toby
0

Aquí hay un par de cositas:

Javascript: se usa varal inicializar variables.

HTML: incluya scripts en la parte inferior del archivo para que se carguen al final.

PHP: divide los archivos. No coloque todas sus clases en un archivo, como no lo haría en el desarrollo normal de C ++. Comente tanto como sea posible y también escriba el propósito de sus funciones / clases.

Harry
fuente
He estado tratando de seguir la Guía de estilo de Javascript de Google: google-styleguide.googlecode.com/svn/trunk/javascriptguide.xml
Fosco