it-swarm-es.com

PHP, HTML, Javascript y buenas prácticas de redacción

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

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

No obstante, a menudo en mi trabajo encuentro 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 me parece mejor (sangrar y comentar) parece no fascinar a mis compañeros de equipo, así que me preguntaba si existe una buena práctica mejor o al menos compartida al escribir "híbrido "documentos como las páginas web actuales, que día a día se vuelven cada vez más complejas.

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

10
Federico Zancan

Algunas reglas generales que sigo:

General

  • Las sangrías son 4 espacios.
  • Aplicar sangría a nuevos niveles
  • Los comentarios tienen <~ 80 caracteres del nivel de sangría. Si estoy en dos niveles (8 espacios), eso significa que la parada del cursor tendrá alrededor de 88 caracteres.
  • Utilice comentarios de varias líneas. Prefiero la apariencia, sin embargo, este es un subjetivo punto.
  • Comente ahora en lugar de más tarde cuando no tenga idea de lo que está sucediendo.
  • Tirantes estilo Allman . Es más limpio y más legible. ¡Subjetivo.

JavaScript

  • Usa una biblioteca. jQuery en particular es muy bueno. Elimina todos los dolores de cabeza de varios 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. Use clases para cosas como la navegación.
  • De origen en métodos. Es tentador poner todo el código en la llamada bind, sin embargo, ponerlo en su propia función aumentará la flexibilidad de su código.
  • Utilice funciones en lugar de evaluaciones. Eso significa setTimeout(function(){ /* Do something */ }, 1000); en lugar de setTimeout('doSomething', 1000);
  • Utilice variables locales con var.

HTML

  • Marcado semántico. Utilice etiquetas adecuadas. No pongas <br /> está ahí para agregar espacio, ajustar márgenes y reglas CSS.
  • Todas las etiquetas son minúsculas .
  • Todas las etiquetas deben terminar con una etiqueta de cierre o ser de cierre automático .
  • Utilice clases para un diseño similar. Tenga un par de clases predefinidas como hide, clear, error, etc.
  • Todo (guiones incluidos) debe ir en <head>. Preocúpate por optimizar (mover cosas) cuando presente un problema.
  • Hojas de estilo externas y fuente JavaScript ¡es imprescindible a menos que sea una página específica.

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).
  • Utilice includes a su favor.
  • Inyecciones claras o use declaraciones preparadas.
  • Realice si verifica los valores preconcebidos a prueba de fallas.

    $logged_in = false;
    if(check_user($user))
    {
         $logged_in = true;
         $user = load_user($_SESSION);
    }
    
  • Conoce la diferencia entre comillas simples y dobles. Utilice comillas simples cuando sea posible.
  • No se haga eco de HTML.
19
Josh K

Hay algunas lecturas en busca de inspiración:

  • 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 javascript mantenible (Reglas: Constans, Punto y coma, Función anidada ..., Estilo de codificación: Naming, Scope, String, Campos de visibilidad, etc.).
3
tomascejka

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

A continuación, se muestran algunas buenas prácticas:

1) Coloque su JavaScript en el <head> de un documento (o, mejor aún, en archivos separados a los que se hace referencia en el encabezado). Aprenda a vincular 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 comercial, escrita en PHP, de su HTML tanto como sea posible. Idealmente, terminará usando un lenguaje de plantillas agradable para armar sus 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 otro lugar.

3) Comentarios, sangría ... esas cosas son solo las mejores 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 debe dejar pasar: si el resto del equipo está siendo descuidado, necesitan aguantar y ponerse en forma.

2
Patch

Mantenga los 3 separados. El código menos mantenible con el que trato es siempre cuando hay algo de PHP que se hace eco de mucho HTML y JavaScript, probablemente con algo de SQL 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 tiene personas trabajando en diferentes partes de la aplicación, como un diseñador que solo necesita trabajar con HTML/CSS.

2
GSto

Aquí hay un par de cositas:

Javascript: use var al 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 haría en el desarrollo normal de C++. Comente tanto como sea posible y también escriba el propósito de sus funciones/clases.

0
Harry