Pregunta

estándares de codificación son comunes en cualquier organización de desarrollo de software, pero lo importante son ellos para seguir? Puedo entender la necesidad de un poco de coherencia, pero cuando se trata de cosas simples como la posición de los apoyos, longitud de la línea, etc., no estoy seguro excesivamente estrictas normas contribuyen en gran medida al desarrollo de software.

¿No es más importante que su código se puede leer, no que se ajusta a un estándar predefinido? Parece que son más como ... directrices de todos modos.

¿Fue útil?

Solución

pidiendo a todos que el 100% se adhieren a la misma pauta estándar de formato de código es como pedir a todos a colaborar por separado en la escritura de un documento de 100 páginas con el mismo estilo de escritura.

Esperamos que todo el mundo va a escribir el documento en Inglés (o mismo idioma), pero diferentes estilos será evidente. Algunos escribirlo bien, otros no. Algunos utilizarán las contracciones, algunos se deletrea las palabras totalmente (ejemplo: es verus es). Etc.

Creo que ha tocado en los puntos más importantes:

  1. Es una directriz
  2. Legibilidad

Si desea que el código se adhiera al mismo formato, como un papel para estar en el mismo estilo de escritura, se necesitará la revisión y corrección. tendrá que ser limpiado, revisado el código, re-factorizado, etc.

Nunca he estado en una tienda donde yo estaba completamente satisfecho con el estilo de programación de otro desarrollador o formatear (al mínimo debido a que no es exactamente como la mía). Pero voy a estar contento si puedo leer / entender y si es coherente. Todo lo demás es el azúcar en el azúcar sintáctico.

Así que para responder a su pregunta:. Algo importante, pero ciertamente no es el fin del mundo si no lo hacen

Otros consejos

Para dar formato a las normas, sigo lo que hacen los demás. Si están usando PascalCase de todo, entonces yo uso PascalCase. Si utilizan _camelCase, entonces yo uso _camelCase. ¿Por qué? Porque limita la cantidad de cambio de formato que hago, y los límites de lo que tienen que hacer para que sea "buena apariencia". El formateo normas son por lo general hay que hacer las cosas fáciles para todo el mundo.

En mi trabajo actual, una de mis primeras tareas fue la de llegar a un estándar de codificación para nuestro grupo de desarrollo.

Mi primer esfuerzo fue de aproximadamente sesenta páginas (que incorpora gran parte de las Directrices marco de Microsoft). Me pidieron que pare hacia abajo, y mi esfuerzo siguiente tenía diez páginas de largo, utilizando las ideas de una variedad de buenas fuentes. Me pidieron que pare abajo de nuevo y, finalmente, tengo a tres o cuatro páginas, creo.

Nunca se adoptó.

¿Por qué? Porque trabajo con una gran cantidad de gente muy inteligente, que ya siguen un estándar de codificación sensata instintivamente.

Por mi parte, sigo generalmente aceptada directrices de Microsoft, y emular los estilos usados ??comúnmente de otros (Javascript y jQuery son formato diferente desde C #, a pesar de que son los dos idiomas rizado-brace). También romper las reglas de vez en cuando, al hacerlo hará que el código sea más legible.

Si utiliza e IDE que hace los fundamentos de esto para usted (Visual Studio, por ejemplo), deja que el IDE hacerlo de cosa y todo lo que parece ser todavía difícil mirar a modificar todo el tiempo que todavía deja que el IDE hacer es una cosa o la siguiente persona que auto-formatos que sólo va a matar de todos modos.

Lo que es más legible para una persona no será para todas las personas.

Si no está utilizando este tipo de IDE conseguir uno. Incluso pensando en esto durante más de 10 minutos es un desperdicio de recursos en mi humilde opinión.

Creo que hay un beneficio no mencionado en ayudar a entender rápidamente código. Cuanto más similares que el formateo de código es a través de un proyecto y todos los desarrolladores, más fácil (y más subconscientemente) podrás trabajar con el código.

Yo he tenido los desarrolladores jóvenes vienen a mí después de tratar de lidiar con los insectos, incluso simples para un período prolongado de tiempo. Después de tomar unos minutos para aplicar nuestro formato de código con ellos, que eran rápidamente capaz de ver el error que se habían perdido antes.

Mientras que la legibilidad es sin duda importante. Si los estándares de formato de código están bien pensados, y se utilizan adecuadamente, es posible que se puede ir más allá de ser capaz de leer el código, y para ser capaz de entender el código, incluso más rápido.

Una serie de pautas que utilizo al elaborar y actualizar los formatos de codificación son los Principios de la Gestalt Agrupación - http://en.wikipedia.org/wiki/Gestalt_psychology#Gestalt_laws_of_grouping

Como resultado / ejemplo directo de nuestro formato de código requiere que cualquier código de bloque (si, interruptor, etc.) tiene la llave de apertura en la línea siguiente, de manera que se alinee con la llave de cierre:

if(true)
{
}

Con el razonamiento de que por el principio de simetría, su mente ver las llaves abiertas y cierre y más rápido sea capaz de percibir el bloque de código de forma natural.

No importa qué idioma o herramienta que se utiliza, llegar a algo. Configurar el IDE y registro en el fichero de configuración.

Cuando los cheques a nadie a cabo el proyecto, se utilizarán los mismos estilos de formato. No importa lo que el estilo es, sólo que es consistente. Tengo mis propias preferencias con respecto a los espacios v. Pestañas y que se alinean en las llaves se encienden. Pero más que mis propias preferencias, sólo importa que un archivo de código fuente dada está de acuerdo consigo mismo. Esto hace que sea mucho más fácil de leer que de ser una mezcolanza resultante de una guerra de formatos.

Lo peor que he encontrado hasta el momento no está utilizando estándares de codificación. Y se le prohíbe hacer algo de bloque de código más legible porque rompe diff herramientas ... Como estamos usando parches para aplicar los cambios (solicitud de cambio fix / error -> Ajuste / cambio -> parche -> parche aplicado por "confianza" persona -> los cambios) se puede llegar muy divertido mirar el código fuente (desde el punto de vista de facilitar la lectura). Al menos no tenemos a nadie usando dos variables letras (-.

[queja] Lo más gracioso es que todo el mundo está de acuerdo en que tenemos que cambiar esto. Hubo incluso un par de intentos de cambiar el formato (automatizado de cometer), sino porque una sola pequeña Itsy Bitsy opción de formato que falta - el todo lo acaba de conseguir a través de. Vista ... [/ diatriba]

ayuda Principios de mejorar la calidad de código:

  • desde el punto de vista escritor: muchas normas tienen por objeto reducir la introducción de insectos. Por ejemplo, una regla que indica que if() o for(;;) construcciones debe ser seguido por un bloque y no una sola instrucción, hace que la intención del codificador inicial explícito y ayuda a mantener próximos codificadores esto.

  • desde el punto de vista de lector: código que sigue las directrices de acuerdo es revisado de manera más eficiente que el código con varios estilos. El revisor sabe mejor con menos esfuerzo dónde buscar posibles errores.

No hay un estándar universal para lo que un equipo debe o no debe hacer. Algunos equipos tienen que seguir las directrices estrictas, algunos no lo hacen.

El punto es, usted debe trabajan juntos como un equipo y decidir qué es lo mejor para su equipo . El código debe ser fácil de leer, porque se lee órdenes de magnitud más veces de lo que está escrito. Si su equipo necesita una guía para crear un código legible, se adhieren a un estándar de codificación. Si no lo hace, no lo hacen.

dicho todo esto, creo que la mayoría de los equipos se beneficiarían de ponerse de acuerdo sobre una forma estándar para nombrar variables, funciones y clases, llaves de posición, y así sucesivamente. Si el equipo no puede estar de acuerdo en algo tan simple como eso, ¿cómo pueden esperar para reunirse y tomar las decisiones realmente importantes? Además, su equipo no va a estar compuesta por las mismas personas para siempre - la gente se va, se han contratado. La más fácil es para la gente nueva a asimilen el código base, más rápido que pueden contribuir al equipo sin disminuir la calidad del código.

Licenciado bajo: CC-BY-SA con atribución
scroll top